{"repo":"tnclong/go-que","free":true,"listed":false,"github":"https://github.com/tnclong/go-que","clone":"git clone https://github.com/tnclong/go-que.git","description":"A golang background job queue that uses optimized database lock for reliability and speed.","language":"Go","stars":17,"topics":["golang","background-jobs","queue","database","postgresql","scheduler","uniqueness"],"license":"MIT","category":"databases-storage","readme_excerpt":"Que A golang background job queue that uses optimized database lock for reliability and speed. There are benefits of using Que to route jobs: Transaction - Controls job along with other changes to your database optional in a transaction. Simplify Architecture - If you're already using database, a separate queue is another moving part that can break. Safety - If a golang process dies, the jobs it's working won't be lost, or left in a locked or ambiguous state - they immediately become available for any other worker to pick up according to RetryPolicy. Concurrency - Workers don't block each other. This allows for high throughput with a large number of workers. Uniqueness - Controls the uniqueness of jobs in same queue. Scheduler - Schedule jobs uses cron expression. Customization - Database let you easy to customizate queue suit for your business requirement. Install Doc https://godoc.org/github.com/tnclong/go-que Quickstart Start databases: If you use PostgreSQL: Install dependences: Run test: Example: example test.go Benchmark The purpose of benchmark: - Guide performace improvement. - Obtain a real WorkerOptions on production with accepted database resource wastage. Run bm: Output:","default_branch":null,"files":null,"tree":[],"storefront":"/r/tnclong","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/tnclong/go-que/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}