phuctienn
Senior Member
Em chào các bác, em có các thắc mắc như sau mong các bác khai sáng cho em ạ
Câu hỏi 1:
- 2 máy cùng gọi đến 1 API. API này tốn 10s để thực hiện. Khi máy 1 vừa gọi API, máy 2 cũng gọi đến API đó, vậy máy 2 có phải đợi 10s để server trả xong kết quả cho máy 1 rồi mới thực hiện không. Nếu không thì server thực hiện chia thread hay như thế nào để có thể chạy song song trả kết quả về cho nhiều máy cùng lúc ạ
Câu hỏi 2:
- Ví dụ 1 hàm thêm sản phẩm. Id của sản phẩm là tự động tăng. Để lấy Id vừa thêm thì ta phải lấy Id lớn nhất trong database. Vậy Id này có đúng không, trường hợp nhiều người thêm sản phẩm 1 lúc thì như thế nào (khi sản phẩm vừa được thêm vào db, cùng lúc đó nhiều sản phẩm khác của người dùng khác cũng được thêm vào db, vậy hàm lấy Id lớn nhất trong database có còn lấy được Id của sản phẩm vừa thêm không)
Hàm có dạng như dưới
- Câu hỏi em thấy tương tự câu trên: Trong 1 hàm, gọi 2 lần hàm GetNewProducts để lấy danh sách sản phẩm mới nhất, 2 kết quả này có khác nhau không. Nếu giống nhau thì server thực hiện theo cơ chế nào
Câu hỏi 1:
- 2 máy cùng gọi đến 1 API. API này tốn 10s để thực hiện. Khi máy 1 vừa gọi API, máy 2 cũng gọi đến API đó, vậy máy 2 có phải đợi 10s để server trả xong kết quả cho máy 1 rồi mới thực hiện không. Nếu không thì server thực hiện chia thread hay như thế nào để có thể chạy song song trả kết quả về cho nhiều máy cùng lúc ạ
Câu hỏi 2:
- Ví dụ 1 hàm thêm sản phẩm. Id của sản phẩm là tự động tăng. Để lấy Id vừa thêm thì ta phải lấy Id lớn nhất trong database. Vậy Id này có đúng không, trường hợp nhiều người thêm sản phẩm 1 lúc thì như thế nào (khi sản phẩm vừa được thêm vào db, cùng lúc đó nhiều sản phẩm khác của người dùng khác cũng được thêm vào db, vậy hàm lấy Id lớn nhất trong database có còn lấy được Id của sản phẩm vừa thêm không)
Hàm có dạng như dưới
C#:
Product InsertProduct(Product product) {
_db.Products.Insert(product);
var id = _db.Products.GetLastIndexInserted(); // Lấy Id mới nhất vừa được thêm
product.Id = id;
return product;
}
Sửa lần cuối:

