自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

WCF負(fù)載平衡實(shí)現(xiàn)方法總結(jié)

開發(fā) 開發(fā)工具
WCF負(fù)載平衡分為基本的HTT綁定;WSHttp綁定和WSDualHttp綁定;以及Net.TCP 綁定等等。在這篇文章中將會(huì)為大家詳細(xì)介紹這些知識(shí)。

WCF框架是一款功能比較強(qiáng)大的開發(fā)工具。對(duì)于一個(gè)經(jīng)驗(yàn)豐富的開發(fā)人員來說,對(duì)這框架的應(yīng)用應(yīng)該是相當(dāng)熟悉的。提高WCF應(yīng)用程序能力的方法之一是通過把它們部署到負(fù)載平衡的服務(wù)器場(chǎng)來擴(kuò)展它們。#t#

使用標(biāo)準(zhǔn)的WCF負(fù)載平衡技術(shù),包括諸如 Windows 網(wǎng)絡(luò)負(fù)載平衡這樣的軟件負(fù)載平衡器以及基于硬件的負(fù)載平衡設(shè)備,可以使 WCF 應(yīng)用程序?qū)崿F(xiàn)負(fù)載平衡。

以下各節(jié)討論對(duì)使用各種系統(tǒng)提供的綁定生成的 WCF 應(yīng)用程序?qū)崿F(xiàn)負(fù)載平衡時(shí)的注意事項(xiàng)。

基本 HTTP 綁定的WCF負(fù)載平衡

從負(fù)載平衡的角度看,使用 BasicHttpBinding 進(jìn)行通信的 WCF 應(yīng)用程序與其他普通類型的 HTTP 網(wǎng)絡(luò)流量(如靜態(tài) HTML 內(nèi)容、ASP.NET 頁或 ASMX Web 服務(wù))并沒有什么區(qū)別。使用此綁定的 WCF 通道本質(zhì)上是無狀態(tài)的,當(dāng)通道關(guān)閉時(shí),其連接也會(huì)終止。因此,BasicHttpBinding 可以很好地與現(xiàn)有的 HTTP 負(fù)載平衡技術(shù)一起使用。

默認(rèn)情況下,BasicHttpBinding 會(huì)在消息中發(fā)送一個(gè)具有 Keep-Alive 值的連接 HTTP 標(biāo)頭,該標(biāo)頭可讓客戶端建立到支持這些客戶端的服務(wù)的持續(xù)連接。這種配置具有高的吞吐量,因?yàn)榭梢灾匦率褂靡郧敖⒌倪B接向同一個(gè)服務(wù)器發(fā)送后續(xù)消息。然而,重新使用連接可能導(dǎo)致客戶端與負(fù)載平衡場(chǎng)中的特定服務(wù)器密切關(guān)聯(lián),從而降低循環(huán)負(fù)載平衡的效率。如果不需要此行為,則可以使用 CustomBinding 或用戶定義的 Binding 在使用 KeepAliveEnabled 屬性的服務(wù)器上禁用 HTTP Keep-Alive。下面的示例演示如何使用配置來執(zhí)行該操作。

  1. < ?xml version="1.0" encoding="utf-8" ?> 
  2. < configuration> 
  3. < system.serviceModel> 
  4. < services> 
  5. < service   
  6. name="Microsoft.ServiceModel.
    Samples.CalculatorService"
     
  7. behaviorConfiguration="
    CalculatorServiceBehavior"
    > 
  8. < host> 
  9. < baseAddresses> 
  10. < add baseAddress="http://
    localhost:8000/servicemodelsamples/service"
    /> 
  11. < /baseAddresses> 
  12. < /host> 
  13. < !-- configure http endpoint, 
    use base address provided by host  
  14. And the customBinding --> 
  15. < endpoint address="" 
  16. binding="customBinding" 
  17. bindingConfiguration="HttpBinding"   
  18. contract="Microsoft.ServiceModel
    .Samples.ICalculator"
     /> 
  19. < /service> 
  20. < /services> 
  21. < bindings> 
  22. < customBinding> 
  23. < !-- Configure a CustomBinding
     that disables keepAliveEnabled--
    > 
  24. < binding name="HttpBinding" 
    keepAliveEnabled="False"/> 
  25. < /customBinding> 
  26. < /bindings> 
  27. < /system.serviceModel> 
  28. < /configuration> 

WSHttp 綁定和 WSDualHttp 綁定的WCF負(fù)載平衡

