{"id":15296284,"url":"https://github.com/php-mq/server","last_synced_at":"2025-04-13T19:41:32.796Z","repository":{"id":57039851,"uuid":"90546658","full_name":"php-mq/server","owner":"php-mq","description":"The PHP Message Queue Server","archived":false,"fork":false,"pushed_at":"2018-01-01T21:48:31.000Z","size":644,"stargazers_count":7,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-03-27T10:21:19.768Z","etag":null,"topics":["async","message-queue","php7","server","socket"],"latest_commit_sha":null,"homepage":null,"language":"PHP","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/php-mq.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":".github/CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2017-05-07T16:36:13.000Z","updated_at":"2025-03-11T20:09:50.000Z","dependencies_parsed_at":"2022-08-23T23:30:30.682Z","dependency_job_id":null,"html_url":"https://github.com/php-mq/server","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/php-mq%2Fserver","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/php-mq%2Fserver/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/php-mq%2Fserver/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/php-mq%2Fserver/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/php-mq","download_url":"https://codeload.github.com/php-mq/server/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248770606,"owners_count":21159006,"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":["async","message-queue","php7","server","socket"],"created_at":"2024-09-30T18:09:57.978Z","updated_at":"2025-04-13T19:41:32.772Z","avatar_url":"https://github.com/php-mq.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![Build Status](https://travis-ci.org/php-mq/server.svg?branch=master)](https://travis-ci.org/php-mq/server)\n[![Latest Stable Version](https://poser.pugx.org/php-mq/server/v/stable)](https://packagist.org/packages/php-mq/server) \n[![Total Downloads](https://poser.pugx.org/php-mq/server/downloads)](https://packagist.org/packages/php-mq/server) \n[![Coverage Status](https://coveralls.io/repos/github/php-mq/server/badge.svg?branch=master)](https://coveralls.io/github/php-mq/server?branch=master)\n\n# PHPMQ\\MessageQueueServer\n\nA lightweight PHP message queue\n\nAt the moment this is a proof-of-concept implementation.\n\n## Description\n\nThis implementation aims to implement the following requirements.\n\nFor details of the client-endpoint-communication see the message [protocol documentation](https://github.com/php-mq/protocol/blob/master/README.md).\n\n### Message endpoint\n\n* Establish a communication endpoint via network or unix domain socket. (both should be possible)\n* Accept connections to that endpoint and constantly receive messages from clients\n\n### Message senders\n\n* Can connect/disconnect to/from the message endpoint\n* Can request a named queue\n* Can send arbitrary amount of messages to the queue\n\n### Message queues\n\n* Create named queues as they are requested by the sender\n* Flush queues on demand\n* Releases acknowledged messages\n* Give status feedback on existing queues\n* First in - First out\n\n### Message persistence\n \n* Persist incoming messages to an SQLite3 memory storage\n* Mirror the SQLite3 memory storage to a SQLite3 file storage to keep messages beyond a reboot\n* Mirror to file storage in background to keep persistence fast \n\n### Message consumers\n\n* Can connect/disconnect to/from the message endpoint\n* Can consume a variable amount of messages from one or multiple named queues\n* Must acknowledge the consumed message to release it from the queue \n\n### Message distribution\n\n* Distribute messages equally to all connected consumers\n* Reallocates distribution on dis-/connect of consumers\n* Dispatches a message to other consumer, if message was dispatched but not acknowledged and the respective consumer disconnected\n\n## Contributing\n\nContributions are welcome and will be fully credited. Please see the [contribution guide](.github/CONTRIBUTING.md) for details.\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fphp-mq%2Fserver","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fphp-mq%2Fserver","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fphp-mq%2Fserver/lists"}