Yêu cầu thg 3 6, 2018 2:00 SA 459 0 0
  • 459 0 0
0

Duplicate request on server (Nodejs - ExpressJs)

Chia sẻ
  • 459 0 0

mình dùng http của angular2 để gọi 1 request lên server (nodejs) Ở server, code của mình xử lí khá là lâu mới trả về response cho client được (khoảng 30s). Server sẽ trả về 2 status code (200 & 401) mình đang có 1 issue như sau: Trong case server trả về status code = 401 thì sẽ có TỈ LỆ bên server bị duplicate request (mình có log ngay ở bước đầu xử lí request thì thấy nó ghi log chỗ đó 2 lần) => chính vì duplicate này nên server xử lí rất lâu (>1') => client chưa nhận được response đã bị timeout : Tỉ lệ này khoảng 50%

Còn case mà server trả về status code = 200 thì tỉ lệ bị duplicate request này là khoảng 10% mình chạy ở localhost thì không bị hiện tượng này ạ

Ai đã gặp case này có thể giải thích & cho mình solution được k ạ (bow) mình deploy code server lên thằng này https://c9.io/login

thg 3 6, 2018 2:44 SA

@d10cn2btt Mình chưa bị như thế bao giờ. Mình nghĩ có thể dưới client có case nào đó khiến client gửi 2 request lên server. Hoặc có thể là khi server nhận 1 request nhưng lại xử lý 2 lần. :-? Bạn có thể show code đoạn gửi request lên server, và code trên server xử lý request ko?

thg 3 6, 2018 2:45 SA

Cơ mà gửi request lên server mà phải đợi 30s là không ổn chút nào. 😦

Avatar Truong Bui @d10cn2btt
thg 3 6, 2018 2:55 SA

@huukimit code thì mình chỉ đơn giản dùng hàm http của angular 2 mà thôi https://angular.io/guide/http#making-a-post-request còn ở server mình dùng puppeteer để submit form nên lâu là phải thôi :#)

Cả sáng nay mình ngồi test thì lại không bị nữa 😐 Chả biết vì sao nhỉ. Tại server à 😦

Viblo
Hãy đăng ký một tài khoản Viblo để nhận được nhiều bài viết thú vị hơn.
Đăng kí