分享个全协程的 PHP 的 httpclient

2018-06-13 23:29:53 +08:00
 gouchaoer2
https://github.com/swlib/saber

可以和 go 语言那样用同步简单的写法来写高并发 http 请求了

你只能在 php-cli 的 swoole 协程上下文中使用,实际的应用场景虽然是个大杀器,不过很难找到需要这么大流量的场景
2989 次点击
所在节点    PHP
8 条回复
gouchaoer2
2018-06-13 23:42:27 +08:00
这种基础设施除了 go 就 php 这 2 家了,在别的语言还在回调 /yield/promise/async 等等不那么完美的方式解决阻塞问题的时候,感慨 swoole 生态可以给 php 带来全协程这种基础设施
sagaxu
2018-06-14 09:34:55 +08:00
async/await 也很方便啊,本质都是用同步的风格写异步代码。go 是天生协程,node 的 promise 正好跟 await 可以无缝衔接,swoole 引入的协程,对代码和运行时侵入较大,类似改字节码的 java 协程 quasar 了。
gouchaoer2
2018-06-14 10:16:33 +08:00
@sagaxu 那玩意儿具有传染性,而且第三方库如果原来是阻塞的很难让别人给你改造一个异步的,js 又没这问题
zyh94946
2018-06-14 11:41:27 +08:00
很厉害呀 搞个看看
xjmroot
2018-06-14 11:59:27 +08:00
楼主辛苦!
gouchaoer2
2018-06-14 18:58:10 +08:00
@xjmroot 不是我写的,swoole 项目组的人写的,这个完成度不错,不错有这种需求的人太少了,没啥关注
sagaxu
2018-06-14 20:45:11 +08:00
@gouchaoer2 swoole2.x 已经自带了 redis,mysql,http 等各种 client 了
lyhiving
2018-06-22 13:21:20 +08:00
swoole 是很不错的

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/462925

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX