{"id":17202229,"url":"https://github.com/marcosmarcolin/async-php","last_synced_at":"2025-03-25T09:14:57.219Z","repository":{"id":158781378,"uuid":"415613540","full_name":"marcosmarcolin/async-php","owner":"marcosmarcolin","description":"Exemplos básicos de PHP Assíncrono com Workerman, Ratchet, Swoole, etc.","archived":false,"fork":false,"pushed_at":"2021-10-19T14:39:13.000Z","size":28,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-01-30T08:30:08.399Z","etag":null,"topics":["asynchronous-programming","ixcsoft","php","ratchet","socket-io","swoole","websocket","workerman"],"latest_commit_sha":null,"homepage":"","language":"CSS","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/marcosmarcolin.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-10-10T14:45:18.000Z","updated_at":"2022-03-13T13:34:35.000Z","dependencies_parsed_at":null,"dependency_job_id":"63435d7d-36d2-4641-95fb-2e71b8dba0cc","html_url":"https://github.com/marcosmarcolin/async-php","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/marcosmarcolin%2Fasync-php","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/marcosmarcolin%2Fasync-php/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/marcosmarcolin%2Fasync-php/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/marcosmarcolin%2Fasync-php/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/marcosmarcolin","download_url":"https://codeload.github.com/marcosmarcolin/async-php/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245431720,"owners_count":20614184,"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":["asynchronous-programming","ixcsoft","php","ratchet","socket-io","swoole","websocket","workerman"],"created_at":"2024-10-15T02:14:02.398Z","updated_at":"2025-03-25T09:14:57.192Z","avatar_url":"https://github.com/marcosmarcolin.png","language":"CSS","readme":"# Exemplos criados para apresentação no IXCTalks, evento interno da IXCSoft, realizado presencialmente no dia 19 de Outubro de 2021.\n\n\n# Programação assíncrona com PHP\n\nEste repositório contém alguns exemplos de programação assíncrona em PHP, utilizando diversos pacotes.\n\nPara todos os exemplos, é necessário a instalação do Composer(exceto Swoole), para isso, navegue até a pasta do exemplo e execute:\n\n`composer install`\n\n## phpsocket.io (Chat básico)\n\n#### Uma implementação alternativa do lado do servidor de socket.io em PHP baseada no Workerman.\n\nPara iniciar o serviço do SocketIO em mode debug, execute no seu terminal no diretório do exemplo:\n\n`php socketio.php start`\n\nPara parar, pressione `Ctrl + C`\n\nNo navegador acesse: `http://localhost/async-php/socketio`.\n\nDocumentação completa do pacote: https://github.com/walkor/phpsocket.io\n\nLayout utilizado no exemplo: https://www.bootdey.com/snippets/view/animated-chat-window\n\n## Workerman\n\n#### Workerman é uma estrutura de PHP orientada a eventos assíncronos com alto desempenho para construir aplicativos de rede rápidos e escaláveis. Workerman oferece suporte a HTTP, Websocket, SSL e outros protocolos personalizados. Workerman suporta extensão de evento.\n\n## Timer\nVocê pode usar o **Timer**, para executar operação não bloqueante de tempo em tempo, com fácil configuração.\n\nExecute no terminal:\n\n`php timer.php start`\n\nDocumentação completa do pacote: https://github.com/walkor/Workerman\n\n## Websocket (Comunicação com o servidor)\n\nVocê pode utilizar websocket para criar apliçações do tipo *realtime*, como **chats**.\n\nExecute no terminal:\n\n`php websocket.php start`\n\nNo navegador acesse: `http://localhost/async-php/workerman/public`.\n\n## Ratchet (Chat básico)\n\n### Ratchet é uma biblioteca PHP fracamente acoplada que fornece aos desenvolvedores ferramentas para criar aplicativos\nbidirecionais em tempo real entre clientes e servidores por meio de WebSockets. Esta não é a Internet do seu avô.\n\nPara iniciar o serviço do Ratchet, execute no seu terminal no diretório do exemplo:\n\n`php ratchet.php`\n\nNo navegador acesse: `http://localhost/async-php/ratchet`.\n\nDocumentação completa do pacote: http://socketo.me/\n\n## Swoole\n\n### Extensão PHP de código aberto para Async IO, Coroutines e Fibers\n\nPara o Swoole, é necessário instalar a extensão: https://www.swoole.co.uk/docs/get-started/installation\n\nExemplo de *Coroutine*, adição de exemplo, para execução assíncrona do *loop foreach*.\n\nEm seu terminal, execute:\n\n`php coroutine.php`\n\n`php coroutine-api.php`\n\nDocumentação completa da extensão: https://www.swoole.co.uk/\n\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmarcosmarcolin%2Fasync-php","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmarcosmarcolin%2Fasync-php","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmarcosmarcolin%2Fasync-php/lists"}