C:\ICEService\Registry\templates.xml
上面可以运行成 ICEGRID程序了。
可以把上面的exe 发布成 windows 服务:
1 . iceserviceinstall icegridregistry config.grid
2. iceserviceinstall icegridnode D:\MyIceGrid\config.node
再用 icegridadmin 增加 service 或用 IceGridGUI.jar 来管理 registery
.InstanceName=MyIceGrid
default -h 192.168.3.95 -p 12000
就可以管理了。
icegridadmin –-Ice.Config=D:\MyIceGrid\config.grid
application add D:\MyIceGrid\application.xml
server start SimpleServer
http://blogold.chinaunix.net/u/8818/showart_706648.html
通过IceGrid的位置服务配置可以方便系统部署,具体优点不谈了,下面介绍下配置流程。
例子是ice/demo/IceGrid/simple。ice是采用3.2.1版本,测试时候可以自己下载。测试端,对Client.cpp简单做了修改。配置文件和修改后的Client.cpp 在conf.tar.gz内。用户可以下载,然后根据配置放在不同机器上。为了简化我用了一个表来说明,具体可参照测试部署表(1) 文件: conf.tar.gz
大小: 1KB
下载: 下载
测试系统说明:
一个位置服务器192.168.10.6
两个node
node4: 192.168.10.4
node6: 192.168.10.6
Client.cpp 测试机器 192.168.10.13
config.grid 位置服务机器 192.168.10.6
config.node4 服务节点 192.168.10.4
config.node6 服务节点 192.168.10.6
application.xml 位置服务机器 192.168.10.6
部署表((1)
1、配置位置服务
(1) 配置 config.grid
/************************************************************************/
IceGrid.InstanceName=DemoIceGrid
#
# The IceGrid locator proxy.
#
Ice.Default.Locator=DemoIceGrid/Locator:default -h 192.168.10.6 -p 12000
#
# IceGrid registry configuration.
#
IceGrid.Registry.Client.Endpoints=default -p 12000
IceGrid.Registry.Server.Endpoints=default
IceGrid.Registry.Internal.Endpoints=default
IceGrid.Registry.Data=db/registry
IceGrid.Registry.PermissionsVerifier=DemoIceGrid/NullPermissionsVerifier
IceGrid.Registry.AdminPermissionsVerifier=DemoIceGrid/NullPermissionsVerifier
IceGrid.Registry.SSLPermissionsVerifier=DemoIceGrid/NullSSLPermissionsVerifier
IceGrid.Registry.AdminSSLPermissionsVerifier=DemoIceGrid/NullSSLPermissionsVerifier
#
# IceGrid node configuration.
#
IceGrid.Node.Name=localhost
IceGrid.Node.Endpoints=default
IceGrid.Node.Data=db/node
IceGrid.Node.CollocateRegistry=1
#IceGrid.Node.Output=db
#IceGrid.Node.RedirectErrToOut=1
#
# Trace properties.
#
IceGrid.Node.Trace.Activator=1
#IceGrid.Node.Trace.Adapter=2
#IceGrid.Node.Trace.Server=3
#
# Dummy username and password for icegridadmin.
#
IceGridAdmin.Username=foo
IceGridAdmin.Password=bar
/************************************************************************/
(2).配置应用
application.xml文件
/************************************************************************/
<icegrid>
<application name="Simple">
<node name="node4">
<server id="SimpleServer" exe="./server" activation="on-demand">
<adapter name="Hello" endpoints="tcp" register-process="true">
<object identity="hello" type="::Demo::Hello" property="Identity"/>
</adapter>
</server>
</node>
<node name="node6">
<server id="SimpleServer2" exe="./server" activation="on-demand">
<adapter name="Hello" endpoints="tcp" register-process="true">
<object identity="hello2" type="::Demo::Hello" property="Identity"/>
</adapter>
</server>
</node>
</application>
</icegrid>
/************************************************************************/
说明:该文件主要配置节点和具体服务.主要配置node name和server id(注意不要重复)即可。
2、配置节点信息:
node4节点
config.node4文件
/***********************************************************************/
#
# The IceGrid locator proxy.
#
Ice.Default.Locator=DemoIceGrid/Locator:default -h 192.168.10.6 -p 12000
#
# IceGrid registry configuration.
#
IceGrid.Registry.Client.Endpoints=default -p 12000
IceGrid.Registry.Server.Endpoints=default
IceGrid.Registry.Internal.Endpoints=default
IceGrid.Registry.Data=db/registry
#IceGrid.Registry.PermissionsVerifier=DemoIceGrid/NullPermissionsVerifier
#IceGrid.Registry.AdminPermissionsVerifier=DemoIceGrid/NullPermissionsVerifier
#IceGrid.Registry.SSLPermissionsVerifier=DemoIceGrid/NullSSLPermissionsVerifier
#IceGrid.Registry.AdminSSLPermissionsVerifier=DemoIceGrid/NullSSLPermissionsVerifier
#
# IceGrid node configuration.
#
IceGrid.Node.Name=node4
IceGrid.Node.Endpoints=default
IceGrid.Node.Data=db/node
IceGrid.Node.CollocateRegistry=1
#IceGrid.Node.Output=db
#IceGrid.Node.RedirectErrToOut=1
#
# Trace properties.
#
IceGrid.Node.Trace.Activator=1
#IceGrid.Node.Trace.Adapter=2
#IceGrid.Node.Trace.Server=3
#
# Dummy username and password for icegridadmin.
#
IceGridAdmin.Username=foo
IceGridAdmin.Password=bar
/***********************************************************************/
该文件和config.grid基本一致
注意,IceGrid.Registry注册信息一定要有而且和config.grid一致。注意和node6不一样,因为node6
和位置服务在一个机器上,注册信息已经在config.grid配置了。
node6
config.node6 文件
/***********************************************************************/
#
# The IceGrid locator proxy.
#
Ice.Default.Locator=DemoIceGrid/Locator:default -h 192.168.10.6 -p 12000
#
# IceGrid node configuration.
#
IceGrid.Node.Name=node6
IceGrid.Node.Endpoints=default
IceGrid.Node.Data=db/node
#IceGrid.Node.Output=db
#IceGrid.Node.RedirectErrToOut=1
#
# Trace properties.
#
IceGrid.Node.Trace.Activator=1
#IceGrid.Node.Trace.Adapter=2
#IceGrid.Node.Trace.Server=3
#
# Dummy username and password for icegridadmin.
#
IceGridAdmin.Username=foo
IceGridAdmin.Password=bar
/***********************************************************************/
3、启动运行
1)启动位置服务
icegridregistry --Ice.Config=config.grid
2)注册节点
192.168.10.4机器:
icegridnode --Ice.Config=config.node4
192.168.10.6机器:
icegridnode --Ice.Config=config.node6
3)配置应用:
在 192.168.10.4机器上:
icegridadmin --Ice.Config=config.grid -e "application add 'application.xml'"
4)测试
./client
usage:
t: send greeting
p: send greeting2: shutdown server
x: exit
?: help
选择t则调用 10.4机器;p则调用10.6机器
上面可以运行成 ICEGRID程序了。
可以把上面的exe 发布成 windows 服务:
1 . iceserviceinstall icegridregistry config.grid
2. iceserviceinstall icegridnode D:\MyIceGrid\config.node
再用 icegridadmin 增加 service 或用 IceGridGUI.jar 来管理 registery
.InstanceName=MyIceGrid
default -h 192.168.3.95 -p 12000
就可以管理了。
icegridadmin –-Ice.Config=D:\MyIceGrid\config.grid
application add D:\MyIceGrid\application.xml
server start SimpleServer
http://blogold.chinaunix.net/u/8818/showart_706648.html
通过IceGrid的位置服务配置可以方便系统部署,具体优点不谈了,下面介绍下配置流程。
例子是ice/demo/IceGrid/simple。ice是采用3.2.1版本,测试时候可以自己下载。测试端,对Client.cpp简单做了修改。配置文件和修改后的Client.cpp 在conf.tar.gz内。用户可以下载,然后根据配置放在不同机器上。为了简化我用了一个表来说明,具体可参照测试部署表(1) 文件: conf.tar.gz
大小: 1KB
下载: 下载
测试系统说明:
一个位置服务器192.168.10.6
两个node
node4: 192.168.10.4
node6: 192.168.10.6
Client.cpp 测试机器 192.168.10.13
config.grid 位置服务机器 192.168.10.6
config.node4 服务节点 192.168.10.4
config.node6 服务节点 192.168.10.6
application.xml 位置服务机器 192.168.10.6
部署表((1)
1、配置位置服务
(1) 配置 config.grid
/************************************************************************/
IceGrid.InstanceName=DemoIceGrid
#
# The IceGrid locator proxy.
#
Ice.Default.Locator=DemoIceGrid/Locator:default -h 192.168.10.6 -p 12000
#
# IceGrid registry configuration.
#
IceGrid.Registry.Client.Endpoints=default -p 12000
IceGrid.Registry.Server.Endpoints=default
IceGrid.Registry.Internal.Endpoints=default
IceGrid.Registry.Data=db/registry
IceGrid.Registry.PermissionsVerifier=DemoIceGrid/NullPermissionsVerifier
IceGrid.Registry.AdminPermissionsVerifier=DemoIceGrid/NullPermissionsVerifier
IceGrid.Registry.SSLPermissionsVerifier=DemoIceGrid/NullSSLPermissionsVerifier
IceGrid.Registry.AdminSSLPermissionsVerifier=DemoIceGrid/NullSSLPermissionsVerifier
#
# IceGrid node configuration.
#
IceGrid.Node.Name=localhost
IceGrid.Node.Endpoints=default
IceGrid.Node.Data=db/node
IceGrid.Node.CollocateRegistry=1
#IceGrid.Node.Output=db
#IceGrid.Node.RedirectErrToOut=1
#
# Trace properties.
#
IceGrid.Node.Trace.Activator=1
#IceGrid.Node.Trace.Adapter=2
#IceGrid.Node.Trace.Server=3
#
# Dummy username and password for icegridadmin.
#
IceGridAdmin.Username=foo
IceGridAdmin.Password=bar
/************************************************************************/
(2).配置应用
application.xml文件
/************************************************************************/
<icegrid>
<application name="Simple">
<node name="node4">
<server id="SimpleServer" exe="./server" activation="on-demand">
<adapter name="Hello" endpoints="tcp" register-process="true">
<object identity="hello" type="::Demo::Hello" property="Identity"/>
</adapter>
</server>
</node>
<node name="node6">
<server id="SimpleServer2" exe="./server" activation="on-demand">
<adapter name="Hello" endpoints="tcp" register-process="true">
<object identity="hello2" type="::Demo::Hello" property="Identity"/>
</adapter>
</server>
</node>
</application>
</icegrid>
/************************************************************************/
说明:该文件主要配置节点和具体服务.主要配置node name和server id(注意不要重复)即可。
2、配置节点信息:
node4节点
config.node4文件
/***********************************************************************/
#
# The IceGrid locator proxy.
#
Ice.Default.Locator=DemoIceGrid/Locator:default -h 192.168.10.6 -p 12000
#
# IceGrid registry configuration.
#
IceGrid.Registry.Client.Endpoints=default -p 12000
IceGrid.Registry.Server.Endpoints=default
IceGrid.Registry.Internal.Endpoints=default
IceGrid.Registry.Data=db/registry
#IceGrid.Registry.PermissionsVerifier=DemoIceGrid/NullPermissionsVerifier
#IceGrid.Registry.AdminPermissionsVerifier=DemoIceGrid/NullPermissionsVerifier
#IceGrid.Registry.SSLPermissionsVerifier=DemoIceGrid/NullSSLPermissionsVerifier
#IceGrid.Registry.AdminSSLPermissionsVerifier=DemoIceGrid/NullSSLPermissionsVerifier
#
# IceGrid node configuration.
#
IceGrid.Node.Name=node4
IceGrid.Node.Endpoints=default
IceGrid.Node.Data=db/node
IceGrid.Node.CollocateRegistry=1
#IceGrid.Node.Output=db
#IceGrid.Node.RedirectErrToOut=1
#
# Trace properties.
#
IceGrid.Node.Trace.Activator=1
#IceGrid.Node.Trace.Adapter=2
#IceGrid.Node.Trace.Server=3
#
# Dummy username and password for icegridadmin.
#
IceGridAdmin.Username=foo
IceGridAdmin.Password=bar
/***********************************************************************/
该文件和config.grid基本一致
注意,IceGrid.Registry注册信息一定要有而且和config.grid一致。注意和node6不一样,因为node6
和位置服务在一个机器上,注册信息已经在config.grid配置了。
node6
config.node6 文件
/***********************************************************************/
#
# The IceGrid locator proxy.
#
Ice.Default.Locator=DemoIceGrid/Locator:default -h 192.168.10.6 -p 12000
#
# IceGrid node configuration.
#
IceGrid.Node.Name=node6
IceGrid.Node.Endpoints=default
IceGrid.Node.Data=db/node
#IceGrid.Node.Output=db
#IceGrid.Node.RedirectErrToOut=1
#
# Trace properties.
#
IceGrid.Node.Trace.Activator=1
#IceGrid.Node.Trace.Adapter=2
#IceGrid.Node.Trace.Server=3
#
# Dummy username and password for icegridadmin.
#
IceGridAdmin.Username=foo
IceGridAdmin.Password=bar
/***********************************************************************/
3、启动运行
1)启动位置服务
icegridregistry --Ice.Config=config.grid
2)注册节点
192.168.10.4机器:
icegridnode --Ice.Config=config.node4
192.168.10.6机器:
icegridnode --Ice.Config=config.node6
3)配置应用:
在 192.168.10.4机器上:
icegridadmin --Ice.Config=config.grid -e "application add 'application.xml'"
4)测试
./client
usage:
t: send greeting
p: send greeting2: shutdown server
x: exit
?: help
选择t则调用 10.4机器;p则调用10.6机器