我此时已经阅读了很多帖子和博客,我仍然不确定如何正确地集群我的2个RabbitMQ节点.
我已经阅读了RabbitMQ集群指南:http://www.rabbitmq.com/clustering.html
我在API指南中发现了一个神秘的ClusterId,没有解释如何首先获得该ID:http://www.rabbitmq.com/releases/rabbitmq-dotnet-client/v2.4.1/rabbitmq- DOTNET -客户端2.4.1-API指南.pdf
在StackOverflow帖子中了解到,基本上我需要让我的客户了解集群中的每个节点以及故障转移场景的代码:rabbitmq HA集群
现在......如果可能的话,我希望拥有的行为更加透明.我可能会在客户端上使用"ClusterId"来使消费者群集知晓,然后希望库知道随机连接到任一节点以获取消息.
当然,我知道一条消息一次只能在一台服务器上,所以我希望DotNet客户端库中的一些循环魔法能够处理故障转移情况.
我希望从发布者的角度来看,交换机将循环分发消息到集群中的各个节点.交换还可以识别群集并优雅地处理故障转移情况.
现在根据我的读数,它不是那样的工作......除非我错过了什么.如果我的知识是最新的,我必须编写所有集群感知业务的代码,那么......为什么RabbitMQ首先具有集群功能?怎么用?
有没有办法在没有编码那么多的情况下从RabbitMQ中获得这种行为?
谢谢
通过Google Compute Engine,您可以获得一组语义本地的实例,只要它们可以相互通信,所有外部访问都必须通过防火墙等.如果我想运行Map-Reduce或其他类型的集群那些会导致高网络流量的工作,那么我也想要物理本地的机器(比如在同一个机架上).查看API和初始文档,我认为没有任何方法可以请求; 有没有人知道呢?
使用ns命令我在控制台中创建了许多命名空间.我现在有问题.我创建了超过5个名称空间,我已经忘记了它们!我想看看我创建的命名空间的数量及其各自的名称.
是否有任何命令可以找出Hazelcast中创建的命名空间的数量?请帮忙.!
我想为聊天室应用程序创建一个node.js服务器集群,以支持高并发性.我需要能够在所有节点之间共享信息.我试图找出保持所有服务器同步的最佳方法.我希望共享对象具有尽可能多的灵活性,因为我计划在将来添加更多功能.
到目前为止,我有两个解决方案:
哪个更好?还有其他想法吗?
我使用Google计算引擎来设置三个cassandra节点的集群.运行"nodetool status"后,我得到:
antoniogallo88@cassandra-7m0w:~$ nodetool status
Datacenter: europe-west1
========================
Status=Up/Down
|/ State=Normal/Leaving/Joining/Moving
-- Address Load Tokens Owns (effective) Host ID Rack
UN 10.240.41.185 56.28 KB 256 33.2% edf4c2c8-f746-4c86-8b1e-4d4317788de9 b
UN 10.240.145.130 56.31 KB 256 30.6% 76025d1d-b5e4-4510-afd9-e0c52ae4aa2b b
UN 10.240.194.231 60.94 KB 256 36.2% 1c5594d6-4a62-4cb7-bb4e-ab15545af6a0 b
Run Code Online (Sandbox Code Playgroud)
所以,一切正常.
cqlsh命令也运行良好.
我的问题是当我运行以下内容时:
package com.example.cassandra;
import com.datastax.driver.core.Cluster;
import com.datastax.driver.core.Host;
import com.datastax.driver.core.Metadata;
public class SimpleClient {
private Cluster cluster;
public void connect(String node, int port) {
cluster = Cluster.builder()
// .addContactPoints("10.240.41.185", "10.240.145.130", "10.240.194.231").withPort(port).build();
.addContactPoints(node).withPort(port).build();
Metadata metadata = …Run Code Online (Sandbox Code Playgroud) 我正处于infinispan服务器的实验阶段,我在本地机器上设置infinispan集群时遇到问题.配置文件:我通过使用udp stack和jdbc_ping discovery更改jgroup堆栈的一部分来更改配置文件cluster.xml.
<subsystem xmlns="urn:infinispan:server:jgroups:7.0" default-stack="${jboss.default.jgroups.stack:udp-jdbc}">
<stack name="udp-jdbc">
<transport type="UDP" socket-binding="jgroups-udp">
<property name="ip_mcast">false</property>
</transport>
<protocol type="JDBC_PING">
<property name="connection_url">jdbc:mysql://localhost/jgroups</property>
<property name="connection_username">root</property>
<property name="connection_password">root</property>
<property name="connection_driver">com.mysql.jdbc.Driver</property>
</protocol>
<protocol type="FD_SOCK" socket-binding="jgroups-udp-fd"/>
<protocol type="FD_ALL"/>
<protocol type="VERIFY_SUSPECT"/>
<protocol type="pbcast.NAKACK2"/>
<protocol type="UNICAST3"/>
<protocol type="pbcast.STABLE"/>
<protocol type="pbcast.GMS"/>
<protocol type="UFC"/>
<protocol type="MFC"/>
<protocol type="FRAG2"/>
<protocol type="RSVP"/>
</stack>
Run Code Online (Sandbox Code Playgroud)
我把mysql驱动程序放在文件夹独立/部署中,运行服务器,这就是我输出的内容
20:13:15,389 INFO [org.jboss.as.server.deployment] (MSC service thread 1-8) JBAS015876: Starting deployment of "mysql-connector-java-5.1.34-bin.jar" (runtime-name: "mysql-connector-java-5.1.34-bin.jar")
20:13:15,461 ERROR [org.jboss.msc.service.fail] (MSC service thread 1-1) MSC000001: Failed to start service jboss.jgroups.channel.clustered: org.jboss.msc.service.StartException in service …Run Code Online (Sandbox Code Playgroud) 有没有办法通过Kubernetes中的服务传递环境变量?
我试图像这样将其传递给我的服务Yaml:
apiVersion: v1
kind: Service
metadata:
labels:
name: kafka
name: kafka
spec:
ports:
- port: 9092
selector:
name: kafka
env:
- name: BROKER_ID
value: "1"
Run Code Online (Sandbox Code Playgroud)
该服务已由kubectl使用,并已创建。
我已经确认该服务已通过容器连接到我的容器,env | grep KAFKA并且变量的输出大大增加了,这与服务启动时所期望的一样。
但是,我想传入的自定义环境变量必须根据其所在容器的实例而有所不同。
这可能吗?
在技术讨论中,我遇到了如何跨节点维护单个实例的问题,然后我回答了以下方法
1)基于DB的解决方案
2)分布式缓存
3)分片
4)在负载均衡器中维护Singleton单实例
面试官期待更多的东西,因为他回复了数据库,而且Cache会工作,分片无法工作,也没有对负载均衡器方法的评论,然后他补充说,让我们假设你的应用程序中不允许使用DB和Cache方法,给我另一个选择我在这一点上被困住了.
然后我用Google搜索并找到以下内容
https://javaarchitectforum.com/2013/02/19/singleton-design-pattern-with-example/
还从应用程序服务器中找到了一些支持
http://www.onjava.com/pub/a/onjava/2003/08/20/jboss_clustering.html
http://docs.oracle.com/cd/E12840_01/wls/docs103/cluster/service_migration.html#wp1051458
请帮助我解决您的想法,这将是跨节点实现单个实例(单例)的最佳方法
我根据AWS的教程创建了一个集群,它应该工作得很好但是当我尝试连接到它时,我收到以下错误
java.io.IOException异常:未能从配置主机集群端点:[mydaxcluster.ximfba.clustercfg.dax.use1.cache.amazonaws.com:8111]在com.amazon.dax.client.cluster.Source $ AutoconfSource.pull( com.amazon.dax.client.cluster.Source $ AutoconfSource.update(Source.java:60)〜[DaxJavaClient-latest.jar:1.0:Source.java:128)~ [DaxJavaClient-latest.jar:1.0.792.0] .792.0]在com.amazon.dax.client.cluster.Cluster的com.amazon.dax.client.cluster.Source $ AutoconfSource.refresh(Source.java:51)〜[DaxJavaClient-latest.jar:1.0.792.0] .REFRESH(Cluster.java:311)〜[DaxJavaClient-latest.jar:1.0.792.0]在com.amazon.dax.client.cluster.Cluster.refresh(Cluster.java:294)〜[DaxJavaClient-latest.jar: 1.0.792.0]在com.amazon.dax.client.cluster.Cluster.startup(Cluster.java:191)〜[DaxJavaClient-latest.jar:1.0.792.0]在com.amazon.dax.client.cluster.Cluster.在com.amazon.dax.client.dynamodbv2.ClusterDaxClient启动(Cluster.java:143)〜[DaxJavaClient-latest.jar:1.0.792.0].(ClusterDaxClient.java:159)[DaxJavaClien 在com.poc.dynamo.controller的com.amazon.dax.client.dynamodbv2.ClusterDaxClient.(ClusterDaxClient.java:130)[DaxJavaClient-latest.jar:1.0.792.0]的t-latest.jar:1.0.792.0]. DataController.testDax(DataController.java:190)[classes /:na] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)〜[na:1.8.0_121] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62 )〜[na:1.8.0_121] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)〜[na:1.8.0_121] at java.lang.reflect.Method.invoke(Method.java:498)〜 [na:1.8.0_121] org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:205)org中的[spring-web-4.3.6.RELEASE.jar:4.3.6.RELEASE].在org.springframework.web.servlet.mvc.method上的springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:133)[spring-web-4.3.6.RELEASE.jar:4.3.6.RELEASE]. annotation.ServletInvocableHandlerMethod.invokeAndHandle(SER vletInvocableHandlerMethod.java:116)[spring-webmvc-4.3.6.RELEASE.jar:4.3.6.RELEASE] org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:827) [spring-webmvc-4.3.6.RELEASE.jar:4.3.6.RELEASE]在org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:738)[chring-webmvc- 4.3 .6.RELEASE.jar:4.3.6.RELEASE] at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:85)[spring-webmvc-4.3.6.RELEASE.jar:4.3 .6.RELEASE]在org.springframework.web上的org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:963)[spring-webmvc-4.3.6.RELEASE.jar:4.3.6.RELEASE]. servlet.DispatcherServlet.doService(DispatcherServlet.java:897)[spring-webmvc-4.3.6.RELEASE.jar:4.3.6.RELEASE] org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.jav)一:970)[弹簧webmvc-4.3.6.RELEASE.jar:4.3.6.RELEASE]在org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:872)[弹簧webmvc-4.3.6 .RELEASE.jar:4.3.6.RELEASE]在org.springframework的javax.servlet.http.HttpServlet.service(HttpServlet.java:648)[tomcat-embed-core-8.5.11.jar:8.5.11]. web.servlet.FrameworkServlet.service(FrameworkServlet.java:846)[spring-webmvc-4.3.6.RELEASE.jar:4.3.6.RELEASE],位于javax.servlet.http.HttpServlet.service(HttpServlet.java:729) [tomcat-embed-core-8.5.11.jar:8.5.11]在org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:230)[tomcat-embed-core-8.5.11.jar:8.5 .11]在org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)[tomcat-embed-core-8.5.11.jar:8.5.11] org.apache.tomcat.websocket.server. WsFilter.doFilter(WsFilter.java:52)[Tomcat的嵌入-的WebSocket-8.5.11.jar:8.5.11]在org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilter Chain.java:192)[tomcat-embed-core-8.5.11.jar:8.5.11] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)[tomcat-embed-core-8.5 .11.jar:8.5.11]在org.springframework.boot.web.filter.ApplicationContextHeaderFilter.doFilterInternal(ApplicationContextHeaderFilter.java:55)[spring-boot-1.5.1.RELEASE.jar:1.5.1.RELEASE] at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)[spring-web-4.3.6.RELEASE.jar:4.3.6.RELEASE] org.apache.catalina.core.ApplicationFilterChain.internalDoFilter( ApplicationFilterChain.java:192)[tomcat-embed-core-8.5.11.jar:8.5.11] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)[tomcat-embed-core-8.5 .11.jar:8.5.11]在org.springframework.boot.actuate.trace.WebRequestTraceFilter.doFilterInternal(WebRequestTraceFilter.java:108)[spring-boot-actuator-1.5.1.RELEASE.jar:1.5.1.RELEASE ] org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)[spring-web-4.3.6.RELEASE.jar:4.3.6.RELEASE] org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)[tomcat-embed-core -8.5.11.jar:8.5.11]在org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)[Tomcat的嵌入芯-8.5.11.jar:8.5.11]在有机springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:99)[spring-web-4.3.6.RELEASE.jar:4.3.6.RELEASE] org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter. java:107)[spring-web-4.3.6.RELEASE.jar:4.3.6.RELEASE] org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)[tomcat-embed-core-8.5 .11.jar:8.5.11]在org.apringframework上的org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)[tomcat-embed-core-8.5.11.jar:8.5.11]. web.filter.HttpPutFormContentFilter.doFilterInternal(HttpPutFormContentFil ter.java:105)[spring-web-4.3.6.RELEASE.jar:4.3.6.RELEASE] org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)[spring-web-4.3 .6.RELEASE.jar:4.3.6.RELEASE]在org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)[Tomcat的嵌入芯-8.5.11.jar:8.5.11]在org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)[tomcat-embed-core-8.5.11.jar:8.5.11] at org.springframework.web.filter.HiddenHttpMethodFilter.doFilterInternal(HiddenHttpMethodFilter. java:81)[spring-web-4.3.6.RELEASE.jar:4.3.6.RELEASE] org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)[spring-web-4.3.6 .RELEASE.jar:4.3.6.RELEASE]在org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)[tomcat-embed-core-8.5.11.jar:8.5.11]. apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)[tomcat- embed-core-8.5.11.jar:8.5.11] at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:197)[spring-web-4.3.6.RELEASE.jar:4.3.6.发布在org.apache.catalina.core.ApplicationFilterChain的org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)[spring-web-4.3.6.RELEASE.jar:4.3.6.RELEASE] .internalDoFilter(ApplicationFilterChain.java:192)[tomcat-embed-core-8.5.11.jar:8.5.11]在org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)[tomcat-embed- core-8.5.11.jar:8.5.11] at …
java cluster-computing amazon-web-services amazon-dynamodb amazon-dynamodb-dax