Orleans學習總結(四)--集群配置篇
阿新 • • 發佈:2018-02-14
pan aging 方式 ddr sts system slist globals ica 上篇我們講了Orleans學習總結(三)--持久化篇,這一篇我們來說說集群配置,畢竟這個才是Orleans的看家本領
Orleans支持熱起動,支持自動節點發現,能夠斷線重發等一系列黑科技。
我這篇是以Zookeeper為例說明。
一、開啟Zookeeper
Zookeeper是什麽和怎麽配置我就這裏就不贅述,自行百度。官方推薦至少開5個,我這做測試就只開1個。二、安裝Orleans的Zookeeper的依賴庫
三、Host配置
1、在上篇裏提到的OrleansConfiguration.xml配置文件 刪除 <SeedNode Address="localhost" Port="11111" /> 添加這一行<SystemStore SystemStoreType="ZooKeeper"
DeploymentId="ZooKeeper"
DataConnectionString="192.168.0.68:2181"/>
DataConnectionString="192.168.0.68:2181",如果有多個Zookeeper,用,分開
<?xml version="1.0" encoding="utf-8"?> <OrleansConfiguration xmlns="urn:orleans"> <Globals> <SystemStore SystemStoreType="ZooKeeper"DeploymentId="ZooKeeper" DataConnectionString="192.168.0.68:2181"/> <StorageProviders> <!--名字為Default1的持久化方式,MySQL--> <Provider Type="Orleans.Storage.AdoNetStorageProvider" Name="Default1" AdoInvariant="MySql.Data.MySqlClient"DataConnectionString="Server=192.168.0.209;Database=orleans;User Id=dbuser;Password=dbuser;" UseJsonFormat="true" /> </StorageProviders> </Globals> <Defaults> <!--Silo和Silo之間通信用的IP和端口--> <Networking Address="localhost" Port="11111" /> <!--Client用來鏈接Silo的IP和端口--> <ProxyingGateway Address="localhost" Port="40000" /> <!--Log配置--> <Tracing DefaultTraceLevel="Info" TraceToConsole="true" TraceToFile="..\log\{0}-{2}-{1}.log" WriteMessagingTraces="false"> <TraceLevelOverride LogPrefix="Application" TraceLevel="Info" /> <TraceLevelOverride LogPrefix="AssemblyLoader.Client" TraceLevel="Info" /> </Tracing> </Defaults> </OrleansConfiguration>
四、Client配置
在生成目錄創建一個ClientConfiguration.xml文件
<?xml version="1.0" encoding="utf-8"?> <ClientConfiguration xmlns="urn:orleans"> <SystemStore SystemStoreType="ZooKeeper" DeploymentId="ZooKeeper" DataConnectionString="192.168.0.68:2181"/> <Tracing DefaultTraceLevel="Info" TraceToConsole="false" TraceToFile="{0}-{2}-{1}.log" WriteMessagingTraces="false"> <TraceLevelOverride LogPrefix="Application" TraceLevel="Info" /> <TraceLevelOverride LogPrefix="AssemblyLoader.Client" TraceLevel="Warning" /> </Tracing> </ClientConfiguration>
這裏的DataConnectionString="192.168.0.68:2181,一定要和上面的一樣。
五、測試
在多臺機器上開Host,和Client,然後嘗試關閉某個Host,看Client是否能正常運行。
Orleans學習總結(四)--集群配置篇