在我的项目中,我尝试进行设置,在哪里可以更新服务器/应用程序中的动态属性,甚至无需重新启动它。
我们遇到这个问题,每当我们必须更新或更改一些动态的属性时,每次我们必须重新启动服务器/应用程序时,这会导致服务器不能用于该时间戳。
我已经找到了一个工具 Archaius-ZooKeeper 来设置它。https://github.com/Netflix/archaius/
我们正在尝试为我们使用war文件在服务器上部署的JBoss服务器执行此操作。
请建议是否有其他可用于设置的方法或工具或技术。
提前致谢。
答案 0 :(得分:2)
您可以考虑jRebel,允许您在没有任何停机的情况下重新部署应用,然后您可以使用jRebel Remoting从eclipse重新部署到远程服务器
答案 1 :(得分:0)
您可以使用Zookeeper。您必须创建一个Znode并在Znode中添加属性。您的所有服务器/应用程序都应该从这个Znode读取,并且还要监视此Znode以进行数据更改。
或者,您可以使用数据库存储属性及其修改时间。无论何时更改属性的值,都会更改相应的修改时间。您的所有应用程序/服务器都会在某些时间间隔内拉动增量(可能是2秒/ 5秒等)。
或者您可能拥有托管在Web服务器上,NFS上或某些分布式缓存上的属性。所有应用程序/服务器都会在一定时间间隔内读取它以检测任何更改。
答案 2 :(得分:0)
您可以使用Spring Cloud Zookeeper。我分享了一个小例子here。