问题描述 我的需求是做一个短链接系统,domain.com/hU2c 这样的url可以直接访问短链接还原长连接的操作。 但是在做路由的时候遇到了问题,这是我目前的路由设置 use Webman\Route; Route::any('/api/shortURL', [app\controller\Api::class, 'shortURL']); // 默认根路径就去访问还原长链接 // Route::get('...
问题描述 因为webman所有请求都是使用同一个公共的redis对象连接,所以导致了同一个业务,比如1000个并发,全部multi后,只要其中有1个执行了EXEC,那么相当于1000个都EXEC了。 想要的效果: 所有的请求redis事务都是独立的,不同请求的exec并不会相互影响...
问题描述 这里写问题描述 webman框架写一个电商项目,项目里做聊天和新订单的消息提示。假设聊天同时在线人数几百万人以及新订单消息也很多,量都很大 我的思路是聊天一个端口,新订单一个端口,有给websocket开多端口的必要吗?没必要的开多端口的话,有没其他思路啊? 多端口我是这样写的: 我用的是gatewayworker连接websocket 配置config/plugin/gateway/process.ph...
问题描述 网址:https://github.com/walkor/GatewayWorker?tab=readme-ov-file 下面有两个案例,蝌蚪和chat,两个链接打开的都是 nginx 默认页。 而且这两个 demo 也无法下载!...
问题描述 使用json_encode格式化保存 $connection变量报错提示:JSON encode error: Recursion detected 程序代码或配置 ...... if ($request->header('upgrade') === 'websocket') { $connection->protocol = Websocket::class; ...
问题描述 这个组件创建 server 使用参考页: https://www.workerman.net/doc/workerman/components/global-data-server.html 初始化的时候需要两个参数,地址和一个端口,但是该组件的 client 的初始化却只要一个参数,实际也是地址和端口,建议将 server 的初始化参数也改为一个,好方便我用一个变量表示,现在搞得我要用两个变量表示,不太方...
问题描述 问题如图: 我只截取了api接口的信息,其实所有http请求都有两个 Content-Type,包括 html js css 图片文件等。 程序代码或配置 <?php use Workerman\Worker; use Workerman\Connection\TcpConnection; use Workerman\Protocols\Http\Request; use Workerman\Pr...
问题描述 请教下大佬,现在的执行方案是下发主题的时候,每次都需要实例一个phpmqtt 进行主题的下发;我想改为在每次下发的时候,thinkphp 业务代码调用wkmqtt客户端下发;有什么好的思路或者代码参考吗?谢谢!...
问题描述 按照Webman文档安装cache组件报错 程序代码 我的版本是PHP 7.4.33 composer -W symfony/cache ^5.2 psr/simple-cache 报错信息 执行composer报错: [Symfony\Component\Console\Exception\CommandNotFoundException] Command "symfony/cache" ...
https://www.workerman.net/plugin/157 接口流式响应,本地可以,服务器上不行,接口没错误信息和日志 扩展包安装了,也重启了 宝塔nginx+php8.1默认配置 ...
问题描述 这里详细描述问题 crazywhalecc/static-php-cli 已经支持了 apcu msgpack 扩展 https://static-php.dev/en/guide/extensions.html webman 打包还不支持...
问题描述 这里详细描述问题 组件webman/gateway-worker使用 外部连接:ws://域名:7272/socket.io/?EIO=3 使用接口连接是成功的 目前想用:http://域名:8092/socket.io/?EIO=3连接上面的ws 目前的Nginx配置: location /socket.io { proxy_pass http://域名:7272; proxy_set_header Up...
问题描述 WebMan有多个应用插件 plugin目录下,AB两个插件 如何实现B插件通过控制器直接渲染A插件view目录下的模板,以下两种方式都找不到文件,有没实现的方案。 ...
开发时使用了 pgsql mysql redis等数据库 当项目运行一段时间后 访问pgsql就会出现exit with status 11 访问mysql没有问题 访问redis没有问题 不知道是什么原因 用的是thinkorm 以为是webman的thinkorm没有把pgsql心跳加上 所以自己把pgsql类型加上了 但是还是没效果 查过问答 有说是扩展原因引起的 但是我除了装了一个redis之外就没装过别的...
问题描述 这里详细描述问题 线上项目 开始好的,运行一段时间后项目打不开(开始就用的这个端口,怎么后面占用了),重启、进程杀了重新打开也是下面报错,最后没办法换个端口就好了,但是没找到错误原因,后面不知道是否还会出现 报错信息 stream_socket_server(): unable to connect to tcp://127.0.0.1:8787 (Address already in use) in fi...
问题描述 这里写问题描述 3个websocket,如何让每一个Gateway的数据怎么定指定到哪个businessworker上来处理啊,在webman的config文件夹里怎么配置啊? 比如chatmsg的Gateway 指定到 'eventHandler' => common\sockets\ChatEvents::class, notice的的Gateway 指定到 'eventHandler' =...
我在workerman使用模型时会报错,在webman中能正常使用 $tcp_worker->onMessage = function ($connection, $data) { Department::get();//这里会报对象没有初始化 $connection->send('Received: ' . $data); ...
<?php namespace process; use Workerman\Worker; class WorkermanTcpService { public function onWorkerStart() { // 创建一个 TCP Worker 监听指定端口 $tcp_worker = new Worker('tcp://0.0.0.0:2345'...