问题标签 [rocketmq]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
mongodb - MongoDB insertMany 或 bulkwrite 在 Java-API 中引发重复键错误
当我尝试使用 java api 将许多数据插入 Mongodb4.0(副本集)时,它会引发重复键错误。数据量不算太大,只有300000左右。& 在 3-5 秒内插入
首先我从官方文档和网站上搜索。表明
每个进程最多运行 256^3 (16777216)
数据源来自rocketmq。这是我的代码,
然后将数据插入 MongoDB
但错误显示
我在java中的小数据为什么会发生这种情况,该对象是由MongoDB本身创建的。数据大小小于其支持的,我使用JDBC版本mongo-java-driver 3.7.1
提前谢谢!
java - 为什么 Thread.sleep(0) 可以防止 RocketMQ 中的 gc?
最近在看 RocketMQ 的源码,但是看不懂这段代码。为什么这段代码可以阻止gc?
debian - 根据官网安装rokcketmq 4.3.2 for debian,但无法“启动名称服务器”
tail -f ~/logs/rocketmqlogs/namesrv.log 执行 cmd,但报错
root@debian:/usr/local/mq/rocketmq-all-4.3.2# cd distribution/target/apache-rocketmq root@debian:/usr/local/mq/rocketmq-all-4.3.2/distribution/target/ apache-rocketmq# nohup sh bin/mqnamesrv & [1] 1342 root@debian:/usr/local/mq/rocketmq-all-4.3.2/distribution/target/apache-rocketmq# nohup: 加载输入并把输出追加到'nohup.out' tail -f ~/logs/rocketmqlogs/namesrv.log tail: 无法打开'/root/logs/rocketmqlogs/namesrv.log' 读取数据: 没有那个或目录tail: 没有文件剩余[1] + 退出 127 nohup sh bin/mqnamesrv root@debian:/usr/local/mq/rocketmq-all-4.3.2/distribution/target/apache-rocketmq# tail -f ~/logs/rocketmqlogs/namesrv.log tail: 无法打开'/root/logs/rocketmqlogs/namesrv.log' 读取数据:没有那个文件或目录tail:没有剩余文件
spring - Spring Boot 应用程序可以处理大量请求
我正在使用 Spring-boot 或 Spring-Cloud Framework 来开发 Web 应用程序。系统将主要处理来自客户端的 HTTP Restful 请求,然后将它们保存到 MySQL 数据库中。
但我计划使其更具可扩展性。它应该能够启动每个服务的更多实例,并使系统可以处理更多的传入请求。
但是我不确定我做的是否正确,有没有人可以帮我检查一下我目前的方法是否合理,或者在我的方法中提出任何潜在的风险。
我正在做的是:
服务 A 在其控制器中接收请求,然后将它们异步写入 RocketMQ。RocketMQ 用于削峰。
然后服务 B 订阅服务 A 写入的 RocketMQ 主题,并将消息以列表的形式缓存到 Redis 中。
服务 C 启动一个守护线程检查 Redis 中的消息编号。如果缓存列表大小达到一定值,它会将所有消息拉取并保存到 MySQL 中,然后刷新 Redis 中的缓存。
mq - RocketMQ 连接到 Z/OS IBM MQ 队列
有没有人使用 JMS 连接成功地将 RocketMQ 4.x 版本连接到 Z/OS 上的 IBM MQ 队列?您遇到了哪些问题以及启用了哪些特定用例/模式?预先感谢您的回复。
java - 如何修复 RocketmqClient 中的“主题名称服务器中没有主题路由信息”异常
我正在使用 apache-rocketmq 发送消息,但出现异常。我尝试了 csdn 的许多解决方案,但它不起作用。现在我不知道如何处理它。
这是一个 Linux 服务器,运行 rocketmq 4.2.0、java 8 和 tomcat 8。
rocketmq - readQueue 和 writeQueue 有什么区别
在 RocketMQ 中,readQueue 的数量和 writeQueue 的数量可以单独设置,在我看来只有公共部分可以按预期工作。
例如,如果 readQueueNum 设置为 8 并且 writeQueueNum 设置为 16,则有一半的消息根本没有被处理。
我试图在代码中找出这种设计的基本原理,但还没有找到任何线索。有人可以帮忙解释一下吗?谢谢
spring-boot - 使用 Spring Boot 2.1.5、Spring Cloud Stream Greenwich.SR1 和 RocketMQ 0.9.0 无法停止 bean 'inputBindingLifecycle'
我在这里看到了类似的问题,但它是针对旧版本的。不知道冲突的版本对我来说是什么,以及我需要使用什么。
我使用 Spring Initializr 来创建我的项目,遵循 SCS Reference Quick Start。这为我设置了当前版本(2.1.5,Greenwich.SR1)。
我手动添加的唯一依赖项是 RocketMQ,因为 Spring Initializr 找不到它。这是我的pom.xml
:
当我尝试关闭应用程序时,就会发生有问题的错误,这个过程每次都需要将近一分钟。这是我关闭应用程序时的完整堆栈跟踪:
无法停止 bean 'inputBindingLifecycle'
java.lang.IllegalStateException:在 java.lang.ApplicationShutdownHooks.remove(ApplicationShutdownHooks.java:82)~[na:1.8.0_181] at java.lang.Runtime.removeShutdownHook(Runtime.java:239)处正在关机~[na :1.8.0_181] 在 org.apache.rocketmq.client.trace.AsyncTraceDispatcher.removeShutdownHook(AsyncTraceDispatcher.java:210) ~[rocketmq-client-4.4.0.jar:4.4.0] 在 org.apache.rocketmq.client .trace.AsyncTraceDispatcher.shutdown(AsyncTraceDispatcher.java:183) ~[rocketmq-client-4.4.0.jar:4.4.0] at org.apache.rocketmq.client.consumer.DefaultMQPushConsumer.shutdown(DefaultMQPushConsumer.java:598) ~[rocketmq-client-4.4.0.jar:4.4.0] at org.springframework.cloud.stream.binder.rocketmq.sumption.RocketMQListenerBindingContainer.stop(RocketMQListenerBindingContainer.java:175) ~[spring-cloud-stream-binder -火箭MQ-0.9。0.RELEASE.jar:0.9.0.RELEASE] 在 org.springframework.cloud.stream.binder.rocketmq.integration.RocketMQInboundChannelAdapter.doStop(RocketMQInboundChannelAdapter.java:128) ~[spring-cloud-stream-binder-rocketmq-0.9 .0.RELEASE.jar:0.9.0.RELEASE] 在 org.springframework.integration.endpoint.AbstractEndpoint.stop(AbstractEndpoint.java:173) ~[spring-integration-core-5.1.3.RELEASE.jar:5.1。 3.RELEASE] 在 org.springframework.cloud.stream.binder.DefaultBinding.stop(DefaultBinding.java:127) ~[spring-cloud-stream-2.1.2.RELEASE.jar:2.1.2.RELEASE] 在 org. springframework.cloud.stream.binder.DefaultBinding.unbind(DefaultBinding.java:159) ~[spring-cloud-stream-2.1.2.RELEASE.jar:2.1.2.RELEASE] at org.springframework.cloud.stream.binding .BindingService.unbindConsumers(BindingService.java:303) ~[spring-cloud-stream-2.1.2.RELEASE.jar:2.1.2.RELEASE] 在 org.springframework.cloud.stream.binding.BindableProxyFactory.unbindInputs(BindableProxyFactory.java:307) ~[spring-cloud-stream-2.1.2.RELEASE.jar:2.1.2.RELEASE] 在 org. springframework.cloud.stream.binding.InputBindingLifecycle.doStopWithBindable(InputBindingLifecycle.java:66) ~[spring-cloud-stream-2.1.2.RELEASE.jar:2.1.2.RELEASE] at java.util.LinkedHashMap$LinkedValues.forEach (LinkedHashMap.java:608)~[na:1.8.0_181] at org.springframework.cloud.stream.binding.AbstractBindingLifecycle.stop(AbstractBindingLifecycle.java:56)~[spring-cloud-stream-2.1.2.RELEASE. jar:2.1.2.RELEASE] 在 org.springframework.cloud.stream.binding.InputBindingLifecycle.stop(InputBindingLifecycle.java:34) ~[spring-cloud-stream-2.1.2.RELEASE.jar:2.1.2.RELEASE ] 在 org.springframework.cloud.stream.binding。AbstractBindingLifecycle.stop(AbstractBindingLifecycle.java:73) ~[spring-cloud-stream-2.1.2.RELEASE.jar:2.1.2.RELEASE] at org.springframework.cloud.stream.binding.InputBindingLifecycle.stop(InputBindingLifecycle.java :34) ~[spring-cloud-stream-2.1.2.RELEASE.jar:2.1.2.RELEASE] at org.springframework.context.support.DefaultLifecycleProcessor.doStop(DefaultLifecycleProcessor.java:238) [spring-context-5.1 .5.RELEASE.jar:5.1.5.RELEASE] 在 org.springframework.context.support.DefaultLifecycleProcessor.access$300(DefaultLifecycleProcessor.java:53) [spring-context-5.1.5.RELEASE.jar:5.1.5。 RELEASE] at org.springframework.context.support.DefaultLifecycleProcessor$LifecycleGroup.stop(DefaultLifecycleProcessor.java:377) [spring-context-5.1.5.RELEASE.jar:5.1.5.RELEASE] at org.springframework.context.support .DefaultLifecycleProcessor。stopBeans(DefaultLifecycleProcessor.java:210) [spring-context-5.1.5.RELEASE.jar:5.1.5.RELEASE] at org.springframework.context.support.DefaultLifecycleProcessor.onClose(DefaultLifecycleProcessor.java:128) [spring-context -5.1.5.RELEASE.jar:5.1.5.RELEASE] 在 org.springframework.context.support.AbstractApplicationContext.doClose(AbstractApplicationContext.java:1018) [spring-context-5.1.5.RELEASE.jar:5.1.5 .RELEASE] 在 org.springframework.context.support.AbstractApplicationContext$1.run(AbstractApplicationContext.java:945) [spring-context-5.1.5.RELEASE.jar:5.1.5.RELEASE] ```springframework.context.support.AbstractApplicationContext.doClose(AbstractApplicationContext.java:1018) [spring-context-5.1.5.RELEASE.jar:5.1.5.RELEASE] at org.springframework.context.support.AbstractApplicationContext$1.run(AbstractApplicationContext .java:945) [spring-context-5.1.5.RELEASE.jar:5.1.5.RELEASE] ```springframework.context.support.AbstractApplicationContext.doClose(AbstractApplicationContext.java:1018) [spring-context-5.1.5.RELEASE.jar:5.1.5.RELEASE] at org.springframework.context.support.AbstractApplicationContext$1.run(AbstractApplicationContext .java:945) [spring-context-5.1.5.RELEASE.jar:5.1.5.RELEASE] ```
java - 一个topic有4个队列,只消费一个
RocketMQ 有一些主题,但只有一个主题有 4 个队列,只能消费 1 个队列。
RocketMQ 4.2.0 Java 1.8
消费组配置:
当我重置主题时间戳并重新启动应用程序时。所有队列都会被消耗。但是运行一段时间,只会消耗一个队列。