https://github.com/fengxq2014/watchman
https://github.com/fengxq2014/watchman
Last synced: 2 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/fengxq2014/watchman
- Owner: Fengxq2014
- License: mit
- Created: 2018-11-29T01:55:52.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2019-01-24T11:31:54.000Z (over 6 years ago)
- Last Synced: 2025-01-25T10:26:57.250Z (4 months ago)
- Language: Go
- Size: 7.58 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Feature 特性
* 高性能。在 macbook pro 15 上测试,每个队列的处理能力可以轻松达到 3000 message/second 以上,多个队列也可以做到线性的增加性能,整体应用达到几万每秒很轻松。同时,得益于 golang 的协程设计,如果下游出现了慢调用,那么也不会影响并发。
* 优雅关闭。通过对信号的监听,整个程序可以在不丢消息的情况下优雅关闭,利于配置更改和程序重启。这个在生产环境非常重要。
* 自动重连。当 RabbitMQ 服务无法连接的时候,应用可以自动重连。# Usage 使用
## Build
go build -o watchman## Usage
```
Usage of ./watchman:
-c string
config file path (default "config/queues.example.yml")
-log string
logging file, default STDOUT
-pidfile string
If specified, write pid to file.
```优雅关闭:
```
# kill -QUIT $PID
```# config 配置
## ENV 文件
使用前需要先加载 env,样例见 config/env.example.yml,主要是 RabbitMQ 的配置。## 队列配置文件
样例见 config/queues.example.yml, 主要是注明消息队列的配置以及回调地址和参数。# Author 作者
大鱼(fishtrip.cn) 是国内领先的全球民宿平台,给用户提供全球特色的民宿、客栈、别墅等非标准住宿。目前公司的技术栈以 ruby 和 Java 为主,部分中间件采用 golang 编写。# Licence 许可
MIT Licence