RO14 –介绍DiscoveryClient和DiscoveryServer组件 实现均衡负载
来源:互联网 发布:a8超频软件 编辑:程序博客网 时间:2024/06/06 20:37
RO14 –介绍DiscoveryClient和DiscoveryServer组件 实现均衡负载
为了使用广播通道RemOjebcts SDK包含了一对可在你的RO程序中整合服务搜索功能的控件.
假设在这种情况下:有多个运行在LAN中的服务通过RO提供不同的服务.为了均衡负载有的服务可运行在多个服务端,但是并不是所以的服务都能在任意服务端运行.
如果你的客户端不依赖与具体的服务端地址而能自动的找到可用的服务器不是很美好的事情吗?这样你可以轻松的修改服务端配置将服务从一个服务端移动到另一个服务端,或从一个服务端部署到更多的服务端,而不用修改客户端的配置.
Discovery 组件
The Discovery组件可以不写任何代码就能轻松获取可用的服务器信息.
在服务端向主窗体或DataModule中拖放一个TRODiscoveryServer控件, 就可以发布所有已经运行的自定义服务,这样客户端就可以检查服务端的那些服务可用.也可以得到一个服务端执行的RO服务对象列表,或者通过ServiceList属性指定服务器的名字.
在客户端TRODiscoveryClient给出简单的查询可用服务的方法.简单的设置其ServiceName属性为搜索到的服务器名字,调用RefreshServerList,ServerList将会显示搜索到的所有可用服务的IP地址 ,事件OnNewServersFound会被每个可用服务触发.
procedure TForm1.btn_LookupServiceClick(Sender: TObject);
begin
RODiscoveryClient.ServiceName := ed_ServiceName.Text;
RODiscoveryClient.RefreshServerList();
end;
procedure TForm1.RODiscoveryClientNewServersFound(Sender: TObject);
begin
ListBox_Servers.Items.Assign(RODiscoveryClient.ServerList)
end;
也可以调用FindServer方法获取第一响应的服务.
理想情况下,可以使用广播服务发布服务端应用程序服务,客户端的TROBroadcastChannel发布请求.
ServerDiscovery 范例
RemObjects SDK 的ServerDiscovery范例向你展示如何在具体的项目中应用这些控件.这个范例中应用程序即做服务端也做客户端.作为服务端你可以在右边修改服务列表声明支持,同时客户端部分输入服务名字后获取LAN中支持这个服务的服务器.
如下截图,两个本地服务器支持SomeService服务:
- RO14 –介绍DiscoveryClient和DiscoveryServer组件 实现均衡负载
- Resin 的watchdog(看门狗)介绍和resin负载均衡实现
- Resin 的watchdog(看门狗)介绍和resin负载均衡实现
- Nginx实现HTTP负载均衡和TCP负载均衡
- 服务器集群和负载均衡介绍
- HAProxy和负载均衡概念介绍
- 集群和负载均衡的简单介绍
- 集群和负载均衡的简单介绍
- 负载均衡组件选型
- Spring Cloud Netflix负载均衡组件Ribbon介绍
- nginx负载均衡,反向代理及配置的介绍和实现原理
- 负载均衡技术介绍
- 负载均衡技术介绍
- 负载均衡的介绍
- F5负载均衡介绍
- 负载均衡技术介绍
- LVS负载均衡介绍
- 网站负载均衡介绍
- 中国雅虎公关总监王彤:人类在迁徙
- 解决插入MySQL数据库表时的乱码问题
- 老婆的最后一条短信----(真的很感人)
- 存储过程大解析
- U-boot-1.1.6-2008R1到vdsp5(bf561)的移植记录(7):改造u-boot.lds.s
- RO14 –介绍DiscoveryClient和DiscoveryServer组件 实现均衡负载
- .Net中的设计模式—Strategy模式
- .Net中的设计模式—Strategy模式
- java 判断星期周末
- tomcat6.0 + JSP + mysql数据库连接池配置
- 还好,来上班啦(懒惰啊)
- 嵌入式Linux
- Lucene:基于Java的全文检索引擎简介
- java 判断一周第几天