无聊撸了一个多进程助手组件【workbunny/process】

workbunny/process 我在做非常轻量的任务调度服务的时候刚好顺带撸了一下PHP多进程相关的内容,总共写了不到300行代码,能够帮助理解workerman是如何进行多进程处理的; 已经做了一些测试用例,把基本上常规的操作都覆盖了,随后还会补充更多的测试做覆盖; 另外说一下,这玩意儿其实可以用在workerman/webman里,当然这种操作比较骚(不建议,毕竟这是进程不是线程); 可以进行进程的嵌套for...

chaz6chez 发表与 2022-06-20 471 浏览 1 评论
event-loop的一些心得体会

🐇 最新更新于2020-06-02 前言 最早接触reactor模型的时候,应该是在参与一个叫zanphp项目的时候,他是一个类似swoole的php拓展项目,当然它们之间的故事我就不多说了,也有一些冲突和迷茫;在那个时间段的PHP发展还是很蓬勃向上的,那时候的滴滴、有赞、百度都有很多很多PHP项目,那时候的原生PHP有许多许多的瓶颈,所以国内那时候涌现了很多使用C来为PHP加速的开发者。 随着PHP慢慢发展,P...

chaz6chez 发表与 2022-05-28 882 浏览 6 评论
趣谈程序演变的过程

前言 我是一名后端开发工程师,目前从事后端开发有8年的经验,主要以PHP开发为主,期间有1年时间使用C语言进行PHP拓展的开发工作, 工作主要围绕辅助线程及有栈协程调度器;还有2年主要使用Golang做一些基础服务。 这篇文章我会用一些通俗的话来描述一些我所了解的程序的一些点,如 异步、同步、阻塞、非阻塞等;当然,我的经验不算丰富也可能有些理解错误的地方, 也希望能够指正我描述有错误的部分。 程序出生了 程序最开始就...

chaz6chez 发表与 2022-05-19 2331 浏览 6 评论
Nacos在我司的应用及SOA初尝

前言 我目前所在的部门主要是负责公司的数据相关的内容,可以理解为数据统计,做的工作其实也比较复杂,除了做一些数据统计分析业务之外,需要做一些基础服务的开发;我部门因为内部开发语言并不统一,在这种情况下,项目被动的分成了A\B\C\D等子项目,并没有将项目合并到一个项目中开发,在这种过程中,被动的接受了SOA这样的结构。 A项目是一个任务的调度分配服务,可以理解为一个大型的脚本/定时执行器,有点类似与现在比较流行的se...

chaz6chez 发表与 2022-05-13 3502 浏览 9 评论
关于workerman/webman项目的建议

webman刚出来的时候我阅读过webman的代码,也阅读过其他框架的代码,然后我自己撸了一个框架casualman,最早单纯只是为了玩,后面我把他运用在了公司部分项目的生产环境,已经稳定运行了半年以上了。 在这个过程中,结合我自己的一些个人习惯和我看到的其他框架的一些好的地方,我发现webman的代码在一些地方可以被建议: 入口文件start.php比较凌乱臃肿 其实本着可以用就没问题的思路,我觉得代码写成什么样,...

chaz6chez 发表与 2022-01-04 1077 浏览 1 评论
分享一个多功能的验证器,可以对数据进行转换、验证、过滤

这个项目由来很久了,大概至少有6年的历史,最早我工作的时候接触的一个项目叫struct,他可以把数组映射到对象属性上进行数据类型内容等判断或者过滤,也可以进行转换,也可以自行注册handle进行过滤、判断;后来我把这个项目重构了一下,适用在常驻内存的环境下,同时,这个项目也是我用在生产环境中的一个项目; 这个项目有点像残疾的注解,不过我觉得用起来还挺好的,所以推荐给大家 测试覆盖率应该超过了80%,常用的几种方案都是...

chaz6chez 发表与 2022-01-03 989 浏览 5 评论
关于workerman/rabbitmq项目的建议

我在使用该项目过程中,曾出现过timer无限制递增的情况,也出现过服务端主动踢出连接无法消费等问题,遂自己重写了一个amqp客户端; 后来我回过头观察分析workerman/rabbitmq源码的时候,发现了一些可以被建议的地方: 源码在如下位置会反复创建定时器 Client.php 160 - 170 行位置已经创建了一个持续的定时器 })->then(function () { ...

chaz6chez 发表与 2021-12-30 812 浏览 1 评论

chaz6chez

1704
积分
0
获赞数
0
粉丝数
2018-11-16 加入
🔝