hypef 和 webman 哪个更加平稳

我打算重构一下项目,想问下,hypef 和 swoole 我没咋用过,我 webman 倒是用过,希望有 2 个都用过的,来说一下优缺点,我更好的选择。谢谢

《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
游离不2
最佳答案

应该考虑亮几点:

  1. 你需要的是什么?如果 Swoole 生态内都能满足(支持协程),那建议用 Hyperf。
  2. 考虑社区活跃。Hyperf 相比 webman,要活跃些,对于反馈的问题还是比较积极响应,而 webman,我之前尝试联系开发者,但是联系不上。
  3. 追求什么?如果是语言层面的性能,可以考虑转 go,如果是开发效率和灵活,还是推荐 Hyperf,官方支持注解、切面等功能。
1年前 评论
ononl 1年前
Kristiano 1年前
ljnchn 11个月前
她来听我的演唱会 1年前
游离不2 (作者) 1年前
游离不2 (作者) 1年前
晏南风 1年前
讨论数量: 41
翟宇鑫

我也想考虑一下常驻框架,有经验的可以和 Laravel 对比一下优缺点吗? :kissing_heart:

1年前 评论
Junwind 1年前

估计 webman 好些

1年前 评论
王小大 1年前
探索者 (作者) 1年前
王小大 1年前

如果你的应用是一个管理端或者综合应用,只是想提高运行速度,建议 webman ,开发体验和 tp 类似,门槛相对较低,你应该有体会 如果是 api 应用或者想通过协程处理一些东西,则可以尝试 hypef ,依托于 swoole,hypef 的特定更多,毕竟基于 swoole 扩展,但是开发门槛较高

1年前 评论
中文 (楼主) 1年前

webman 可能好上手一点,hyperf 要更多理解一些东西,然后看哪个星多,旁边人用的多

1年前 评论
游离不2 1年前

webman 吧,至于为什么,我只用 webman :joy:

1年前 评论
梦想星辰大海

hyperf 的使用上,说说我遇到的一个难点:毕竟有时候会有没法协程运行的代码,比如 ldap 扩展,用 task 进程封装后,worker 进程可以调用,但是用户自定义进程没法调用;这个时候代码会退化成非协程模式,又比如 mongodb,即使你不在自定义进程使用 task 封装的 mongodb 调用,但是随着业务变大,你使用起来终究是有点难受的,因为你得经常去 task 做封装。综上,我的建议是 webman。

1年前 评论
zds

各有优点

1年前 评论

webman 开箱的有点是开箱即用。

1年前 评论
游离不2

应该考虑亮几点:

  1. 你需要的是什么?如果 Swoole 生态内都能满足(支持协程),那建议用 Hyperf。
  2. 考虑社区活跃。Hyperf 相比 webman,要活跃些,对于反馈的问题还是比较积极响应,而 webman,我之前尝试联系开发者,但是联系不上。
  3. 追求什么?如果是语言层面的性能,可以考虑转 go,如果是开发效率和灵活,还是推荐 Hyperf,官方支持注解、切面等功能。
1年前 评论
ononl 1年前
Kristiano 1年前
ljnchn 11个月前
她来听我的演唱会 1年前
游离不2 (作者) 1年前
游离不2 (作者) 1年前
晏南风 1年前

webman 吧,基本没学习成本,tp 系 laravel 系组件任意选择,性能还贼高。 社区活跃,有什么问题好解决,作者天天吭哧吭哧在社区回复小白问题

1年前 评论

laravel 就可以,要性能的部分直接用 go 写

1年前 评论

我们用的 webman, 已上线 3 个项目了

1年前 评论

laravel 就可以,要性能的部分直接用 rust 写模块就行

1年前 评论

我的 PHP 项目都是 Laravel 或者 Hyperf

1年前 评论

hyperfwebman 性能上不分伯仲,最大的区别就是工作模型设计不同,进而带来的一些开发设计上不同。

  • webman 属于事件驱动非阻塞性 IO 设计,fpm 相关生态库,很多可以复用,开发成本相对来说并不高。
  • hyperf 属于异步 IO 设计,采用协程来实现,很多库需要自己实现,生态相对来说差一点,在开发上需要避免请求上下文的影响,因此对开发者的水平有一定的要求。
1年前 评论

hyperf 整体封装不如 laravel 人性化切片,进程的封装大量注解的引入(当然也可以不用注解)有不少学习成本。如果是为了协程,不如用 laravel 的 octane 包了。

1年前 评论
美国总统 1年前
cevin (作者) 1年前
lovewei 1年前
cevin (作者) 11个月前
李铭昕

最新版的 workerman 好像支持 swoole 了,可以试试。

不过,如果精通 Laravel 的话,还是优先用 Hyperf 会比较好,毕竟是专门为协程设计的,ORM 用法基本一致。

1年前 评论

从学习角度就要用 hyperf 市面上很多都在用 hyperf, 其次 hyperf 底层用 c 写的 性能没问题

11个月前 评论

1、协程:hyperf 有,webman 没有. 2、composer 生态:hyperf 有些没法用,webman 基本可以用所有 composer 生态。 3、上手:hyperf 比 webman 难一些

11个月前 评论