草庐IT

java - JMS 队列接收消息?

在JMSAPI文档中,它说:publicMessagereceive()throwsJMSExceptionReceivesthenextmessageproducedforthismessageconsumer.Thiscallblocksindefinitelyuntilamessageisproducedoruntilthismessageconsumerisclosed.Ifthisreceiveisdonewithinatransaction,theconsumerretainsthemessageuntilthetransactioncommits.这里我有三个问题:1.在

java - Akka的事件总线是否保证消息顺序?

我想保持事件进入总线的顺序。例如,如果event1然后event2进入总线,那么订阅的actor将按该顺序获取它们。问题是在集群和单节点actor系统上是否可以保证这样的顺序。 最佳答案 如果您在actor系统(system.eventStream)上使用事件流,并且您可以保证单个线程正在发布,那么是的,顺序将被保留。事件总线的子channel分类风格(与system.eventStream相关的那种)非常简单。有一个基本类类型的Map到订阅参与者列表。发布事件时,它会从Map(如果有)中获取匹配的订阅者列表,然后将消息发送给每个订

java - 如何使用 Eclipse Paho 在 Java MQTT 客户端上接收消息时发布消息

我正在尝试使用EclipsePaho在Java中的MQTT客户端上实现一些功能。目标是订阅一个主题,当收到消息时,客户端发送另一个主题的另一条消息。这看起来很简单,但我有一个我无法解决的奇怪问题。这是我的代码:importorg.eclipse.paho.client.mqttv3.IMqttDeliveryToken;importorg.eclipse.paho.client.mqttv3.IMqttToken;importorg.eclipse.paho.client.mqttv3.MqttCallback;importorg.eclipse.paho.client.mqttv3.

java - Camel 和 JMS 以正确的顺序从高级队列中消费消息

我在将ApacheCamel与OracleAdvancedQueues和JMS结合使用时遇到问题。这是关于分发消息的应用程序。在Camel的帮助下,消息在OracleAdvancedQueues中接收和排队。然后它们被Camel消耗并转发到目标系统。对于消息传递失败的情况,在AdvancedQueue中定义了一个重试次数,使消息重新传递。如果Camel现在将消息出列并将其发送到不可用的目标系统,则会抛出HttpOperationFailedException或NoSuchEndpointException。这些被捕获并执行回滚。此时,期望按照重试计数中定义的频率重试消息传递,然后将其移

java - 可扩展应用程序中的点对点消息传递?

在谷歌搜索消息是如何在像whatsapp这样的聊天信使中发送/接收后,我发现他们使用基于队列的消息系统。我只是想弄清楚这个功能的高级设计是什么HLD每个地雷的理解:-假设friend1和friend2在线。friend1已与网络服务器1建立HTTP网络连接,friend2已与网络服务器2建立HTTP网络连接。friend1将消息发送给friend2。现在,一旦消息到达Web服务器1,我就需要将消息传送到Web服务器2,以便可以通过已建立的Web连接将消息推送回friend2。我相信这里可以使用分布式自定义Java队列将消息从一台服务器传播到另一台服务器。一旦消息到达一个服务器,它将把它

java - Apache Camel Kafka - 聚合 kafka 消息并定期发布到不同的主题

我有一个用例:我需要定期读取和聚合来自kafka主题的消息,然后发布到不同的主题。本地存储不是一个选项。这就是我计划解决这个问题的方式,欢迎提出任何改进建议为了调度kafka消息的聚合和发布,计划使用AggregatorEIP的completionInterval选项。这是代码。@AutowiredObjectMapperobjectMapper;JacksonDataFormatjacksonDataFormat;@PostConstructpublicvoidinitialize(){//objectMapper.setPropertyNamingStrategy(Property

java - AWS Java SDK : AbortedException on call to AmazonSQSClient. 接收消息

我们正在尝试从EC2实例上运行的Java程序读取AmazonSQS队列。有时,我们会收到com.amazonaws.AbortedException。我们的代码如下所示:AmazonSQSClientsqs=newAmazonSQSClient(myCredentials);ReceiveMessageRequestrequest=newReceiveMessageRequest().withWaitTimeSeconds(20).withMaxNumberOfMessages(1).withQueueUrl(queueUrl);ReceiveMessageResultresult=s

java - 日志文件中的奇怪消息 @^@^@^@^@^@^@^@^@^@^@^@^@^@^@^

我有一个基于ApacheMina的Java编写的用于网络操作的应用程序服务器。最近我在我的日志文件中遇到了一个奇怪的行为。我注意到日志文件充满了@^@^@^@^@^@^@^@^@^@^@^@^....字符。我的意思是那些意想不到的字符数量巨大,因此日志文件在几个小时内就达到了数百GB!我对这个问题一无所知,几乎不可能用谷歌搜索它。可能是什么原因?这些字符集是否有人熟悉?如果需要,我可以提供有关该应用程序的更多详细信息。提前致谢。 最佳答案 这些字符是nullcharacters(NUL,ASCII值0)在caretnotation.

Java 消息服务和 Haskell

我想知道在Haskell程序中是否有任何方法可以从某些提供程序(如ActiveMQ或WebMQ)接收JMS消息。我已经看到有一个用于ActiveMQ的Haskell客户端,但它似乎没有维护。有没有人有这方面的经验或任何建议? 最佳答案 看起来我们目前拥有的主要库是:amqpzero-mq如果这些不合适,您可以将它们用作开发您自己的库的起点。 关于Java消息服务和Haskell,我们在StackOverflow上找到一个类似的问题: https://stack

java - 我如何知道我的消息已通过 spring amqp 成功发送?

我正在使用RabbitTemplate类使用springamqp写入RabbitMQ队列。我使用convertAndSend方法将消息发送到队列。这在正常情况下运行良好,但如果队列不存在,它似乎会无提示地失败。没有异常被抛出,也没有错误/调试消息记录到记录器。确保消息已送达的最佳方式是什么?这是代码当前正在执行的操作的示例。RabbitTemplatetemplate=newRabbitTemplate(factory);template.setQueue(queueName);template.setRoutingKey(queueName);template.convertAndS