/TinyMQ

Realize a tiny message queue from zero.

Primary LanguageJava

TinyMQ

A tiny version of RocketMQ, inspired from houbb/mq.

Enhancement

Highlights several enhancements compared with houbb/mq here:

  • fewer external dependencies, realize more built-in utilities
  • for robustness, json parser/wrapper change from fastjson to Jackson
  • generate Snowflake ID, instead of original UUID
  • default message push relies on long polling, while original push only used for urgent message
  • decoupling message transfer and consumption, therefore peak cut
  • performance improvement and more reasonable implementation of details
  • cleaner code, naming and structure, with more notes

Also fixed some bugs.

相关学习参考

RocketMQ

Netty网络编程

Java编程最佳实践