Java应用程序/线程服务器

时间:2010-03-28 10:27:11

标签: java containers

我正在寻找具有这些功能的应用服务器非常接近的东西:

  • 它应该处理一系列线程/守护进程,允许用户在不影响其他人的情况下开始 - 重新加载每个线程/守护进程
  • 它应该在不同的线程/守护进程之间保持库分开
  • 它应该允许共享一些库

目前我们有一些传统的代码重新发明轮子......而不是那个圆形的圆形! 我想使用Tomcat,但我不需要Web服务器,除了简单的后台用户界面(/ manager / html)。

有什么建议吗?是否有非Web应用程序服务器,或者是否有更好的Tomcat替代品(例如,更轻量级,或更容易配置)?提前谢谢。

4 个答案:

答案 0 :(得分:4)

你看过OSGi了吗?您可以相互独立地加载/卸载bundles(基本上是带有元数据的.jar文件),并可选择定义它们之间的依赖关系(定义的软件生命周期使得bundle知道正在加载/卸载的其他bundle)。 / p>

答案 1 :(得分:2)

我发现Jetty“contexts”概念在处理应用程序(打包为WAR和servlet上下文侦听器)时非常有用,其中放置在上下文中的xml文件/完全描述了您想要启动的内容。当您再次删除xml文件时,将停止所描述的内容。

如果您没有启动服务器连接器,您将只有一个启动停止的东西,听起来像您正在寻找的。

Jetty可以做得很小,所以开销也不错。

答案 2 :(得分:1)

你可以考虑Spring dmServer。它是一个相当非传统的应用程序服务器,具有非常轻量级的OSGi核心(例如,Web容器是可选的),但它为您提供了类加载器隔离和基本容器服务。它不是JavaEE容器,而是带有插件模块。

你自己必须做很多工作,但是dmServer的基础知识非常合理。

答案 3 :(得分:1)

没有人阻止您使用http协议发送二进制和文本数据而不是HTML页面。那是servlet的用途。所以我会使用tomcat服务器。