Asked Mar 6th, 2018 2:00 AM 167 0 0
  • 167 0 0
0

Duplicate request on server (Nodejs - ExpressJs)

Share
  • 167 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

Mar 6th, 2018 2:44 AM

@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?

0
| Reply
Share
Mar 6th, 2018 2:45 AM

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

0
| Reply
Share
Truong Bui @d10cn2btt
Mar 6th, 2018 2:55 AM

@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 à 😦

0
| Reply
Share