{"id":16836168,"url":"https://github.com/echlebek/lasr","last_synced_at":"2025-04-11T05:11:00.878Z","repository":{"id":25473706,"uuid":"104094638","full_name":"echlebek/lasr","owner":"echlebek","description":"In-process message queue","archived":false,"fork":false,"pushed_at":"2022-01-30T08:26:10.000Z","size":67,"stargazers_count":5,"open_issues_count":2,"forks_count":2,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-04-10T08:07:07.657Z","etag":null,"topics":["boltdb","go","message-queue","work-queue"],"latest_commit_sha":null,"homepage":null,"language":"Go","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/echlebek.png","metadata":{"files":{"readme":"README.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}},"created_at":"2017-09-19T15:42:26.000Z","updated_at":"2024-07-27T15:31:14.000Z","dependencies_parsed_at":"2022-08-07T11:15:46.632Z","dependency_job_id":null,"html_url":"https://github.com/echlebek/lasr","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/echlebek%2Flasr","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/echlebek%2Flasr/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/echlebek%2Flasr/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/echlebek%2Flasr/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/echlebek","download_url":"https://codeload.github.com/echlebek/lasr/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248345266,"owners_count":21088244,"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":["boltdb","go","message-queue","work-queue"],"created_at":"2024-10-13T12:12:34.476Z","updated_at":"2025-04-11T05:11:00.845Z","avatar_url":"https://github.com/echlebek.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![Build Status](https://api.travis-ci.org/echlebek/lasr.svg)](https://api.travis-ci.org/echlebek/lasr)\n[![GoDoc](https://img.shields.io/badge/godoc-reference-blue.svg?style=flat-square)](https://godoc.org/github.com/echlebek/lasr)\n\n# lasr\nA persistent work queue backed by BoltDB. This queue is useful when the producers and consumers can live in the same process.\n\nProject goals\n-------------\n- Data integrity over performance.\n- Simplicity over complexity.\n- Ease of use.\n- Minimal feature set.\n\nSafety\n------\nlasr is designed to never lose information. When the Send method completes, messages have been safely written to disk. On Receive, messages are not deleted until Ack is called. Users should make sure they always respond to messages with Ack or Nack.\n\nMisc\n----\nDead-lettering is supported, but disabled by default.\n\nBenchmarks\n----------\n\nOn 5th Gen Lenovo X1 Carbon with 512 GB SSD:\n\n`$ hey -m POST -D main.go -h2 -cpus 2 -n 20000 -c 10 http://localhost:8080`\n\n```\nSummary:\n  Total:        1.8671 secs\n  Slowest:      0.0112 secs\n  Fastest:      0.0001 secs\n  Average:      0.0009 secs\n  Requests/sec: 10711.7919\n\nResponse time histogram:\n  0.000 [1]     |\n  0.001 [14044] |∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎\n  0.002 [5030]  |∎∎∎∎∎∎∎∎∎∎∎∎∎∎\n  0.003 [709]   |∎∎\n  0.005 [139]   |\n  0.006 [36]    |\n  0.007 [19]    |\n  0.008 [8]     |\n  0.009 [7]     |\n  0.010 [3]     |\n  0.011 [4]     |\n\nLatency distribution:\n  10% in 0.0001 secs\n  25% in 0.0003 secs\n  50% in 0.0008 secs\n  75% in 0.0013 secs\n  90% in 0.0018 secs\n  95% in 0.0022 secs\n  99% in 0.0034 secs\n\nDetails (average, fastest, slowest):\n  DNS+dialup: 0.0000 secs, 0.0000 secs, 0.0056 secs\n  DNS-lookup: 0.0000 secs, 0.0000 secs, 0.0020 secs\n  req write:  0.0000 secs, 0.0000 secs, 0.0042 secs\n  resp wait:  0.0009 secs, 0.0000 secs, 0.0098 secs\n  resp read:  0.0000 secs, 0.0000 secs, 0.0038 secs\n\nStatus code distribution:\n  [200]\t20000 responses\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fechlebek%2Flasr","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fechlebek%2Flasr","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fechlebek%2Flasr/lists"}