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

最好使用CacheStore、JDBC驱动程序和xml配置来部署Ignite应用程序

郎意
2023-03-14

部署ignite应用程序的最佳方式是什么?ZeroDeployment听起来很容易,但我还没有找到一个简单的方法。我构建了一个应用程序来尝试Ignite的write-behind方法。我扩展了CacheStoreAdapter,它使用PostgreSQL jdbc插入数据。它在IDE中工作得很好,但我还没有找到一个很好的方法来将它部署到服务器上。我的笔记本电脑通过VPN安装了Ignite&PostgreSQL连接到服务器。我的笔记本电脑上的JDBC是通过vpn的,所以我想测试一下应用程序在服务器上运行时的性能。

我尝试了两种方法:1。应用程序在客户端模式下启动,它工作了,但我发现部署涉及几个步骤。-将包含jdbc驱动程序的fat jar复制到ignite/libs文件夹中。-将config.xml复制到config文件夹中-使用ignite.sh config/config.xml启动服务器节点-使用java-jar application.jar启动客户机节点-客户机程序成功完成,但服务器写后代码(cachestoreadapter.write)出错,并抱怨没有找到jdbc驱动程序。在我将一个单独的PostgreSQL-9.4.1212.jre6.jar复制到libs并重新启动Ignite服务器节点之后,write behind成功了。

  • 同上:将包含jdbc驱动程序的fat application.jar复制到ignite/libs文件夹中。
  • 使用java-jar application.jar启动服务器节点,写到缓存成功,但写到后面的代码出错,并且还抱怨没有找到jdbc驱动程序。请注意,postgreSQL-9.4.1212.jre6.jar存在于ignite libs文件夹中。并且我只有这个服务器节点启动并运行。

共有1个答案

夏法
2023-03-14

我看到您尝试部署了两个东西:配置(xml文件)和libs。对于您的情况,我建议采用以下方法:

  • 配置文件不应该部署在每个服务器节点上,但是服务器和客户端应该能够找到彼此。这意味着用于客户端和服务器节点的ignite配置应该包含正确配置的IP finder(VmIpFinder或MulticastIpFinder)。https://apacheignite.readme.io/docs/cluster-config服务器节点的配置可能不包含缓存配置等。
  • libs(JDBC存储和JDBC驱动程序)应该部署在所有节点上。零部署在这种情况下不起作用。缓存配置中的所有类应该在所有节点上可用。
 类似资料:
  • 我有一个从另一个开发人员那里继承的应用程序,我对Java不太了解。这款应用程序几分钟前还能正常工作,但现在我得到了以下错误: 无法将JDBC驱动程序部署到C:\Program Files\Apache Software Foundation\Apache Tomcat 7.0.41\lib\jtds-1.2.jar。检查您是否具有对C:\Program Files\Apache Software

  • 每当我试图使用ODBC驱动程序访问MDB文件时,它都会给我一个错误: 因此,我决定使用UCanAccess JDBC驱动程序。

  • 我使用的是Java8、Spark 2.1.1、Ignite2.5和BoneCP 0.8.0 结果出现以下异常: 提交脚本如下所示: 当使用“本地”Spark实例时,它使用think JDBC驱动程序连接到Ignite。有什么想法吗?

  • 我正在开发一个JavaEE6应用程序,其部署目标是GlassFish V3.1。为了隔离应用程序的实例(因为我们可能部署了多个用于测试和生产的实例,或者多个QA实例),我希望将应用程序范围的资源用于应用程序中的所有资源: JDBC连接 JMS资源 自定义资源 不幸的是,由于JDBC连接细节不是静态的,所以我需要支持以下顺序: 部署战争 在部署过程中,检测空的JDBC URL/用户/密码,并且不执行

  • 我目前正在尝试使用C3P0作为我的JDBC连接池来设置Apache Ignite,但是我注意到由于Ignite驱动程序不支持事务,C3P0是不可用的。 有没有人幸运地用Ignite驱动程序获得了JDBC连接池?建议? 因此,如果我想建立一个JDBC连接池,我需要一个C3P0的替代方案;有什么建议吗?

  • 问题内容: 因此,我有一个用于MySQL JDBC驱动程序的.jar文件,该文件位于我的库源文件夹下,并且具有以下代码: 但是,它总是给我这个错误: 这是我添加jar文件的方法。我创建了一个lib文件夹,并将jar放入其中,然后在eclipse中配置构建路径,并将lib文件夹中的jar添加到了项目中。 问题答案: 您错过了类路径中的mysql-connector-j jar文件。使用“ java