onebip / recruiter
工作队列管理器:高性能、高容量、持久、容错。100% PHP/MongoDB,100% 精彩
dev-master
2018-02-14 10:16 UTC
Requires
- php: >=5.6
- alcaeus/mongo-php-adapter: ^1.1
- gabrielelana/byte-units: ~0.1
- onebip/onebip-array: dev-master
- onebip/onebip-concurrency: dev-master
- psr/log: 1.0.0
- symfony/event-dispatcher: 2.*
- ulrichsg/getopt-php: ~2.1
Requires (Dev)
- giorgiosironi/eris: dev-master
- phpunit/phpunit: ~4.0
Suggests
- symfony/console: In order to use Recruiter\Command\RecruiterJobCommand.
- dev-master
- dev-ubuntu20
- dev-jobs_statistics_improvements
- dev-distinct_and_count_stats
- dev-typed-options
- dev-php-7
- dev-change-onebip-concurrency-branch
- dev-memory_limit_exception_before_unlock_worker
- dev-allowing_only_one_tag
- dev-increasing_mongodb_safety
- dev-improved_statistics
- dev-added_maximum_to_retry_statistics
- dev-dashboard
- dev-batch-strategy
This package is not auto-updated.
Last update: 2024-09-14 18:53:04 UTC
README
这是一个正在进行中的工作,尚未准备好使用或查看。这项工作由 Onebip 赞助
Recruiter
这是一个用 PHP 构建的用于在 PHP 项目中使用的工作队列管理器。功能和特点
- 作业在 MongoDB 中持久化
- 作业具有复杂和可自定义的重试策略
- 通过标签支持多个队列
- 作业默认存储在历史集合中,以便事后检查和分析
- 构建得稳健、可扩展和容错
历史记录
Onebip 是一种支付系统(想想用移动设备代替信用卡的 PayPal),像支付通知、订阅续订、提醒消息等都非常重要。你不能错过或丢失一个作业(通知是幂等的,但支付不是)。你不能忘记完成一个作业(客户/商户支持必须有权处理数据以完成他们的工作)。你需要知道何时以及是否可以重试失败的作业(外部服务有速率限制,并基于协议/合同)。我们内部开发了自己的作业/队列解决方案,称为 Recruiter。在生产环境中经过一年的使用和许多 数十亿 次作业后,我们决定将我们所学到的知识整合到一个独立的项目中,并将其提供给每个人。