ICEBOX的配置和使用【Java】

本文档详细介绍了ICEBox服务器的配置和使用,包括服务管理器、端点配置、客户配置、开发服务、编写servant、Java实现服务、编写客户端以及服务器和客户端的运行步骤。ICEBox使得服务的管理和组合更加灵活,服务与服务器解耦,方便动态加载和管理。
摘要由CSDN通过智能技术生成

博客内容参考文章:《Ice分布式程序设计》马维达 译.


一、 简介

IceBox服务器用于配置服务、并把对它们的管理集中在一起,服务被开发成可动态加载的组件,通过属性为IceBox服务配置它负责加载和管理的应用特有的服务。要把多个服务组合成一个应用,可以通过配置、而不是编译和链接来完成。这解除了服务和服务器的耦合,允许你按照需要组合服务或分离服务。


二、 服务管理器

除了应用服务所支持的对象,IceBox服务器还支持一个实现了IceBox.ServiceManager接口的管理对象。这个对象负责加载和初始化服务,并执行客户所要求的管理动作。为了保护这个对象的端点,不让它们受到未经授权的访问,IceBox服务器还会为这个对象创建一个对象适配器。目前,ServiceManager接口的管理能力相当有限:该接口只支持shutdown,用于终止服务、关闭IceBox服务器。


三、 端点配置

服务管理器的对象适配器的端点是用IceBox.ServiceManager.Endpoints配置属性定义的:IceBox.ServiceManager.Endpoints=tcp -p 10000因为有恶意的客户可能会向服务管理器发动 “拒绝服务”攻击,明智的做法是使用SSL端点,或用适当的防火墙配置来保护这些端点,或者两者都使用。


四、 客户配置

需要访问服务管理器的管理功能的客户可以使用属性所定义的端点来创建代理。服务管理器对象的缺省标识是ServiceManager,但你可以使用IceBox.ServiceManager.Identity属性来改变它。因此,使用缺省标识和端点的代理可以构造如下:

ServiceManager.Proxy=ServiceManager:tcp -p 10000


五、 开发服务

要编写IceBox服务,需要实现某个IceBox服务接口。下面给出的Java例子实现了IceBox.Service

module IceBox {
	local interface ServiceBase {
		void stop();
	};
	local interface Service extends Servic
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值