Mình có chút thắc mắc về đa luồng trong rest api
Giả sử mình dùng spring boot để tạo webservice. Trong đó có 1 api để update dữ liệu phía db. Vậy sẽ ra sao khi 2 request đều call tới api để update 1 record. Có phải spring sẽ tự động synchronize nó không
Synchronized Multi thread in spring
Theo mình là do db chứ :)). Vd như mysql với các storage engine khác nhau sẽ có cơ chế khác nhau, mình nhớ k nhầm innodb có cơ chế row level locking
MySQL nó tự đảm bảo các query thực hiện tuần tự. Không phải lo concurrent phía db. Việc của dev là thiết kế làm sao để 1 update chỉ chạy bởi 1 query.
1 Like
là sao nhỉ. cậu ví dụ cho mình với. Mọi khi thì chẳng bao giờ để ý, mà hôm qua ông anh tự dưng hỏi mình, giờ mới thắc mắc
khi có 1 query update/delete/Insert trên 1 row thì database sẽ lock lại để chỉ có 1 query xử lý trên row đó thôi nên ko phải lo bạn ạ.
3 Likes