有不有熟悉webman及workerman源码的同学,一起来集成h2及grpc

有不有熟悉webman及workerman源码的同学 一起来做集成h2及grpc到webman中,其实就是做适配...

小阳光 发表与 2023-05-18 714 浏览 3 回答
关于h2的ssh握手协商问题 @walkor

我正在实现http2协议,握手方式目前大多数客户端都是ssl协商上层协议,也就是告诉客户端服务器支持h2 在监听的时候要加以下设置 stream_context_set_option($this->_context, "ssl", "alpn_protocols", "h2, http/1.1"); 目前我直接改的worker类,在里面添加这个参数,但...

小阳光 发表与 2023-04-22 328 浏览 1 回答
实现http2

最近想在workerman上实现http2协议,封装了帧协议后没有驱动力,感觉实现了对现在也没什么用,有没有哪位大神想来试试看,我们一起来做这件事。...

小阳光 发表与 2022-03-10 892 浏览 1 回答
关于webman分布式链路追踪

https://www.workerman.net/doc/webman/components/arms.html 文档中为了做统计,其实是用了分布式链路追踪最简单的实践,这几天我在想,都做到这一步了其实还可以做更多,比如链路中加入redis , mysql, function, rpc, httprequest的链路,形成完整的链路追踪。在中间件或者方法的前置和后置方法切入从而实现针对方法的统计,或者使用插件...

小阳光 发表与 2021-12-08 2044 浏览 1 回答
关于webman文档中推荐的redis问题

按照官网配置redis,运行一段时间后出现链接断开问题, Next RedisException: Connection closed in /abc/vendor/illuminate/redis/Connections/PhpRedisConnection.php:406 出现此问题,我测试会在两种情况下出现 <?php #default_socket_timeout为默认值60 #第一种 $rds...

小阳光 发表与 2021-04-14 3319 浏览 5 回答
webman docker调优

这里用docker来跑webman https://www.workerman.net/doc/webman#/install?id=docker%e7%8e%af%e5%a2%83 我想问问 关于linux 系统调优 http://doc.workerman.net/appendices/kernel-optimization.html 这个是在docker容器里面配置还是在宿主机上面修改配置?...

小阳光 发表与 2021-03-29 3845 浏览 1 回答
老问题浮现,请求支援

老问题如下 https://wenda.workerman.net/question/6111 ps auxf 发现进程还存在 strace -ttp 8764 root@hecs-x-xlarge-2-linux-20200821114232:~# strace -ttp 8764 strace: Process 8764 attached 10:08:04.904878 wait4(-1, 0x7ffe68cc...

小阳光 发表与 2021-03-01 2407 浏览 1 回答
webman 监听问题

问题如下 早上起来上班,发现访问不了,发现8787端口已经没有监听。 但是php start.php status 如上图。 自定义的其他进程也已经不存在了。 重启后恢复正常访问。 正常情况如下 请问各位有没有遇到这样的问题,有可能是什么地方的问题。...

小阳光 发表与 2021-02-24 1894 浏览 3 回答
webman的路由建议写的全一点,比如分组功能就要自己去继承Route再扩展FastRoute的分组功能

webman的路由建议写的全一点,比如分组功能就要自己去继承Route再扩展FastRoute的分组功能...

小阳光 发表与 2020-12-01 2352 浏览 2 回答
webman的支付文档里面推荐的支付问题

webman的支付文档里面推荐的支付 https://www.workerman.net/doc/webman#/components/pay yansongda/pay 对传统fpm才合适可用,特别是输出响应这一块 还是我没有理解到?我看源码它的响应是直接echo ,设置header也是header函数做的,和workerman 不兼容。 Symfony\Component\HttpFoundation\Resp...

小阳光 发表与 2020-09-23 2389 浏览 2 回答
关于webman的异常和中间件问题

