Home
Document
Q&A
Video
Donate
Source Code
Code-Galaxy 云原生平台
Business
Swoole Tracker
Swoole Compiler
Login
Register
全部
提问
分享
讨论
建议
公告
开发框架
发表新帖
swoole做api时,如何抽离出基本信息,以避免频繁获取和传递
### 问题描述 下面使用伪代码 ### php和swoole版本,代码运行平台等相关信息 ### 相关代码 ```php // 伪代码 $uid = $request()->param('uid'); // 获取参数 $userInfo = model('User')->find($uid); // 获取用户信息 $orderInfo = model('Order')->find($order_id); // 获取订单信息 // 此时因为后面的逻辑比较多,并且可能频繁的使用一些基础信息 如用户信息 订单信息等,所以我想把$orderInfo 和 $userInfo 存储起来,方面后续调用 go(function(){ }); go(function(){ }); go(function(){ }); // 调用1 // 调用2 .......... ``` ### 你期待的结果是什么?实际看到的错误信息又是什么? 禁用了全局变量 在不传参的情况下, 我该如何实现在调用1 和 调用2 逻辑中时方便的使用$userInfo 和$orderInfo
发布于2年前 · 13 次浏览 · 来自
讨论
圣埃蒂安33
### 问题描述 下面使用伪代码 ### php和swoole版本,代码运行平台等相关信息 ### 相关代码 ```php // 伪代码 $uid = $request()->param('uid'); // 获取参数 $userInfo = model('User')->find($uid); // 获取用户信息 $orderInfo = model('Order')->find($order_id); // 获取订单信息 // 此时因为后面的逻辑比较多,并且可能频繁的使用一些基础信息 如用户信息 订单信息等,所以我想把$orderInfo 和 $userInfo 存储起来,方面后续调用 go(function(){ }); go(function(){ }); go(function(){ }); // 调用1 // 调用2 .......... ``` ### 你期待的结果是什么?实际看到的错误信息又是什么? 禁用了全局变量 在不传参的情况下, 我该如何实现在调用1 和 调用2 逻辑中时方便的使用$userInfo 和$orderInfo
赞
0
分享
收藏
提问
分享
讨论
建议
公告
开发框架
评论
2020-03-27
鲁飞
协程上下文,用协程id进行隔离
赞
0
回复
2020-03-27
桶
桶哥
wiki里有解决方案: https://wiki.swoole.com/#/coroutine/coroutine?id=getpcid https://wiki.swoole.com/#/coroutine/coroutine?id=getcontext
赞
0
回复
微信公众号
热门内容
- Swoole 4.8.10 已发布
- 云原生时代 PHP/Golang 项目如何实现微服务
- 异步风格的写法,如何同时开启http和websocket?
- 使用全局变量,一个worker进程同时执行多个onRequest协程问题
- HTTP服务器出发热更新,看到工作进程的worker_id也变了,但重新请求response的结果不更新
- 清空redis key
- PDO配置长连接在并发请求时候会报一个bug工作进程自动重启
- Swoole 团队云原生新项目 Code-Galaxy 介绍
- swoole 进程繁忙时候\Swoole\Process::kill($pid, SIGTERM)终止运行后出现一大堆僵尸进程
- 给官方建议 [SWOOLE LINUX 独立版本,加上PHP-event的扩展]
暂无回复的问答
- 关于openssl CURL WARNING swSSL_connect: SSL_connect(fd=69) failed. Error: error:141A318A:SSL routines:tls_process_ske_dhe:dh key too small[1|394]
- 请问那个一键协程化的代码是放外面还是set里面
- 多个模型如何进行事务异常回退?
- websocket开启wss报错
- 协程tcp服务器如何使用多进程?recv()方法接收信息,打印出来的pid一直是同一个。没用使用到多进程啊。