博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
RocketMQ中使用SQL92过滤消息
阅读量:7128 次
发布时间:2019-06-28

本文共 435 字,大约阅读时间需要 1 分钟。

目前为止,RocketMQ仅仅支持通过TAG来过滤消息,但是一个消息只能有一个TAG,这个对于复杂需求来说太过于限制了。因此,我们希望基于SQL 92表达式语法的子集定义和实现一种合理的筛选语言,以支持自定义消息筛选。

为什么是SQL92的子集?

让RocketMQ具备消息过滤的能力是这个问题的目的,我们知道SQL92被广泛使用,大多数人都熟悉它。因此选择它作为RocketMQ的语法是合理的。

据我所知,ActiveMQ已经在基于JavaCC的基础上实现了这个功能,它很简单,并且是可执行的。所以我只是提取它的一些语法并集成到RocketMQ中。

  1. 数字表达式: >,>=,<,<=,BETWEEN,=.
  2. 字符表达式:=,<>,IN.
  3. IS NULL 或则 IS NOT NULL.
  4. 逻辑AND, 逻辑OR, 逻辑NOT.

常数类型:

  1. 数字:3.1415926, 5。
  2. 字符: ‘a’,必须带有单引号。
  3. NULL,特别的常量。
  4. 布尔类型: TRUEFALSE

设计

转载地址:http://svrel.baihongyu.com/

你可能感兴趣的文章
Java必须了解的“递归”与“IO流”!!!
查看>>
Http协议状态码
查看>>
css3单冒号和双冒号的区别
查看>>
小X与缩写
查看>>
第一次团队会议
查看>>
018-请你说一下设计测试用例的方法
查看>>
android 链接mysql数据库
查看>>
CAKeyframeAnimation 旋转动画
查看>>
学习python的第二天
查看>>
深入详解SQL中的Null
查看>>
c#国际化
查看>>
java代码Calendar类
查看>>
java多线程实现礼花绽放的效果,
查看>>
算法提高 道路和航路 SPFA 算法
查看>>
POJ2449 第K短路
查看>>
【最小割】【网络流24题】【P2762】 太空飞行计划问题
查看>>
Mysql触发器示例
查看>>
解决Asp.net中的Chart控件运行出现错误提示“ ChartImg.axd 执行子请求时出错”
查看>>
PHPExcel类导出xlsx文件 提示格式不兼容 低版本excel软件打不开 解决方案
查看>>
Android开发规范
查看>>