首页
下载
文档
社区
视频
捐赠
源代码
赞助商
AOT 编译器
AI 助理
商业产品
PHP AOT 原生编译器
Swoole-Compiler 代码加密器
CRMEB 新零售社交电商系统
登录
注册
全部
提问
分享
讨论
建议
公告
开发框架
CodeGalaxy
发表新帖
官方是否会支持mongodb协程化?
目前我们在项目里面大量用到mongodb,都是在task里面使用,但是发现每个task进程占用的内存特别高,初始的时候是130M左右,处理几次任务后会变成180M左右。开一百个task的时候,内存会猛涨,开得少又处理不过来。官方是否会支持mongodb协程化呢?
发布于6年前 · 27 次浏览 · 来自
提问
phper666
目前我们在项目里面大量用到mongodb,都是在task里面使用,但是发现每个task进程占用的内存特别高,初始的时候是130M左右,处理几次任务后会变成180M左右。开一百个task的时候,内存会猛涨,开得少又处理不过来。官方是否会支持mongodb协程化呢?
赞
0
收藏
提问
分享
讨论
建议
公告
开发框架
CodeGalaxy
登录
后参与评论
评论
2020-05-27
qzzm
支持来个官方的mongodb连接池
赞
0
回复
2020-05-29
jeristify
我认为不会,php-mongodb扩展无法被协程化,(从swoole存在到现在都无法解决的问题),未来会不会通过php-fpm代理的方式来实现? 这应该是个很好的补充方案
赞
0
回复
2020-05-29
Reasno
回复
jeristify
这样不会比task更快。
赞
0
回复
2020-05-29
Reasno
官方支持之前,可以尝试[GoTask](https://github.com/hyperf/gotask/)解决mongo问题
赞
0
回复
2020-12-29
GG
不支持吗,我看现在不是基本都支持协程了吗,我测试 ```php \Co\run(function () { go(function(){ echo 'mongodb'. \app\modules\promotion\models\UserCoupon::getOrderIdOf('5ee740851e663f56a6768d71'). PHP_EOL; }); go(function() { $data = [ 'appId' => '158', 'remark' => '手动发放', 'pointsType' => '1' ]; $return = \app\services\rpc\PointsRpcService::querySupplierPointsDetailData($data); echo 'rpc请求完毕' . PHP_EOL;//json_encode($return); }); go(function() { $k = 0; for ($i = 0; $i < 2; $i++) { $k++; } echo '终于计算完了' . $k . PHP_EOL; }); )}; ``` 得到的结果的确是异步的 ```php rpc请求完毕 终于计算完了2 mongodb2020061517335738117003665 ``` 是我理解有误吗,但是用鸟哥的rpc框架在这里面就没法协程了,必须是执行完才能到后面
赞
0
回复
2021-01-31
大
大苏打的苏打水
你这是什么东西???确定是mongodb?
赞
0
回复