Jakarta ee Java/JavaEE动态设置运行时参数

Jakarta ee Java/JavaEE动态设置运行时参数,jakarta-ee,runtime,Jakarta Ee,Runtime,在生产环境中运行时显式设置系统属性的可行性/实用性如何?如果有一个web服务,它将主要更新系统属性-标志。这些标志依次可用于打开/关闭日志级别等 行动将沿着以下路线进行: 在live prod应用程序中设置web服务 访问web服务[限制对特定用户的访问]-这将提供一个更新系统属性的UI 应用程序将继续使用更新的系统属性 对这种方法有什么建议吗?或者它已经很常见了?我不明白为什么它不起作用,除非您的应用程序是跨多个JVM集群的。在这种情况下,您最好将配置存储在中央数据库中,或者使用JMS主题将更

在生产环境中运行时显式设置系统属性的可行性/实用性如何?如果有一个web服务,它将主要更新系统属性-标志。这些标志依次可用于打开/关闭日志级别等

行动将沿着以下路线进行:

  • 在live prod应用程序中设置web服务
  • 访问web服务[限制对特定用户的访问]-这将提供一个更新系统属性的UI
  • 应用程序将继续使用更新的系统属性

  • 对这种方法有什么建议吗?或者它已经很常见了?

    我不明白为什么它不起作用,除非您的应用程序是跨多个JVM集群的。在这种情况下,您最好将配置存储在中央数据库中,或者使用JMS主题将更改传播到所有其他JVM


    如果您想在重启后使这些系统属性持久化,最好也将它们存储在数据库中。

    这个想法让一些人畏缩,但确实有一些吸引力。。。您可以将属性存储在svn或git中,并按照JB Nizet的建议,通过JMS主题向服务器发送“刷新配置”通知

    一些好的方面:

    • 所有配置都已版本化,并且可以还原(完整编辑历史记录)
    • 易于维护多个版本并告诉特定服务器“升级”
    • 有人破坏了配置<代码>svn责怪配置属性

    事实上,每次编辑都会涉及到时间和姓名,这是一种很好的方式,可以知道该放谁的手机着火。

    ah..这是一次失误..谢谢你指出这一点。我们的想法是让它充满活力,所以坚持可能不是出路。