如果對(duì)默認(rèn)的綁定配置進(jìn)行一些修改,則 WSHttpBinding 和 WSDualHttpBinding 都可以使用 HTTP 負(fù)載平衡技術(shù)來實(shí)現(xiàn)負(fù)載平衡。

關(guān)閉安全上下文的建立:這可以通過將 WSHttpBinding 上的 EstablishSecurityContext 屬性設(shè)置為 false 來完成。或者,如果需要安全會(huì)話,則可以按照 安全會(huì)話 主題中的說明,使用有狀態(tài)安全會(huì)話。有狀態(tài)安全會(huì)話使服務(wù)保持無狀態(tài),因?yàn)榘踩珪?huì)話的所有狀態(tài)都隨每個(gè)請(qǐng)求作為保護(hù)安全令牌的一部分進(jìn)行傳輸。請(qǐng)注意,若要啟用有狀態(tài)安全會(huì)話,必須使用 CustomBinding 或用戶定義的 Binding,因?yàn)橄到y(tǒng)提供的 WSHttpBinding 和 WSDualHttpBinding 上并不會(huì)公開必需的配置設(shè)置。

不要使用可靠會(huì)話。默認(rèn)情況下此功能處于關(guān)閉狀態(tài)。

使 Net.TCP 綁定實(shí)現(xiàn)WCF負(fù)載平衡

可以使用 IP 層負(fù)載平衡技術(shù)實(shí)現(xiàn) NetTcpBinding 的負(fù)載平衡。不過,默認(rèn)情況下,NetTcpBinding 會(huì)匯集 TCP 連接以減少連接延遲。這是一種干擾負(fù)載平衡基本機(jī)制的優(yōu)化。用于優(yōu)化 NetTcpBinding 的主配置值是租約超時(shí),它是連接池設(shè)置的一部分。連接池導(dǎo)致客戶端連接與場(chǎng)內(nèi)特定的服務(wù)器關(guān)聯(lián)。隨著這些連接的生存期的增加(一個(gè)受租約超時(shí)設(shè)置控制的因素),場(chǎng)內(nèi)不同服務(wù)器上的負(fù)載分布會(huì)變得不平衡。結(jié)果使平均調(diào)用時(shí)間增加。

因此,在負(fù)載平衡方案中使用 NetTcpBinding 時(shí),應(yīng)考慮減少由綁定使用的默認(rèn)租約超時(shí)。雖然租約超時(shí)的***值取決于應(yīng)用程序,但 30 秒的租約超時(shí)對(duì)于負(fù)載平衡方案不失為一個(gè)合理的始點(diǎn)。有關(guān)通道租約超時(shí)和其他傳輸配額的更多信息,請(qǐng)參見傳輸配額。

若要在負(fù)載平衡方案中獲得***性能,請(qǐng)考慮使用 NetTcpSecurity(Transport 或 TransportWithMessageCredential)。

責(zé)任編輯:曹凱 來源: 博客園
相關(guān)推薦

2010-02-22 16:43:09

WCF負(fù)載平衡

2010-12-17 10:45:13

ldirectordLVS負(fù)載平衡

2010-05-04 17:38:36

ISP負(fù)載平衡

2010-04-20 13:36:17

負(fù)載平衡

2010-05-04 17:31:05

2010-05-05 18:07:53

網(wǎng)絡(luò)負(fù)載平衡

2010-05-10 17:15:36

負(fù)載平衡方案

2010-05-04 17:50:41

負(fù)載平衡

2022-02-06 11:50:29

HAProxy網(wǎng)絡(luò)流量系統(tǒng)運(yùn)維

2010-05-04 17:54:50

網(wǎng)絡(luò)負(fù)載平衡

2010-04-21 13:48:48

網(wǎng)絡(luò)負(fù)載平衡

2020-03-19 13:10:48

DRSVMware負(fù)載平衡

2013-12-16 15:09:15

多核負(fù)載

2010-05-04 17:45:49

自動(dòng)負(fù)載平衡

2013-05-30 09:58:50

RouterosADSL負(fù)載均衡技術(shù)

2010-05-10 18:27:51

負(fù)載平衡產(chǎn)品

2010-05-10 18:19:00

負(fù)載平衡技術(shù)

2010-04-25 23:36:47

負(fù)載平衡服務(wù)器

2023-12-15 19:29:20

2010-04-21 10:17:59

點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)