{"id":13632304,"url":"https://github.com/akasamq/akasa","last_synced_at":"2025-04-12T09:42:43.527Z","repository":{"id":194533047,"uuid":"564606092","full_name":"akasamq/akasa","owner":"akasamq","description":"A high performance, low latency and high extendable MQTT server(broker) in Rust","archived":false,"fork":false,"pushed_at":"2025-03-13T14:30:59.000Z","size":596,"stargazers_count":135,"open_issues_count":4,"forks_count":9,"subscribers_count":7,"default_branch":"master","last_synced_at":"2025-03-26T04:41:24.810Z","etag":null,"topics":["broker","iot","mqtt","pubsub","rust","server"],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/akasamq.png","metadata":{"files":{"readme":"README-CN.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-11-11T04:18:05.000Z","updated_at":"2025-03-18T07:16:45.000Z","dependencies_parsed_at":"2023-12-02T07:27:57.097Z","dependency_job_id":"7388d6bf-33b2-4a50-a903-faa7b49f29fe","html_url":"https://github.com/akasamq/akasa","commit_stats":null,"previous_names":["akasamq/akasa"],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/akasamq%2Fakasa","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/akasamq%2Fakasa/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/akasamq%2Fakasa/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/akasamq%2Fakasa/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/akasamq","download_url":"https://codeload.github.com/akasamq/akasa/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248549741,"owners_count":21122926,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["broker","iot","mqtt","pubsub","rust","server"],"created_at":"2024-08-01T22:02:59.399Z","updated_at":"2025-04-12T09:42:43.489Z","avatar_url":"https://github.com/akasamq.png","language":"Rust","funding_links":[],"categories":["Rust"],"sub_categories":[],"readme":"# Akasa (आकाश)\n[English](README.md) | 简体中文\n\nAkasa 是一个 Rust 写的高性能，低延迟，高度可扩展的 MQTT 服务器。\n\n它底层的 MQTT 协议消息编解码器 ([mqtt-proto][mqtt-proto]) 是为了高性能和 async 环境而精心设计实现的。\n\n## 特性\n- [x] 完全支持 MQTT v3.1/v3.1.1/v5.0\n- [x] 支持 TLS (包括双向认证)\n- [x] 支持 WebSocket (包括 TLS 支持)\n- [x] 支持 [Proxy Protocol V2][proxy-protocol]\n- [x] 使用 [Hook trait][hook-trait] 来扩展服务器\n- [x] 用一个密码文件来支持简单的认证\n- [ ] 集群模式 (*敬请期待*)\n\n## 如何使用\n最简单的方法是通过 docker 来使用:\n```shell\ndocker run --init -it --rm -p 1883:1883 -v \"$HOME/local/etc\":/opt thewawar/akasa:0.1.1 akasa start --config /opt/akasa-config.yaml\n```\n或者你可以直接从源码编译:\n```shell\ngit clone https://github.com/akasamq/akasa.git \u0026\u0026 cd akasa\n# 可能你需要先安装 openssl: https://docs.rs/openssl/latest/openssl/#automatic\ncargo build --release\n\n./target/release/akasa --help\n# Commands:\n#  start            Start the server\n#  default-config   Generate default config to stdout\n#  insert-password  Insert a password to the password file\n#  remove-password  Remove a password from the password file\n#  help             Print this message or the help of the given subcommand(s)\n```\n\n更多文档:\n\n- [入门指南](docs/chinese/getting-started.md)\n- [配置项说明](docs/chinese/config.md)\n\n## 性能测试\n```yaml\n# 测试环境\nCPU    : Intel® Xeon® E5-2678 v3 × 48\nMemory : 32GB DDR4/2133\nSystem : Arch Linux\n\n# 参与者\nFlashMQ : v1.6.9\n  Akasa : v0.1.0\n   EMQX : v5.2.1\nVerneMQ : v1.13.0\n\n# Connections (clean_session=false)\nFlashMQ : 250k connections, 0.9GB memory\n  Akasa : 250k connections, 2.8GB memory\n   EMQX : 250k connections,   5GB memory\nVerneMQ :  50k connections,  20GB memory\n\n# Message/s\nFlashMQ : 40k coonections, 600k message/s, 0.6GB memory, CPU  550%\n  Akasa : 40k connections, 600k message/s, 0.8GB memory, CPU  580%\n   EMQX : 20k connections, 300k message/s, 3.2GB memory, CPU 3000%\nVerneMQ : 25k connections, 370k message/s, 6.0GB memory, CPU 2600%\n```\n\n## 正确性测试\n对于可靠的软件来说测试是非常重要的工作。Akasa 目前有 100+ 测试用例， 这些测试用例都是通过仔细阅读 MQTT 规格说明书中的功能点和限制点来收集的。\n\n底层的编解码器 ([mqtt-proto][mqtt-proto]) 也包含了相当数量的测试和一些 [fuzz][mqtt-proto-fuzz] 测试。\n\n## 社区\n\n如果你有任何问题或者想参与到我们的社区中来，可以通过以下方式进入：\n\n- [GitHub][github-group] 英文社区\n- [Discord][discord-group] 英文社区\n- [Telegram][telegram-group] 中文社区\n- QQ 群 (号码：862039269)\n\n## License\nAkasa 使用 **MIT** license ([LICENSE](LICENSE))\n\n## 企业版\nAkasa 会有一个企业版本，企业版中的额外功能包括:\n\n- [x] 基于 WebAssembly 的规则引擎\n  * 可以跑非常复杂的业务逻辑 (比如 [TensorFlow][tensorflow])\n  * 相对于脚本语言来说有绝对的性能优势\n  * 在线更新\n- [ ] 和 Akasa 交互的 HTTP API\n- [ ] 统计指标\n- [ ] 流量控制\n- [ ] 数据集成 (路由数据到 MySQL/Kafka/InfluxDB...)\n\n\n[mqtt-proto]: https://github.com/akasamq/mqtt-proto\n[mqtt-proto-fuzz]: https://github.com/akasamq/mqtt-proto/tree/master/fuzz\n[proxy-protocol]: https://www.haproxy.org/download/1.8/doc/proxy-protocol.txt\n[bsl]: https://mariadb.com/bsl-faq-mariadb/\n[hook-trait]: https://github.com/akasamq/akasa/blob/5ade2d788d9a919671f81b01d720155caf8e4e2d/akasa-core/src/hook.rs#L43\n[tensorflow]: https://blog.tensorflow.org/2020/09/supercharging-tensorflowjs-webassembly.html\n[github-group]: https://github.com/akasamq/akasa/discussions\n[discord-group]: https://discord.gg/Geg7hXWM\n[telegram-group]: https://t.me/+UCBpJs-6ddI4MjE1\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fakasamq%2Fakasa","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fakasamq%2Fakasa","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fakasamq%2Fakasa/lists"}