![](/img/trans.png)
[英]Communication between Web Application and Desktop, what better way?
[英]what are the possible ways of two-way communication between web-service and web application
我有一個需要相互通信的Web應用程序和Web服務。 這種通信必須是雙向通信,因為Web應用程序可以將發生在接口的事件發送到Web服務。 Web服務可以將第三方收到的事件發送到Web應用程序部分。 那么,為此我應該遵循什么設計? 如何使這種交流成為雙向交流?
問候,安舒爾
您可以通過采用Comet模型(有時稱為反向AJAX)來實現。 它是通過長期輪詢或打開與Web服務的持久連接來實現的。
在長輪詢模式下,客戶端打開與Web服務的連接,並等待服務器的響應。 當服務器到客戶端發生事件時,服務器僅使用該現有連接進行響應並關閉該連接,然后客戶端讀取響應,然后立即打開新連接以偵聽更多事件。
在流模式下,連接是持久的,不會在每次服務器事件后關閉。 可以使用帶有隱藏iframe的HTTP / 1.1分塊響應來完成此任務。
無論采用哪種客戶端實現,請注意使用Comet可能會導致服務器端的打開連接數量過多。 在決定Web服務器堆棧/ Web框架時,應考慮到這一點-理想情況下,它應使用非阻塞I / O和延續來斷開長連接與服務器線程的耦合。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.