Tôi đã viết một bộ ứng dụng nhiều tầng trong Delphi XE, sử dụng DataSnap (ứng dụng VCL).Kết nối TCP/IP qua DataSnap
Điều này sẽ được sử dụng nội bộ, trong công ty của tôi, chủ yếu để thay thế cho giao tiếp fax đã lỗi thời.
Mọi thứ hoạt động tốt, nhưng tôi gặp phải một tình huống khó chịu: Máy chủ nằm phía sau bộ định tuyến, vì vậy nó có IP mạng nội bộ. Tôi chuyển tiếp (trong router) tất cả các kết nối đến trên cổng 211 (DataSnap mặc định) đến IP nội bộ của máy chủ và khoảng 8 lần trong số mười tất cả các máy khách kết nối với máy chủ mà không có bất kỳ vấn đề gì.
Vấn đề là đối với phần còn lại 2 lần tôi nhận được tất cả các loại lỗi kết nối (chủ yếu là kết nối hết giờ). Khi thực hiện điều này, tôi phải đóng và mở lại một trong hai ứng dụng máy chủ (một số) ứng dụng khách, và sau đó nó hoạt động. Ngay bây giờ tôi vẫn đang trong giai đoạn thiết kế, do đó, nó chỉ là một bận tâm, nhưng khi tôi phát hành nó tôi không muốn hoặc là để nói với tất cả mọi người KHÔNG để EVER đóng ứng dụng (một khi nó hoạt động, nó hoạt động, Logged this posts) không có vấn đề gì nữa), hoặc đóng và mở lại các ứng dụng mỗi khi có sự cố kết nối.
Làm cách nào để loại bỏ sự cố này?
Tôi đã có (chỉ) xem NetCat và SoCat, nhưng (đối với tôi) có vẻ như quá mức cần thiết cho tình huống này. Có cách nào khác để giải quyết vấn đề này không?
Khi bạn gặp sự cố, bạn đã kiểm tra nhật ký bộ định tuyến để xem nó có thể là gì không? –
Đã không xảy ra với tôi cho đến nay. Tôi sẽ làm ngay bây giờ và đăng kết quả. Cảm ơn bạn. – cipnec
Cảm ơn bạn một lần nữa Joachim. Khá ngu ngốc của tôi không kiểm tra nhật ký router. Dù sao, vấn đề là có thực sự, như bức tường lửa nội bộ của bộ định tuyến đôi khi chặn các ứng dụng của tôi. Đã giải quyết được vấn đề! – cipnec