是否可以使用MSMQ隊列來負載均衡請求?如果我有客戶端1-n將請求發送給WCF服務,WCF服務會將每個請求排入隊列,並在後臺有1-n臺服務器,並在可用時請求下一個可用請求,但我會認爲這會有效地實現負載平衡。但是,我將如何獲得迴應?我意識到我可以在我的WCF服務中訂閱'complete'事件,但是當我只關心一個事件時,我必須解析所有事件。我怎麼才能完成這種架構的某種回調機制?使用msmq隊列負載均衡服務?
3
A
回答
4
如果您使用MSMQ發送事件,則不存在「獲取響應」的內置概念。
這裏有一個解決方案:客戶端可以有他們自己的消息隊列,他們聽。當工作人員完成任務後,他們可以發送一個「已完成」的消息給客戶。
但是服務器如何知道客戶端的消息隊列的地址?
一種方法是在每個函數中提供客戶端的消息隊列地址作爲參數。
更好的方法是將此地址作爲自定義標頭值。 由於兩個原因,自定義標頭解決方案是更好的方法。首先,這可以通過客戶端的配置文件進行配置,從而允許在部署後更改隊列詳細信息。其次,通信「管道」的細節侵入函數調用抽象層是不可取的,自定義頭文件解決方案可以避免這種情況。
查看this question瞭解正在使用的自定義標頭的示例。
+0
你能否回答http://stackoverflow.com/questions/9631349/what-is-outbound-transaction-in-layman-terms? – Lijo
1
相關問題
- 1. 負載均衡服務器
- 2. 負載均衡上的wcf服務
- 3. 服務發現vs負載均衡
- 4. 使用負載均衡器
- 5. 負載均衡
- 6. 使用共享優先級隊列進行負載均衡
- 7. 與負載均衡
- 8. MongoDB負載均衡
- 9. Web服務使用Oracle WebCache進行負載均衡?
- 10. 使用ServicePartitionClient負載均衡服務結構StatelessService
- 11. 客戶端如何使用負載均衡的WCF服務
- 12. 使用Zookeeper和Thrift進行負載均衡服務
- 13. 使用Apache流量服務器進行負載均衡
- 14. 極其不均衡的雲服務負載平衡與Azure
- 15. java中的服務器到服務器通信 - 負載均衡
- 16. Azure負載平衡是否知道服務器http隊列
- 17. 在負載平衡環境中的WCF服務之間的MSMQ
- 18. 使用http-proxy進行負載均衡
- 19. 使用負載均衡器與m
- 20. 使用haproxy進行percona負載均衡
- 21. 負載均衡WCF和共享高吞吐量的遠程MSMQ
- 22. 防止jboss應用服務器被負載均衡器獲取?
- 23. 負載均衡器沒有可用的客戶端服務器
- 24. AWS ElasticBeanstalk應用程序負載均衡服務角色
- 25. Nginx負載均衡與專用的php-fpm服務器
- 26. 如何列出GCE http負載均衡?
- 27. yii2和負載均衡
- 28. 負載均衡的Fiware Orion
- 29. Kubernetes,GCE,負載均衡,SSL
- 30. docker swarm的負載均衡
您是否必須使用原始MSMQ?你看過NServiceBus還是其中一個競爭的ESB? – arootbeer