当前位置: 首页 > 知识库问答 >
问题:

使用hazelcast滚动升级多个java独立应用程序(apache camel实例)

通俊发
2023-03-14

我有一个独立java应用程序(apache camel)的多个实例,其中hazelcast IMDG存储的信息(在IMAP中)应由任何应用程序实例访问。每个IMAP包含字符串作为键和一些自定义对象作为值。

我的主要问题是--如果当前运行的和新版本在IMap结构上存在差异(自定义对象更改了),当我开始部署更新的应用程序,它们连接到活动的hazelcast集群时--它导致错误和集群关闭。

这不是蓝绿色的部署策略,我需要在更新后拥有所有以前存储的hazelcast数据。

有没有一个已知的开源解决方案在类似的情况下滚动升级?或者也许有人能给我指明正确的方向。

共有1个答案

宋望
2023-03-14

@ivandanyakin如果您希望维护不同版本的映射条目,那么您应该考虑使用可移植序列化。以下是文档的链接:http://docs.hazelcast.org/docs/3.9/manual/html-single/index.html#versioning-for-portable-serialization

滚动升级用于升级运行集群中的Hazelcast服务器版本,即无需关闭集群。

 类似资料:
  • 现在假设我们想要使用 Spark API 写一个独立的应用程序。我们将通过使用 Scala(用 SBT),Java(用 Maven) 和 Python 写一个简单的应用程序来学习。 我们用 Scala 创建一个非常简单的 Spark 应用程序。如此简单,事实上它的名字叫 SimpleApp.scala: /* SimpleApp.scala */ import org.apache.spark.S

  • 问题内容: 我正在寻找在 独立的(桌面/秋千)* 应用程序中使用 Spring的 示例或教程,我进行了很多搜索,但找不到有用的东西,所有示例和教程均适用于Web应用程序,请告知。 * 问题答案: 使用maven创建独立应用程序,如下所示: 使用Maven创建独立的应用程序 将applicationContext放在类路径中,并按如下所示将其加载到主类中: 在此处查看全文: http://www.d

  • 问题内容: 我需要使用Visual Studio在WinForms中开发一个简单的会计应用程序,例如客户,供应商和会计资料(借方/贷方)等。 我从未开发过使用数据库的独立应用程序,我总是开发过服务器端应用程序(现有的SQL Server等)… 我喜欢用DB开发一个独立的应用程序。我的意思是:创建一个安装项目(setup.exe / setup.msi)并发送给客户,他/她应在Windows pc上

  • 问题内容: 我正在考虑开发由两部分组成的桌面应用程序: 用户界面(例如Java应用) 后端Node.js服务器 2个部分通过插座连接。不要问为什么我知道这很奇怪。 我将希望能够为客户提供带有安装程序的应用程序。我不希望用户必须自己安装Node.js。 有没有一种方法可以独立安装Node.js服务器,即无需在系统上全局安装Node.js。 对于任何(Windows,Linux,Mac OS X …)

  • 问题内容: 如何使用Maven创建桌面(独立/ Swing)应用程序? 我正在使用Eclipse 3.6。 问题答案: 创建一个Maven项目,如下所示: 将以下条目添加到您的pom文件中: 将项目作为Maven项目导入到Eclipse,然后作为Java应用程序运行。

  • 问题内容: 这是我的代码: 为什么不起作用?我懂了。在独立的应用程序中可以使用自动装配吗? 问题答案: Spring在独立应用程序中工作。您使用错误的方式来创建Spring bean。这样做的正确方法是: 在第一种情况下(问题中的那个),您将自己创建对象,而不是从Spring上下文中获取对象。因此,Spring没有机会获得依赖关系(这会导致)。 在第二种情况(此答案中的一种)中,您是从Spring