美文网首页
第一届阿里中间件性能挑战赛-答辩资料学习

第一届阿里中间件性能挑战赛-答辩资料学习

作者: 红袖者 | 来源:发表于2018-01-10 13:25 被阅读0次

    题目

    题目内容

    实现一个基于发布/订阅模型的消息中间件,功能要求如下:

    1. broker保证消息落盘后才向producer返回发送成功的ack,并把消息推送给consumer;
    2. consumer消费成功或失败都返回ack给broker;
    3. consumer消费失败、消费超时、不在线时,消息不能丢失,需要尽快重新推送,且consumer正常后可以及时消费完堆积的消息;
    4. 采用push模式把消息推送给consumer;
    5. 支持简单过滤功能,即broker只推送符合订阅条件的消息给consumer;
    6. broker宕机重启后,保证消息不能丢失;
    7. 支持consumer group,即consumer群组订阅了某topic,该topic的消息发送给其中任意一台机器都可以;
    考核方式

    性能指标:
    每秒消息接收量,每秒消息投递量,消息投递延迟;
    测试场景:

    • 4k消息,一个producer发布topicA,一个consumer订阅topicA,consumer能正常消费所有消息,且无堆积;
    • 4k消息,一个producer发布topicA,二十个consumer订阅topicA,consumer能正常消费所有消息,且无堆积;
    • 4k消息,一个producer发布topicA,一个consumer订阅topicA,consumer消费超时,有大量堆积;
    • 4k消息,一个producer发布topicA,二十个consumer订阅topicA,只有一个consumer能正常消费,其它消费者消费超时、失败、不在线,有大量堆积;
    • 4k消息,二十个producer发布20个不同的topic,每个topic有二十个consumer,且每个consumer订阅不同属性值的消息,都正常消费,且无堆积;
    • 4k消息,二十个producer发布20个不同的topic,每个topic有二十个consumer,且每个consumer订阅不同属性值的消息,所有消费均超时,有大量堆积。堆积一段时间后,减少90%的发送量,且消费者恢复正常,broker尽可能把堆积的消息推送出去;

    相关文章

      网友评论

          本文标题:第一届阿里中间件性能挑战赛-答辩资料学习

          本文链接:https://www.haomeiwen.com/subject/avdgnxtx.html