Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/unix/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将Java应用程序作为*nix守护程序或Windows服务运行的最佳方法?_Java_Unix_Windows Services_Daemon - Fatal编程技术网

将Java应用程序作为*nix守护程序或Windows服务运行的最佳方法?

将Java应用程序作为*nix守护程序或Windows服务运行的最佳方法?,java,unix,windows-services,daemon,Java,Unix,Windows Services,Daemon,我正在寻找将Java应用程序作为*NIX守护进程或Windows服务运行的最佳方法。我已经看了一遍,一遍,一遍。到目前为止,Java服务包装看起来是最好的选择。。。但是,我想知道是否还有其他“开放源代码友好”的许可产品。是否有需要应用的特殊属性(如操作系统引导的资源管理)需要支持?否则,对于Unix,您应该能够通过编写适当的init.d脚本并将应用程序设置为自动启动来对应用程序进行后台监控。我自己在Java Service Wrapper方面取得了巨大成功。我没有看其他的,但是ServiceWr

我正在寻找将Java应用程序作为*NIX守护进程或Windows服务运行的最佳方法。我已经看了一遍,一遍,一遍。到目前为止,Java服务包装看起来是最好的选择。。。但是,我想知道是否还有其他“开放源代码友好”的许可产品。

是否有需要应用的特殊属性(如操作系统引导的资源管理)需要支持?否则,对于Unix,您应该能够通过编写适当的init.d脚本并将应用程序设置为自动启动来对应用程序进行后台监控。

我自己在Java Service Wrapper方面取得了巨大成功。我没有看其他的,但是ServiceWrapper的主要优势是:

  • 非常好的x平台支持——我在Windows和Linux上使用过它,并且发现在这两个平台上都很容易
  • 坚实的文档——文档清晰明了,切中要害,并附有大量示例
  • 深度平台支持-Windows服务管理系统中有一些独特的功能,这些功能由服务包装器(不重新启动)完美支持。在Windows上,你甚至可以在进程列表中看到你的应用程序名,而不仅仅是“java.exe”
  • 标准兼容-与许多临时Java init脚本不同,服务包装器的脚本往往符合LSB标准。如果您想要从Linux Heartbeat/HA之类的设备进行高可用性管理,那么这一点就变得非常重要
不管怎样,只要我的2美分……:)

另一个选择是。这仅适用于windows,但具有一些有用的功能:

  • 32位和64位支持
  • 访问事件日志和注册表的API
  • 可以注册依赖于其他服务的服务(即服务A和服务B必须在服务C之前启动)
它也是开源友好的(CPL),所以对使用没有限制


(完全公开:我从事这个项目)。

不能向Windows服务推荐这一点,请看这个问题:(在谷歌把我带到这里时添加这一评论,但另一个问题有更多答案)。