class CrossDomain implements MiddlewareInterface { public function process(Request $request, callable $next): Response { // 如果是options请求,不处理业务 if ($request->method() == 'OPTIONS') { ...

小阳光 发表与 2020-09-20 3888 浏览 2 回答
webman 获取用户ip的建议

~~ webman中 $request->getRemoteIp()取的是真实tcp连接 ip 如有代理 nginx 就不友好,不管头怎么设置真实ip都是nginx的真实ip 自己实现获取用户ip虽不难,但是,建议加入到 request 类里面 $request->header('X-Real-IP')~~...

小阳光 发表与 2020-08-31 3673 浏览 3 回答
webman 源码解读 求解答

最近在看webman的源码,我是用的 php-di容器。composer.json的自动加载机制并没有包含目录下的app目录,app目录下的controller 是在App类里面include,代码如下 public static function loadController($path) { foreach (\glob($path . '/controller/*.php') as $fil...

小阳光 发表与 2020-08-27 2163 浏览 1 回答
关于webman文档的疑问

https://www.workerman.net/doc/webman#/process?id=%e9%85%8d%e7%bd%ae%e6%96%87%e4%bb%b6%e8%af%b4%e6%98%8e 这里缺少一个配置services ,文档里面没有,这是看意思是想做进程内再开一个端口监听 不然start.php中 如下代码不会起作用 foreach ($config['services'] ?? [] as ...

小阳光 发表与 2020-08-22 3180 浏览 1 回答
TCP大端小端问题

workerman 需要处理大端小端问题吗?网络字节序是大端,如果服务器是小端,应该需要转换,这个转换是谁完成的呢?如果是workerman完成的我想看看workerman转换的代码,我没有看到源码有这个操作。还是说需要开发人员自己收到数据后转换?...

小阳光 发表与 2020-07-11 3034 浏览 2 回答
大家认为workerman有必要在程序中用数据库连接池吗? 讨论一下。

大家认为workerman有必要在程序中创建数据库连接池吗? 我认为workerman没必要 ,做一个断线重连即可。因为不是多线程,或协程,所以一个进程中从请求来临到请求结束都用一个数据库连接,下一个请求来临只要这个链接还有效还可以接续用,线程不会随着请求的结束而结束,连接池创建多个数据库连接只能是浪费。 php-fmp 更没有必要在程序中做连接池,因为不但一个请求是从上到下都不会有其他请求干扰(协程),也没...

小阳光 发表与 2020-06-26 4276 浏览 1 回答
thrift-rpc 有什么优势?传输二进制省带宽?各种语言通用性?

thrift-rpc 有什么优势?传输二进制更省带宽?各种语言通用性? 如果我用json-rpc来实现不是更好吗? json在各种语言都通用, 如果我传输的时候压缩一下,接收后解压一下带宽也很节约, 而且thrift 没有传统的json更易读,复杂的也更高。 求各位驳斥我的看法。...

小阳光 发表与 2020-05-31 2083 浏览 1 回答
关于异步tcp的问题

异步tcp我认为的是,tcp请求会做到异步化,tcp发起请求后,程序自己可以处理其他业务,tcp有结果了就执行回调函数,但是通过我的实验并不是。不知道是我代码有问题还是怎么回事,求解答。 $task = new Worker(); $task->onWorkerStart = function ($task) { $connection_to_baidu = new AsyncTcpConnection('...

小阳光 发表与 2020-04-12 1861 浏览 2 回答
定时器类 Timer 的疑惑,求大神解答

为什么定时器类 Timer 里面有一些 pcntl_alarm的函数,我不明白为什么要用这些函数,workerman的定时器我看并不依赖于pcntl_alarm,是用libevent扩展或者event扩展 或者超时来实现的毫秒级的定时器。 public static function signalHandle() { if (!self::$_event) { \pcntl_alarm(1...

小阳光 发表与 2020-04-07 3217 浏览 1 回答

小阳光

1467
积分
0
获赞数
0
粉丝数
2020-04-02 加入
🔝