Tôi đang tìm cách xây dựng một ứng dụng trong Azure sẽ hoạt động như trình nghe TCP, nhận các luồng tin TCP trên một cổng được chỉ định, và sau đó thêm thông tin vào cơ sở dữ liệu. Giao tiếp TCP đến sẽ được bảo mật bằng chứng chỉ.Làm cách nào để lưu trữ Trình nghe TCP trong Azure?
tôi đang xem xét các tùy chọn sau:
đám mây Dịch vụ Worker Role
này chắc chắn có vẻ như nó sẽ work. Tuy nhiên điều đó có nghĩa là tôi phải sử dụng Dịch vụ đám mây và tôi bỏ lỡ các tính năng và sự đơn giản do Dịch vụ ứng dụng cung cấp. Dịch vụ đám mây documentation cũng mô tả cụ thể cách mở các cổng TCP được yêu cầu.
Dịch vụ App
Trong một ứng dụng logic (ưu tiên), tuy nhiên điều này dường như không hỗ trợ natively một người biết lắng nghe TCP, vì vậy tôi sẽ xem xét để xây dựng một API tùy chỉnh ứng dụng. Ngoài ra tôi có thể tạo một Web Job.
Tuy nhiên tôi không chắc chắn phương pháp này sẽ làm việc, và tôi có các câu hỏi sau:
- Tôi có thể tiếp xúc với các cổng TCP tùy ý trên các dịch vụ ứng dụng?
- Trong khi tài liệu Dịch vụ đám mây mô tả cụ thể cách thực hiện việc này, tôi không thể tìm thấy bất kỳ điều gì tương tự cho Dịch vụ ứng dụng. Vì vậy, cấu hình không được yêu cầu hoặc giao tiếp TCP là không thể trong Dịch vụ ứng dụng.
- Tôi có thể xây dựng trình nghe TCP bên trong Ứng dụng logic, Ứng dụng API hoặc Công việc trên web hay không, ví dụ: kiến trúc của Azure hỗ trợ các hành vi cần thiết cho một người nghe TCP?
Tôi có thể lưu trữ Trình nghe TCP trong Dịch vụ ứng dụng Azure không?
Bạn có thể thực hiện công việc này qua HTTP không? Tất cả những mối quan tâm này chỉ biến mất. – usr
Đáng buồn là không, TCP là một yêu cầu của ứng dụng ở đầu bên kia. –
Sau đó, được thông báo rằng các hướng dẫn MSDN TCP thực sự là xấu. Cụ thể https://msdn.microsoft.com/en-us/library/fx6588te(v=vs.110).aspx thật khủng khiếp. Cũng viết mã socket là khó. Nếu bạn không thể nhận ra rằng hướng dẫn này là xấu, điều này có nghĩa rằng bạn đang khá thiếu kinh nghiệm và sẽ có một thời gian khó khăn hơn. Chỉ cần cảnh báo bạn. – usr