rocketmq rsqldb 简单记录

GitHub 地址 https://github.com/alibaba/rsqldb/tree/main,是和目前stream sql化看齐的Rocketmq的sql,类似还有kafka的sqlDB 和flink sql。

  • 目前版本0.2 ,主要提供rest模式调用,controller类为public class RsqlController
  • 支持的sql 主要是create table,insert和select
  • 支持windows
  • 需要主动terminal job,否则job会长期处于running 状态,如以下截图

总体感觉刚刚起步,在win10 idea 下run有如下错误,但debug可以pass(没有仔细看原因,估计是某个bean没有默认初始化)

java 复制代码
Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled.
2023-07-29 18:21:17.969 [main] ERROR org.springframework.boot.SpringApplication - Application run failed
org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'rsqlController' defined in file [D:\mydocuments\as4_code\rocketmq\rsqldb-rsqldb-0.2\rsqldb-rest\target\classes\com\alibaba\rsqldb\rest\controller\RsqlController.class]: Unsatisfied dependency expressed through constructor parameter 0; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'defaultRsqlService' defined in file [D:\mydocuments\as4_code\rocketmq\rsqldb-rsqldb-0.2\rsqldb-rest\target\classes\com\alibaba\rsqldb\rest\service\iml\DefaultRsqlService.class]: Unsatisfied dependency expressed through constructor parameter 1; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'RSQLEngin' defined in file [D:\mydocuments\as4_code\rocketmq\rsqldb-rsqldb-0.2\rsqldb-rest\target\classes\com\alibaba\rsqldb\rest\service\iml\RSQLEngin.class]: Bean instantiation via constructor failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.alibaba.rsqldb.rest.service.iml.RSQLEngin]: Constructor threw exception; nested exception is com.alibaba.rsqldb.common.exception.RSQLServerException: start localStore error.

以上异常在以下代码中createStaticCompactTopic中。

java 复制代码
  try {
            //创建逻辑分区数为1的topic,确保命令先进先出地执行。
            RocketMQUtil.createStaticCompactTopic(mqAdmin, topicName, 1, null);

            pullConsumer.start();
            producer.start();

            Collection<MessageQueue> messageQueues = pullConsumer.fetchMessageQueues(topicName);
            if (messageQueues == null || messageQueues.size() != 1) {
                throw new RSQLServerException("command topic queue not equals 1. messageQueue=" + messageQueues);
            }
            commandMessageQueue = messageQueues;
        } catch (Exception e) {
            throw new RSQLServerException("start localStore error.", e);
        }
相关推荐
程序员三明治1 天前
选 Redis Stream 还是传统 MQ?队列选型全攻略(适用场景、优缺点与实践建议)
java·redis·后端·缓存·rocketmq·stream·队列
稚辉君.MCA_P8_Java2 天前
RocketMQ 是什么?它的架构是怎么样的?和 Kafka 又有什么区别?
后端·架构·kafka·kubernetes·rocketmq
JimmtButler5 天前
RocketMQ本地编译
后端·rocketmq
JimmtButler5 天前
Namesrv解析
后端·rocketmq
阿里云云原生6 天前
阿里云两大 AI 原生实践荣获 2025 年度 OSCAR “开源+”典型案例
apache·rocketmq
阿里云云原生6 天前
PalmPay 携手阿里云 RocketMQ,共建非洲普惠金融“高速通道”
rocketmq
阿里云云原生8 天前
Apache RocketMQ × AI:面向 Multi-Agent 的事件驱动架构
apache·rocketmq
周杰伦_Jay8 天前
【 RocketMQ 全解析】分布式消息队列的架构、消息转发与快速实践、事务消息
分布式·算法·架构·rocketmq·1024程序员节
程序员老徐9 天前
RocketMQ源码详解(消费端启动流程)
rocketmq
阿里云云原生11 天前
2025 OSCAR丨与创新者同频!Apache RocketMQ 邀您共赴开源之约
rocketmq