workerman
首页
问答
分享
手册
市场
商业
AI客服系统源码
聊天系统源码
Webman AI
物联网
赞助商
webman
搜索
+
发布
提问
分享
webman插件
webman应用
登录
注册
问答
为什么官方不在主目录下
进
行应用开
发
管理的插件化,而是插件目录下
进
行独立应用的开
发
管理?
#### 为什么官方不在主目录下
进
行应用开
发
管理的插件化,而是插件目录下
进
行独立应用的开
发
管理? 在插件目录下的应用开
发
,访问都要加个app/标识才可以识别插件应用,如何隐藏这个app/标识呢?在主目录下开
发
的独立子应用就不用这个标识符了,为什么不直接在主目录下
进
行应用开
发
管理的插件化呢?
问答
插件的安装机
制
提个小建议
#### 问题描述 在插件
二
开的情况下,以webman/admin为例子,如果手动调整了视图为blade,视图文件则.blade.php结尾,这时候删除掉原来的视图文件,而当另外一个同事首次开
发
时候,只是去掉了后可能又会存在以后需要同步插件的问题还有插件代码缺失问题(虽然webman/admin不会) #### 解决建议 希望可以新增composer配置去忽略安装问题或者和应用一样有个版本的升级机
制
问答
Webman中有两个gateway ,Gateway::sendToUid()有时
发
送
不成功
#### 问题描述 webman中开启了两个gateway,对应的register分别为:127.0.0.1:6238和127.0.0.1:7238 当用下面的方法
发
送
消息时,客户端有时收不到消息,
问答
GatewayClient包使用问题
#### 问题描述 目前使用laravel 框架 引入了 GatewayClient包 文档中描述:通过GatewayClient
发
送
的
数
据
不会经过Event.php,而是直接经由Gateway
进
程转
发
给客户端
问答
想用
gatewayworker
做物联网服务器,client_id自增会覆盖以前一直保持连接的client_id吗
最近在测试
gatewayworker
,突
发
奇想想知道这个client_id分配的,于是找到一个文件
发
现如下函
数
: ```php /** * 生成connection id *,也就是只差最后一个就马上要覆盖第1个设备,为了测试上面的猜想,我将上面的4294967295改为10,第1和第2个设备不断线,一直保持连接,用第3个设备不断的连接断开,当到了9的时候下一次断开连接,
发
现会覆盖掉第1个设备,但是第1个设备不会掉线,也就是现在有两个1,一个2,这个2向1
发
送
数
据
,
发
现原来一直连接的那个1不能接受信息,只能
发
送
信息,以此类推开始时我的假想,该服务器启动以后,当客户机很多的时候,长时间运行
问答
已知接受的
数
据
包是16
进
制
的
数
据
包,接受的
数
据
包长度已知是47字节,如何自定义通信协议
分享
webman 在http接口
发
送
websocket消息如何实现?
## 思路 ```text 使用Channel分布式通讯组件启动一个服务,用于夸
进
程通信 ``` ```text websocket端: 在websocket启动时通过监听启动事件,在启动事件实现 ChannelChannel逻辑:连接上Channel服务,订阅一个自定义事件用于接收来自http的通知 接收到http的通知后可以在websocket启动事件中获取到websocket 客户端连接对象,通过连接对象将消息推
送
到前端``` ```text http端: 连接上Channel服务,publish消息到上面定义的事件 ``` ###
进
程配置 !
问答
控
制
器里
发
送
队列正常 定时任务里
发
送
队列不执行
同一个队列 同一段代码 直接echo也确定执行了 但是在定时任务里面调用 \Webman\RedisQueue\Client::send() 就是不执行
问答
ai插件,怎么作为api 使用的时候如何处理返回消息
/app/ai/message/send 这个接口
发
送
了
数
据
后,返回的
数
据
php 怎么处理啊?感觉一个行一个好复杂
问答
workerman怎么实现一个
进
程一个端口监听不同的https网站
比如:一个
进
程,监听0.0.0.0:443地址,当有连接请求时,根
据
不同的域名,使用相对应的ssl证书去解密.就是先有一个socket,不设置ssl证书,等连接来时,根
据
不同的域名,给socket配置相应的证书, 不过我看https原理
发
现这样不通,https是先
进
性ssl握手,之后再将
数
据
返回到上层,
分享
webman 权限访问控
制
库 webman-permission
, 一个强大的、高效的开源访问控
制
框架,支持基于`ACL`, `RBAC`, `ABAC`等访问控
制
模型。当使用php-di后,开
发
者无需手动实例化`DatabaseAdapter`,webman会自动帮你完成。开
发
者不需要任何的初始化工作。# 适配器 'adapter' => webman\permission\adapter\DatabaseAdapter::class, #
数
据
库连接表通过权限认证'; } else { echo '对不起,您没有该资源访问权限'; } ``` ### 使用 Casbin Api 它提供了非常丰富的 `API`,以促
进
对 `Policy`
问答
redis-queue怎么批量投递
数
据
呢
比如一个表里有个3,5万个
数
据
遍历投递很慢 foreach ($users as $data) { $queue = 'sms'; Redis:
问答
如何在网关服务捕获Gateway::sendToClient()的
数
据
如何在网关捕获Gateway::sendToClient()的
数
据
问答
webman 自定义
进
程 bootstrap加载问题
## 问题 - 有些自定义
进
程不需要使用
数
据
库,当前是所有
进
程都会执行加载 ` 主 bootstrap.php ` 来连接
数
据
库造成不必要的连接占用 - 当前使用是自己修改了 ` support\bootstrap.php `, 新版本webman是否可以把老版本的这个功能加回来 ## webman老版本 - 在 webman v1.1.2 及之前版本中 自定义
进
程可自行设置需要加载的 `
文档
send
### 参
数
``` $data ``` 向服务端
发
送
的
数
据
,
数
据
大小不能超过65507字节(udp单个
数
据
包最大传输大小为65507字节),否则会
发
送
失败。new Worker('udp://0.0.0.0:1234'); $worker->onWorkerStart = function(){ // 1秒后启动一个udp客户端,连接1234端口并
发
送
字符串udp_connection->onMessage = function(AsyncUdpConnection $udp_connection, $data){ // 收到服务端返回的
数
据
}; $worker->onMessage = function(UdpConnection $connection, $data) { // 收到AsyncUdpConnection客户端
发
来的
数
据
问答
使用GatewayClient之后
数
据
库连接不会自动断开
每次有请求到接口中使用
数
据
库的地方都会新一个连接 使用完之后不会自动断开 达到最大请求
数
之后
数
据
库出1040 之前代码中没有使用gatewayclinet的时候没有出现这个情况
问答
【已解决】think-orm访问国产化
数
据
库异常
#### 问题描述 think-orm访问国产化
数
据
库highdb 出现sql语句报错,
数
据
库类型是pgsql 其中某个报错的sql语句:`SELECT admin_role.*,pivot.* ASdelete_time" IS NULL`; 大神们如何解决这种
数
据
库解析出来的语句报错? #### 程序代码 ##### 1. 调用位置: !
问答
GatewayWorker
这个框架登录鉴权该如何
进
行??
使用ci框架来写web页面,这个web页面和
GatewayWorker
建立websocket连接,那么怎么安全的确定是这个用户建立的连接?
问答
通过http协议post方式接收xml
数
据
解析不全
通过tcpdump抓包,真实传输
数
据
如下所示 ```xml Pragma: no-cache Content-Length: 334 Content-Type: text/xml <xml><ToUserName></EventKey> <MenuId>430813768</MenuId> </xml> ``` 但是通过var_dump($message)去打印,只有如下
数
据
array(1) { =>array(1) { ["CDATA=> string(0) "" } } 是不是workerman的http解析xml只是解析一部分
数
据
的原因?
问答
Workerman 源码中,主
进
程关闭端口复用;为啥会让主
进
程创建mainSocket
$worker->listen(); } ------------ 关闭端口复用疑问: 1、“服务端套接字”为什么不直接通过forkWorkersForLinux() 在子
进
程创建;要在主
进
程创建“服务端套接字”,通过子
进
程复
制
父
进
程mainSocket 呢?请问是因为,关闭端口复用情况下;主
进
程单独监听端口,不会报出“端口被占用错误”? > // Remove other listener.创建出来的子
进
程,不应该只复
制
master的“服务端套接字”,为什么还要unlisten()?\socket_set_option($socket, \SOL_SOCKET, \SO_KEEPALIVE, 1); 4、SO_KEEPALIVE 连接复用,这个配置参
数
指的是长连接
« 上一页
1
...
89
90
91
92
93
94
95
96
...
447
下一页 »
« 上一页
92
下一页 »
赞助商
+成为赞助商
请作者喝咖啡
×
🔝