O que é webman
Webman é um framework de serviços de alto desempenho construído com base no Workerman, integrando vários módulos como HTTP, WebSocket, TCP e UDP. Através de tecnologias avançadas como memória residente, corrotinas e pools de conexão, o Webman não apenas supera os gargalos de desempenho do PHP tradicional, mas também expande significativamente seus cenários de aplicação.
Além disso, o Webman oferece um poderoso mecanismo de plugins, permitindo que desenvolvedores integrem e reutilizem rapidamente módulos de funcionalidade desenvolvidos por outros. Quer você esteja construindo sites, desenvolvendo interfaces HTTP, implementando comunicação em tempo real, montando sistemas de Internet das Coisas, ou desenvolvendo jogos, serviços TCP/UDP, serviços de Unix Socket e muito mais, o Webman consegue lidar facilmente com isso, demonstrando desempenho e flexibilidade excepcionais.
Nota
Este documento é para a versãowebman v2
. Se você está utilizando a versão v1, consulte a documentação do webman v1
Conceito do webman
Oferecer a maior extensibilidade e o melhor desempenho com o núcleo mais minimalista.
O webman oferece apenas as funcionalidades mais centrais (roteamento, middleware, sessão, interface de processo personalizada). Todas as outras funcionalidades reutilizam o ecossistema do composer, o que significa que você pode usar os componentes de funcionalidade mais familiares dentro do webman, como no caso de bancos de dados, onde o desenvolvedor pode optar por usar o illuminate/database do Laravel ou o ThinkORM do ThinkPHP, além de outros componentes como o Medoo
. Integrá-los no webman é uma tarefa muito fácil.
O webman possui as seguintes características
-
Alta estabilidade. O webman é desenvolvido com base no Workerman, que sempre teve poucos bugs e é um framework de socket de alta estabilidade no setor.
-
Desempenho super alto. O desempenho do webman é de 10 a 100 vezes superior ao dos frameworks php-fpm tradicionais e cerca de 1 vez melhor do que frameworks como gin e echo do Go.
-
Alta reutilização. Não é necessário modificar, podendo reutilizar o ecossistema existente do composer.
-
Alta extensibilidade. Suporta processos personalizados, podendo realizar qualquer tarefa que o Workerman pode executar.
-
Extremamente simples e fácil de usar, com um custo de aprendizado muito baixo; a escrita de código é semelhante à de frameworks tradicionais.
-
Suporta empacotamento binário, permitindo execução direta sem necessidade de ambiente PHP.
-
Utiliza a licença open source MIT, que é muito permissiva e amigável.
Endereço do projeto
GitHub: https://github.com/walkor/webman Não economize suas estrelas!
Gitee: https://gitee.com/walkor/webman Não economize suas estrelas!
Dados de testes de desempenho de terceiros
Com operações de consulta a bancos de dados, o webman alcançou uma taxa de através de 390.000 QPS em uma única máquina, cerca de 80 vezes superior ao framework Laravel com arquitetura php-fpm tradicional.
Com operações de consulta a bancos de dados, o webman apresenta desempenho cerca de 1 vez superior ao de frameworks de web em Go de tipologia similar.
Os dados acima são provenientes de techempower.com