pepperbus

command module
v0.0.0-...-aa68dce Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 16, 2020 License: GPL-3.0 Imports: 43 Imported by: 0

README

pepperbus

pepperbus 是一个实时的、分布式的消息队列服务,具有持久化的任务与消息队列、任务的调度处理框架、任务的跟踪与管理。

Features

  • 支持redis协议作为总线数据输入,充分利用业务端成熟的redis扩展,对业务端友好,迁移和改造成本低
  • 通过fastcgi协议与后端通信,与实际的业务逻辑解耦,方便的支持php和golang等多种语言接入
  • 数据的输入和输出对于长连接友好,解决LNMP解决方案,长连接情况下,由于集群连接过多给后端服务造成压力,通过代理方式与最终的后端服务做连接复用,对输入不限制长连,对输出维持有限长连接
  • 总线队列支持常规的生产者和消费者模式,消息可以按订阅关系重复消费
  • 全链路监控策略,可以获取流水线作业的操作序列,完整自描述其关系
  • 队列拥塞状态监控,通过与消费者协议交互,反馈处理异常的队列,计算队列消费者处理能力,动态扩容消费进程
  • 总线支持定时任务的设置和管理,动态控制和迁移定时任务,解决常规的crontab的管理问题
  • 总线队列支持平滑重启,平稳恢复所有任务

架构描述

  • 业务服务器可以与bus总线实例混合部署也可以独立部署,混合部署时可以优先访问本地总线服务器,独立分离部署可以与总线服务用域名进行通信
  • 总线服务器与php-fpm交互可以通过本地也可以通过网络
  • 总体架构图:

pepper_bus_overview

组件

  • dashboard: 提供用户管理的web ui。
  • gokeeper: 提供配置管理服务。

项目依赖

快速启动

  • 克隆代码仓库
$ git clone https://github.com/huajiao-tv/pepperbus.git
$ git clone https://github.com/qmessenger/job-dashboard.git 
#用户管理页面
  • 启动pepperbus与dashboard服务

进入pepperbus根目录,执行

$ cd deploy
$ docker-compose up -d

通过上述命令,pepperbus相关服务均启动完毕,您可以从通过 http://127.0.0.1:9528 访问pepperbus用户管理页面, 默认管理员账号 admin:admin。

注意:服务启动后还需要配置集群和存储等信息才可正常使用。详见 用户使用说明

文档

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
codec
logic
data
Code generated by tool/convert DO NOT EDIT! Code generated by tool/convert DO NOT EDIT! Code generated by tool/convert DO NOT EDIT!
Code generated by tool/convert DO NOT EDIT! Code generated by tool/convert DO NOT EDIT! Code generated by tool/convert DO NOT EDIT!
sdk
tester
ben
dev
msgRedis
redis返回数据 Error: -Error message\r\n Simple String: +OK\r\n Integers: :1000\r\n(int64) Bulk Strings: $6\r\nfoobar\r\n $0\r\n\r\n $-1\r\n Arrays: *2\r\n$3\r\nfoo\r\n$3\r\nbar\r\n *0\r\n *-1\r\n A client sends to the Redis server a RESP Array consisting of just Bulk Strings.
redis返回数据 Error: -Error message\r\n Simple String: +OK\r\n Integers: :1000\r\n(int64) Bulk Strings: $6\r\nfoobar\r\n $0\r\n\r\n $-1\r\n Arrays: *2\r\n$3\r\nfoo\r\n$3\r\nbar\r\n *0\r\n *-1\r\n A client sends to the Redis server a RESP Array consisting of just Bulk Strings.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL