很多情況下基于wcf的復(fù)雜均衡都首選zookeeper,這樣可以擁有更好的控制粒度,但zk對(duì)C# 不大友好,實(shí)現(xiàn)起來(lái)相對(duì)來(lái)說(shuō)比較麻煩,實(shí)際情況下,如果你的負(fù)載機(jī)制粒度很粗糙的話(huà),優(yōu)先使用nginx就可以搞定,既可以實(shí)現(xiàn)復(fù)雜均衡,又可以實(shí)現(xiàn)雙機(jī)熱備,以最小的代碼量實(shí)現(xiàn)我們的業(yè)務(wù),下面具體分享下。
一:準(zhǔn)備的材料
1. 話(huà)不多說(shuō),一圖勝千言,圖中的服務(wù)器都是采用vmware虛擬化,如下圖:
三臺(tái)windows機(jī)器 ,兩個(gè)WCF的windows服務(wù)器承載(192.168.23.187,192.168.23.188),一臺(tái)Client的服務(wù)器(192.168.23.1)
一臺(tái)Centos機(jī)器,用來(lái)承載web復(fù)雜均衡nginx(192.168.23.190)。
在所有的Client的Hosts文件中增加host映射:【192.168.23.190 cluster.com】,方便通過(guò)域名的形式訪問(wèn)nginx所在服務(wù)器的ip地址。
二:環(huán)境搭建
1、WCF程序
既然是測(cè)試,肯定就是簡(jiǎn)單的程序,代碼就不完全給出了。
App.Config代碼
因?yàn)閣indows的兩臺(tái)機(jī)器的ip地址是192.168.23.187,192.168.23.188,所以部署的時(shí)候注意一下config中的baseAddress地址。
2、centos上的nginx搭建
nginx我想大家用的還是比較多的,去官網(wǎng)下載最新的就好【nginx-1.13.6】:http://nginx.org/en/downl
OAd.html,下載之后,就是常規(guī)的三板斧安裝!!!
然后在nginx的安裝目錄下面找到conf文件,修改里面的nginx.conf 配置。
詳細(xì)配置如下,注意下面“標(biāo)紅”的地方,權(quán)重按照1:5的方式進(jìn)行調(diào)用,關(guān)于其他的配置,大家可以在網(wǎng)上搜一下就可以了。
3、 client端的程序搭建
第一件事就是將 192.168.23.190 映射到本機(jī)的host中去,因?yàn)榉⻊?wù)不提供給第三方使用,所以加host還是很輕松的。
192.168.23.190 cluster.com
然后就是client端程序添加服務(wù)引用,因?yàn)樘砑恿薶ost映射,所以服務(wù)引用地址就是"http://cluster.com"。 代碼如下:
最后來(lái)執(zhí)行以下程序,看看1000次循環(huán)中,是不是按照權(quán)重1:5 的方式對(duì)后端的wcf進(jìn)行調(diào)用的???
看到?jīng)]有,是不是很牛逼,我只需要通過(guò)cluster.com進(jìn)行服務(wù)訪問(wèn),nginx會(huì)自動(dòng)給我復(fù)雜均衡,這就是我們開(kāi)發(fā)中非常簡(jiǎn)單化的wcf復(fù)雜均衡。
核心關(guān)注:拓步ERP系統(tǒng)平臺(tái)是覆蓋了眾多的業(yè)務(wù)領(lǐng)域、行業(yè)應(yīng)用,蘊(yùn)涵了豐富的ERP管理思想,集成了ERP軟件業(yè)務(wù)管理理念,功能涉及供應(yīng)鏈、成本、制造、CRM、HR等眾多業(yè)務(wù)領(lǐng)域的管理,全面涵蓋了企業(yè)關(guān)注ERP管理系統(tǒng)的核心領(lǐng)域,是眾多中小企業(yè)信息化建設(shè)首選的ERP管理軟件信賴(lài)品牌。
轉(zhuǎn)載請(qǐng)注明出處:拓步ERP資訊網(wǎng)http://www.guhuozai8.cn/
本文標(biāo)題:使用Nginx搭建高可用,高并發(fā)的WCF集群
本文網(wǎng)址:http://www.guhuozai8.cn/html/solutions/14019321434.html