# folkmq **Repository Path**: linziguan/folkmq ## Basic Information - **Project Name**: folkmq - **Description**: FolkMQ 内存型消息中间件(单机可达 180K TPS),支持 "快照持久化" 和 "Broker 集群模式"。 - **Primary Language**: Unknown - **License**: LGPL-2.1 - **Default Branch**: main - **Homepage**: https://folkmq.noear.org - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 68 - **Created**: 2024-01-27 - **Last Updated**: 2024-01-27 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README

FolkMQ

An in-memory messaging middleware (support for snapshot persistence, Broker clustering)

https://folkmq.noear.org

Maven Apache 2 jdk-8 jdk-11 jdk-17 jdk-21
gitee star github star


##### Language: English | [中文](README_CN.md)
## Introduction * Run in Memory + snapshot persistence + Broker cluster mode (optional) * based on [Socket. D development] (https://socketd.noear.org/), it features full support), especially the single connection "multiplex"! Protocols such as udp can also be added * Use "multiplexing" + "running in memory" + "snapshot persistence" + "Broker cluster mode "(optional) * based on [Socket.D Network Application protocol](https://socketd.noear.org/) Development. New design, independent architecture! | role | function | |----------|---------------------------------------------------------------------------------------------| | Producer | Publish messages (Qos0, Qos1), publish timed messages (Qos0, Qos1) | | | | | Consumer | Subscribe, unsubscribe | | Consumer | Consume-ACK (automatic, manual) | | | | | Server | Publish-Confirm, Subscribe-Confirm, Unsubscribe-Confirm, Distribute-Retry, Distribute-Delay | | Server | In-memory running, snapshot persistence (automatic, offline, manual) | | Server | Cluster hot scaling | ## License to Use Software FolkMQ is a commercial open source software that: * Standalone deployment, Community Edition features (free for licensed use) * Cluster deployment edition, for Professional edition, Enterprise edition features (paid license use)。详见:[《Product planning》](https://folkmq.noear.org/article/edition) ## Features * High throughput, low latency FolkMQ runs purely in memory and can process hundreds of thousands of messages per second with minimum latency of less than a millisecond. * Extensibility FolkMQ Broker cluster supports FolkMQ-Server node hot extension . When the flow is high, it can be added at any time, and the flow can be reduced when it is low * Durability, reliability Messages are snapshot persisted (similar to redis) to local disk, and data backup is supported to prevent data loss * Fast (standalone, ~ 180K TPS). A bit like Redis is to MySql. //Using MacBook pro 2020 + JDK8 native test, single client sending and receiving (running points inevitably have fluctuations, I chose the better one) ### Join a community exchange group | QQ communication group:316697724 | Wechat communication group (input: FolkMQ when applying) | |---------------------------|----------------------------------------| | | ## Video recording of development process * Development process video: [《DEV-RECORD.md》](DEV-RECORD.md) * Presentation of results:[《[FolkMQ] 一个新的内存型消息队列(快,特别的快)》](https://www.bilibili.com/video/BV1mc411D7pY/) * Quick start:[《FolkMQ - Helloworld 入门》](https://www.bilibili.com/video/BV1Yj411L7fB/) ### Official website https://folkmq.noear.org ### Special thanks to JetBrains for supporting the open source project JetBrains