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

EC2上的Infinispan和J组发现

赖俊
2023-03-14

我正在尝试在一些带有Tomcat服务器的Linux机器上使用AWS EC2上的应用程序。之前,我在局域网上使用Infinispan应用程序,并使用UDP多播进行JGroups成员发现。EC2不支持UDP多播,这是Infinispan用于检测集群中运行的节点的默认节点发现方法。我研究了使用S3\u-PING协议,但我还没有弄清楚为什么它不起作用。

有人知道问题出在哪里吗?

这是我的配置文件:1. Applicationontext-cache.xml

<!-- Infinispan cache -->
<cache:annotation-driven/>

<import resource="classpath:/applicationContext-dao.xml"/>


<bean id="cacheManager" class="org.infinispan.spring.provider.SpringEmbeddedCacheManagerFactoryBean">
    <property name="configurationFileLocation" value="classpath:/infinispan-replication.xml"/>
</bean>

<context:component-scan base-package="com.alex.cache"/>

2.infinispan-复制。xml

<infinispan xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="urn:infinispan:config:5.1 http://www.infinispan.org/schemas/infinispan-config-5.1.xsd"
        xmlns="urn:infinispan:config:5.1">

<global>
    <transport transportClass="org.infinispan.remoting.transport.jgroups.JGroupsTransport">
        <properties>
            <property name="configurationFile" value="/home/akasiyanik/dev/projects/myapp/myapp-configs/jgroups.xml"/>
        </properties>
    </transport>
</global>

<default>
    <!-- Configure a synchronous replication cache -->
    <clustering mode="replication">
        <sync/>
        <hash numOwners="2"/>
    </clustering>
</default>
</infinispan>

3、J组。xml

<config>
    <TCP bind_port="${jgroups.tcp.port:7800}"
      loopback="true"
      port_range="30"
      recv_buf_size="20000000"
      send_buf_size="640000"
      discard_incompatible_packets="true"
      max_bundle_size="64000"
      max_bundle_timeout="30"        
      enable_bundling="true"
      use_send_queues="true"
      sock_conn_timeout="300"
      enable_diagnostics="false"
      thread_pool.enabled="true"
      thread_pool.min_threads="2"
      thread_pool.max_threads="30"
      thread_pool.keep_alive_time="60000"
      thread_pool.queue_enabled="false"
      thread_pool.queue_max_size="100"
      thread_pool.rejection_policy="Discard"

      oob_thread_pool.enabled="true"
      oob_thread_pool.min_threads="2"
      oob_thread_pool.max_threads="30"
      oob_thread_pool.keep_alive_time="60000"
      oob_thread_pool.queue_enabled="false"
      oob_thread_pool.queue_max_size="100"
      oob_thread_pool.rejection_policy="Discard"
     />
    <S3_PING location="r********s" access_key="AK***************SIA"
      secret_access_key="y*************************************BJ" timeout="2000" num_initial_members="2"/>
    <MERGE2 max_interval="30000"
        min_interval="10000"/>
    <FD_SOCK/>
    <FD timeout="3000" max_tries="3"/>
    <VERIFY_SUSPECT timeout="1500"/>
    <BARRIER />
    <pbcast.NAKACK use_mcast_xmit="false"
               exponential_backoff="500"
               discard_delivered_msgs="true"/>
    <UNICAST />
    <pbcast.STABLE stability_delay="1000" desired_avg_gossip="50000"
               max_bytes="4M"/>
    <pbcast.GMS print_local_addr="true" join_timeout="3000" 
            view_bundling="true"/>
    <UFC max_credits="2M"
     min_threshold="0.4"/>
    <MFC max_credits="2M"
     min_threshold="0.4"/>
   <FRAG2 frag_size="60K" />
   <pbcast.STATE_TRANSFER/>
</config>

共有1个答案

邹山
2023-03-14

使用此选项:https://github.com/meltmedia/jgroups-aws

它是使用AWS API(多播替换)为AWS实现的JGroups发现协议

 类似资料:
  • 下面是我的elasticsearch配置(elasticsearch.yml文件)。 我安装了弹性搜索和cloud-aws插件,我有两个实例在同一个aws帐户在us-east-1d与安全组弹性搜索。安全组配置为允许TCP连接的9300-9400端口。

  • 我们使用的是部署在OpenShift(v3.11,K8S版本1.11)上的Infinispan 9.4.11,使用的是Infinispan运算符版本0.0.3。 我们用了 默认缓存(一个没有名称) Java序列化 访问远程缓存的Hotrod协议 事情进展顺利。 我们现在正在迁移到K8S v1.17,我们的infra团队告诉我们Infinispan Operator v0.0.3与K8S v1.17

  • 我们在Tomcat下有一个web应用程序,它集成了Hibernate4x、Spring4x和HibernateTransactionManager作为我们的事务管理器(目前是一个MySQL资源)。 作为配置分发的一部分,我们应该与Infinispan集成作为缓存管理器,以其他格式存储配置,而不是在MySQL中。意思是,不要像Hibernate那样集成二级缓存! 我设法将Infinispan与Spr

  • 我试图创建一个超级简单的组件,但它没有出现。 组件类别: 面板类我将其添加到: JFrame: 唯一出现的是黄色背景。JFrame和JPanel工作正常;在构建jcomponents时,这个问题一直发生在我身上。我错过了什么? 任何帮助都将不胜感激!

  • Infinispan 是个开源的数据网格平台。它公开了一个简单的数据结构(一个Cache)来存储对象。虽然可以在本地模式下运行Infinspan,但其真正的价值在于分布 式,在这种模式下,Infinispan可以将集群缓存起来并公开大容量的堆内存。这可比简单的复制强大的多,因为它会为每个结点分配固定数量的副本——服 务器故障的一种恢复手段——同时还提升了可伸缩性,这是由于存储每个结点所需的工作量是与集群

  • 我使用JBoss作为7.1.1最终版本。我已经配置了事务模式为“FULL_XA”的复制缓存。 我使用缓存作为内存数据库。缓存中的条目由应用程序操作(添加/更新/删除)。我面临的场景是,JTA事务回滚不会恢复缓存中先前添加的条目。Infinispan文档指定了要为缓存配置的事务管理器。我相信在JBoss应用服务器上,infinispan应该能够自动选择正确的事务管理器。此外,infinispan 1