ali-sdk / ali-ons

Aliyun Open Notification Service Client
MIT License
151 stars 43 forks source link

feat: support customize queue allocation in broadcast mode #55

Closed gxcsoccer closed 5 years ago

gxcsoccer commented 5 years ago

支持在广播模式下的自定义队列分配

egg-ons 的配置里面需要配三个东西

codecov[bot] commented 5 years ago

Codecov Report

Merging #55 into master will increase coverage by 0.16%. The diff coverage is 100%.

Impacted file tree graph

@@            Coverage Diff             @@
##           master      #55      +/-   ##
==========================================
+ Coverage   90.59%   90.76%   +0.16%     
==========================================
  Files          35       35              
  Lines        1723     1722       -1     
==========================================
+ Hits         1561     1563       +2     
+ Misses        162      159       -3
Impacted Files Coverage Δ
lib/mq_client_api.js 74.03% <ø> (ø) :arrow_up:
lib/client_config.js 100% <100%> (ø) :arrow_up:
lib/producer/mq_producer.js 91.07% <100%> (-0.08%) :arrow_down:
lib/consumer/mq_push_consumer.js 92.83% <100%> (ø) :arrow_up:
lib/mq_client.js 88.23% <100%> (+0.3%) :arrow_up:
lib/store/local_file.js 88.23% <0%> (+2.94%) :arrow_up:

Continue to review full report at Codecov.

Legend - Click here to learn more Δ = absolute <relative> (impact), ø = not affected, ? = missing data Powered by Codecov. Last update f1258c2...da4bacb. Read the comment docs.

fengmk2 commented 5 years ago

如果这个是很常用的模式,是否直接内置掉,不需要应用层来实现,应用只需要require 这些内置的类来配置即可?

gxcsoccer commented 5 years ago

@fengmk2 这是给语雀的省钱模式,应该不是一种官方推荐的模式,我是想先通过这种方式把能力开放出来

dead-horse commented 5 years ago

配置这个 allocateQueueManually 为 true 就好了?

gxcsoccer commented 5 years ago

@dead-horse 不是,要自定义 topicPublishInfo 和 allocateMessageQueueStrategy

目前没有内置这个模式主要是

  1. 不清楚是不是通用需求
  2. 这么玩我不确定是否有坑
fengmk2 commented 5 years ago

@gxcsoccer 如果其他人也用 ons。。。也会贵死。。。

gxcsoccer commented 5 years ago

@gxcsoccer 如果其他人也用 ons。。。也会贵死。。。

@fengmk2 你们是广播模式,所以每个客户端要拉所有的队列,所以会比较费钱,但是如果是集群消费模式的话,会平分队列的