如何用OSGi开发客户端 - 服务器系统?

时间:2011-04-10 06:05:40

标签: sockets client-server osgi

我正在学习如何在最近几天使用OSGi进行开发,但面临很多问题。

我不知道如何使用Equinox作为框架来设计基于OSGi的客户端 - 服务器系统。我应该使用套接字连接来实现它还是使用分布式模型?

我也很困惑我是否需要导入一些第三方软件包以支持我在socket,jdbc,swing等上的编程,或者Equinox或其他OSGi开源项目提供的现有软件包?

第一次在这里提问,有人可以帮帮我吗?

3 个答案:

答案 0 :(得分:1)

看看OSGi远程服务实现(OSGi规范中的更多细节):

干杯,

德米特罗

答案 1 :(得分:0)

在OSGi中使用套接字并不比在“普通”Java中更复杂。您可以像平常一样设计应用程序,但通过使用OSGi可以获得模块化和服务的好处。

例如,您可以通过引入类似WorkerFactory的内容来解除连接接受和请求处理,或者可以在客户端和服务器上重用服务;那些是OSGi擅长的东西。

OSGi作为一种“技术”(就该概念而言是水)并未强制要求任何特定的交互方法。该纲要规范提到远程服务(a.k.a.分布式OSGi),但它也包含一个HTTP服务规范,Servlets是你的事情。

简而言之,只需选择最适合您的方案的交互式解决方案,让OSGi帮助您提供服务和模块化。

答案 2 :(得分:0)

与基于低级套接字处理和二进制协议的协议相比,HTTP模型可能是最简单的实现。

我要问的第一个问题是客户和服务器需要交换什么样的信息。如果你可以使用HTTP(在许多情况下你可以使用),你可以在服务器端使用servlet,在客户端使用http客户端库和RESTful通信模型。

使用HttpService在OSGi中很容易实现Servlet,例如参见http://www.osgilook.com/2009/09/08/osgi-http-service-registering-servlets-on-the-fly/