如何编写一个Java守护进程【JAVA教程】

!
也想出现在这里? 联系我们
信息

如何编写一个Java守护进程,第1张

概述如何编写一个Java守护进程

这将是一个networking应用程序,将总是(或者一如我所能pipe理的那样)在一个给定的端口上进行监听。

我对Java相当陌生,对于非Web服务器端编程来说是非常新的,所以我想从我的假设和初步计划中得到社区的反馈。

我已经阅读了关于Jsvc( http://commons.apache.org/daemon/Jsvc.HTML ),目前正在假设这是在linux中编写一个java程序守护进程的“最佳”方式运行centOS)。

可以configurationnagios来监视我的守护进程是否正在运行,并提醒我或系统pipe理员,当它不是? (我想是的,但我不是一个非常有才华的系统pipe理员types)

守护进程不与notify-send进行交互

linux守护进程localhost工作,但不是实际的IP

如何在windows中开发一个服务器

为什么在编写守护进程时需要closures标准input/输出/错误?

我怎样才能启动一个不是原来程序的subprocess?

这将是一个SMPP客户端应用程序(或ESME应用程序,我猜)这就是为什么我selectJava,因为它似乎是一个非常成熟的SMPP平台。 但是,我知道用C / C ++编写守护进程更“传统”。 用现代Java,执行相当简单的任务,我是否可能遇到任何主要的缺点?

pipe理新版本部署的最佳方式是什么? 只要停止守护进程,尽快更换二进制文件,然后重新启动?

任何其他input将不胜感激。

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

修改python守护进程脚本,stop不会返回OK(但会杀死进程)

用PHP启动一个守护进程

PHP作为守护进程/服务

存储linux守护进程所需的密码

如何编写一个全天候正常运行的Java守护进程…

我们在我们的linux服务器上运行了许多24/365应用程序,这些服务器就像下面这样调用Java:不需要任何C包装器:

nohup java -D… -X… -jar something.jar … < /dev/null > output.log 2>&1 &

这将使jar在没有输入( < /dev/null )和输出(stdout和stderr)重定向到日志文件( > output.log 2>&1 )的背景( nohup … & )中运行。 我们有分布式日志记录基础设施,但仍然有一些控制台输出(如线程转储)。 这些应用程序可以运行几个月,直到我们升级。

可以配置nagios来监视我的守护进程是否正在运行,并提醒我或系统管理员,当它不是?

在监测方面,你可以做很多事情。 Nagios看起来有一个JMX插件来测试jconsole显示的信息。 这里还有很多本地的JMX日志和监控工具。 我们有内部的绿色/黄色/红色指标,可以使用JMX拉起来,很容易检查。 我还从每个应用程序中导出了一个简单的JMX / http服务 ,以提供状态信息,使第三方监视工具可以轻松检测到故障。

这将是一个SMPP客户端应用程序(或ESME应用程序,我猜)这就是为什么我选择Java,因为它似乎是一个非常成熟的SMPP平台。

我假定你的意思是SMPP ? 如果是这样的话,我看不出为什么Java不能做好工作。 我们的应用程序可以实时地执行各种各样的http,UDP,SMTP,JDBC,LDAP和其他协议。 我们使用jgroups来完成一个完整的认证,加密的Java网络堆栈。

管理新版本部署的最佳方式是什么? 只要停止守护进程,尽快更换二进制文件,然后重新启动?

在替换运行中的二进制文件方面,这更复杂。 我们有前面的VIP ,并在我们的休闲取代二进制文件。 我们的内部协议被设计为故障转移。 如果你没有VIP,那么要考虑的一件事就是有序的交接。 您可以启动新的jar,并在准备好绑定到新的端口时与运行旧的jar的应用程序通信。 然后旧的应用程序解除绑定,然后新的绑定。 就是这样

希望这可以帮助。

如果你真的想在* nix上运行一些东西,我建议你看看daemontools 。

在这里和这里有一些如何做到这一点的例子。

基本上svscan会产生一个进程,从init监视你的java进程,每次崩溃时,它都会重新启动。

总结

以上是内存溢出为你收集整理的如何编写一个Java守护进程全部内容,希望文章能够帮你解决如何编写一个Java守护进程所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

© 版权声明
THE END
喜欢就支持一下吧
点赞70 分享
评论 抢沙发

请登录后发表评论

    请登录后查看评论内容