关于python:nameko-投递不同大小消息的速率对比

4次阅读

共计 814 个字符,预计需要花费 3 分钟才能阅读完成。

能够先浏览:nameko 投递信息不长久化

小体积

投递 1000 bytes 的 message(不开长久化 NON_PERSISTENT)

速率在 2000+

投递 1000 bytes 的 message(开长久化 PERSISTENT)

速率在 200-


中等体积

投递 100 KB 的 message(不开长久化 NON_PERSISTENT)

速率在 1500 左右

投递 100 KB 的 message(开长久化 PERSISTENT)

速率在 125 左右


大体积

投递 10MB 的 message(不开长久化 NON_PERSISTENT)

速率在 35 左右

投递 10MB 的 message(开长久化 PERSISTENT)

速率在 15 左右


参考代码:

from loguru import logger
import settings
from nameko.standalone.events import event_dispatcher
from nameko.constants import NON_PERSISTENT
import time

config = {'AMQP_URI': f'amqp://{settings.RABBITMQ_CONFIG.username}:'
                f'{settings.RABBITMQ_CONFIG.password}@{settings.RABBITMQ_CONFIG.host}:'
                f'{settings.RABBITMQ_CONFIG.port}/{settings.RABBITMQ_CONFIG.vhost}'
}

data='1234567890'*1000*1000

dispatch = event_dispatcher(config,delivery_mode=NON_PERSISTENT)
for _ in range(100000):
    dispatch(
        'test_publishe',
        'to_publish',
        data
    )

测试环境:

ubuntu20.04

rabbit 和程序都跑在同一个机器上

正文完
 0