workerman
首页
问答
分享
手册
市场
商业
AI客服系统源码
聊天系统源码
Webman AI
物联网
赞助商
webman
搜索
+
发布
提问
分享
webman插件
webman应用
登录
注册
问答
webman AI助手 冲了vip 作图无法
生
成
#### 问题描述 我在体验https://bla.cn 地址开了webman AI助手的会员,但是Midjourney作图一直出
不
来。 !
问答
webman用nginx做反向代理,首次请求特别慢
#### 问题描述 服
务
器环境处在专网内,对端口开放有严格要求,目前对外接口只开放80端口,因此选择了用nginx做反向代理,能正常提供对外接口服
务
,但是碰到一个问题,同一个访问地址,第一次请求返
回
特别慢,3-5秒,后面再访问同一地址,返
回
都是几十毫秒,比如: ?如果
不
通过nginx,直接启动服
务
监听80端口,既把nginx关闭,只使用webman,没有任何问题,所以可以确定问题是出在nginx上。#### 为此你搜索到了哪些方案及
不
适用的原因 百度了很多解决方案,没有一个跟我的一样。
分享
Workerman 自定义的协议如何解决粘包拆包
经过打印日志发现,两端接收到的包都有出现
不
是
事
先约定好的格式,这也就是 TCP 的粘包拆包现象。这个的解决方法很简单,网上也有很多,但是这里是想用自己实现的协议解决,暂且放到后面来说。但是这个传递到 PHP 服
务
端接收时,字符串前 4 个字节就是显示
不
出来,用过很多方法进行转换都取
不
出来。Input 方法 在这个方法里,可以在服
务
端接收前对数据包进行解包,检查包长度,过滤等。返
回
0 就将数据包放入接收端的缓冲内继续等待,返
回
指定长度则表示取出缓冲区内长度。# 粘包拆包产
生
现象 由于 TCP 是基于流的,且因为是传输层,在上层的应用通过 socket 套接字 (理解为接口) 通信时,他
不
知道传递过来的数据包开头结尾在哪。拆包测试 拆包模拟只需要将一个数据包分成两次发送,看看服
务
端接收的时候能
不
能显示或者说能
不
能按约定好的格式正确显示。 !
问答
webman通过代码restart
开发的)php start.php start -d 守护模式运行的,有些时候改了部分代码想直接通过访问某个控制器(webman项目内的一个链接)去实现php start.php restart -d的
效
果,以方便快速重启整个服
务
,目前是通过登录服
务
器去输入命令行实现重启,感觉挺麻烦的。
问答
[
不
懂就问]关于webman和workerman swoole的几个问题
1、转GO 2、基于常驻型的框架 3、PHP8 JIT 1、忽略了,并
不
是
不
想转型GO,而是从0开始自己玩玩之类的没问题,但公司基本都是PHP开发的,转GO后大家都没经验遇到BUG也
不
好解决,而且初识重申一遍,
不
是引战,业
务
场合是API接口开发,基本功能涉及鉴权->路由->redis->数据库。由于这里
不
是框架比较,所以详细的
不
说太多。如果觉得是1周时间学习swoole
不
够,那1天学习webman真的也
不
多。可能某些场景SWOOLE会超过webman,但我需求的场景,确实是webman高出swoole很多很多倍。如果是准备转型webman/workman,请问两者的区别是仅仅特定场合
不
一致吗?性能是差
不
多的吧? 针对PHP各版本,WEBMAN/WORKMAN是否有相关测试性能?如
生
产环境直接用 -d 启用,是否会有守护进程?
问答
php 调用一个 Worker的内部端口 要20秒才能返
回
状态
$connection) { $connection->send($data); } // 返
回
推送结果
问答
AsyncTcpConnection调用
不
到tast的workerman
$task_worker->onMessage = function($connection, $task_data) { //这下面的代码一直
不
会执行> ``` 调用代码: ```php // 与远程task服
务
建立异步链接,ip为远程task服
务
的ip,如果是本机就是127.0.0.1,如果是集群就是lvs的ip $task_connectiontask_connection, $task_result) { //这下面的代码一直调用
不
了msg) { //这里也没有报错 }; // 执行异步链接 $task_connection->connect(); ``` 代码如上,
不
知道哪里出问题了, 两个onMessage方法都一直
不
会被调用。
分享
这是一个简单的计划任
务
webmen插件
一个简单的webman插件:计划任
务
没什么依赖 下载解压到插件目录 执行命令安装:php webman app-plugin:install wz_task 没用数据库表 用得是文件 存的任
务
配置
不
行就放心删除插件文件 这样,应该是
不
会对你的项目有什么污染。 你需要在job文件夹下照着Test.php写类就行 Test.php是这样字: !
分享
这是一个简单的计划任
务
webmen插件
一个简单的webman插件:计划任
务
没什么依赖 下载解压到插件目录 执行命令安装:php webman app-plugin:install wz_task 没用数据库表 用得是文件 存的任
务
配置
不
行就放心删除插件文件 这样,应该是
不
会对你的项目有什么污染。 你需要在job文件夹下照着Test.php写类就行 Test.php是这样字: !
问答
请问在mvc中调用GatewayClient发送数据前,有方法判断GatewayWork是否正常吗?
比如没启动,或者registerAddress错误连接
不
上之类。在GatewayWork没启动时,调用GatewayClient发送数据会因为连接
不
上registerAddress产
生
致命错误,请问有什么方法可以先做判断吗?还是只能写在try里做异常处理?我这的场景是GatewayWork开启时,功能全部开启用户体验比较好;GatewayWork停止时少掉一些功能但
不
影响原来的mvc业
务
。
问答
php start.php stop命令无
效
?
调用了php start.php stop命令,发现已经启用的进程根本就没有关闭,什么情况?
问答
web-msg-sender
效
率问题
因为我要和其他php系统(MVC框架)一起用,我开始用的是phpsokcet.IO里的方式,发送消息速度特别快,后来发现这种方式没法对发送的消息进行一些自定义处理(需要读取数据库,查询头像啊,用户等级啊,等等)。后来换成后台推送的方式,发现后台推送的方式时间上有延迟,至少比phpsokcet.IO的方式延迟1-2s,请问是什么原因呢。 完整处理流程 页面点击发送按钮时发起ajax请求至web系统=>web系统处理消息请求(查询用户信息头像等级等,格式化消息为html格式)=>web系统通过php的curl方法发送格式化后的消息给workerman(http://域名:2121/")=>前台显示最新消息 请问是什么原因导致呢?
问答
定时器中间 ,做延时操作,用sleep好像
不
行,测试无
效
果
问答
怎么获取客户端真实IP?
php var_dump( $request->getRealIp(), $request->getRemoteIp(), $request->getClientIp() ); ``` #### 都
不
正确最后用了```php $region = explode(",",$request->header('x-forwarded-for')); var_dump($region[0]); ``` 宝塔服
务
器,在线等大佬
回
复
问答
gatewaywoker分布式部署?
现有AB两个站 在同一个服
务
器下 把gateway woker 部署到了A上 现在B可以与A连接握手成功 消息也可以发送过去 就是b接受
不
到a推送
回
来的消息 请问该怎么处理呢?
分享
🎉 PHP 社区重大新闻,我们已经开始开发官方 PHP MCP SDK!
> 💡趣味
事
实:MCP 的联合创造者 `David Soria Parra` 曾是 `PHP 5.4` 和 `5.5` 的发布经理,同时也是一位长期 PHP 核心贡献者。通过MCP,开发者可以轻松构建AI驱动的应用,让AI代理能够安全、高
效
地访问和处理数据,打破传统的信息孤岛问题。**跨平台兼容性**:SDK将支持PHP 8.1及以上版本,确保在
不
同环境(如Linux、Windows)下的稳定运行,同时支持STDIO和HTTP等多种传输方式。 4.* **初步测试**:在PHP 8.1环境下完成了STDIO传输的测试,验证了基本的客户端和服
务
器功能。官方PHP MCP SDK的开发
不
仅展示了PHP语言在现代技术领域的活力,也为开发者打开了与AI技术深度融合的大门。
问答
Gateway::getAllClientIdList() 在服
务
异常时会报错
接口返
回
关键信息如下: { "msg": "foreach() argument must be of type array|object, bool given", "code": 500
问答
新手求助,稳定运行了22天的socket服
务
,突然连接
不
上(超时)
socket服
务
使用(gatewayWorker3.0.7), gatewatClient3.0.0 稳定运行了22天, 今天突然出现大面积连接超时的问题。
问答
关于-webman,异步任
务
1.在swoole中,如果处理耗时等类似业
务
,可以将任
务
放入队列或者扔给taskWorker执行 2.在webman中,如果想执行类似业
务
,应该如何操作呢? 3.如果交给自定义进程,应该如何操作呢?
文档
路由
> **注意** > 暂时
不
支持group嵌套的路由
生
成url 例如路由: ```php Route::any('/blog/{id}', [app\controller\BlogController```php route('blog.view', ['id' => 100]); // 结果为 /blog/100 ``` 视图里使用路由的url时可以使用此方法,这样
不
管路由规则如何变化,url都会自动
生
成如果当前请求没有匹配到config/route.php中配置的任何路由,则`$request->route`为null,也就是说走默认路由时`$request->route`为null ## 处理404 当路由找
不
到时默认返
回
如果开发者想介入路由未找到时的业
务
流程,可以使用webman提供的
回
退路由`Route::fallback($callback)`方法。比如下面的代码逻辑是当路由未找到时重定向到首页。```php Route::fallback(function(){ return redirect('/'); }); ``` 再比如当路由
不
存在时返
回
一个json数据,这在webman作为api
« 上一页
1
...
106
107
108
109
110
111
112
113
...
481
下一页 »
« 上一页
109
下一页 »
赞助商
+成为赞助商
请作者喝咖啡
×
🔝