php微服务框架

我要开发同款
proginn11583992462022年11月25日
469阅读

作品详情

swf是一个基于swoole扩展实现的轻量级高性能的常驻内存型的API和Web应用服务框架。
swf的设计思想汲取了Tp5,Yii2,swooole-framework,easyswoole,swoft,hyperf等框架的优秀设计思想。并结合本人多年的技术积累以及实践经验,它不是最优秀的框架,但是这是一个适合学习swoole的框架。
2016年是我第一次接触swoole,当时swoole还是1.8.3版本,已经算是比较完善的异步通信网络扩展了。随着swoole版本的迭代,框架里的协程部分完全改写由底层来实现大大提高了性能,以及相关同步的组件一键协程化支持,使得异步编程更加简洁高效。基于当时公司需要处理高性能下的接口数据,统计,websocket等都使用swoole来实现独立的服务。
一次次的感受到了swoole的强大之处,很多以前php做不到的事,swoole基本都可以实现,提高了php竞争力,作为phper,当感受它的强大之后,觉得很兴奋,后来觉得有必要将理解到的知识点将swoole整合成一个更简单的框架,毕竟swoole是一个网络底层框架,实际使用起来还是有点困难的。在2018年8月份,我个人正式利用业余时间开始swf的编码工作,也算是个人的知识积累的过程。希望不久的以后将其开源出去,作为一个学习的swoole的框架非常不错。
swf的核心特征
支持composer的PSR-4规范
支持httpServer,websocketServer,tcpServer,udpServer
支持基于tcp实现的rpc服务采用JSON-RPC 2.0规范,开放式的系统接口,并提供协程化Rpc客户端组件
支持容器,组件IOC
支持热更新
支持mysql的协程连接池,redis协程池,rabbitmq连接池,RPC协程客户端协程池
异步务管理TaskManager,内存表管理TableManager,自定义进程管理ProcessManager,进程池管理PoolBase
支持底层异常错误的日志捕捉
支持自定义进程的redis,rabitmq的订阅发布,消息队列等
支持crontab
命令行形式封装启动|停止控制的脚本,简单命令即可管理整个框架
服务注册(consul)
GPRC的服务端和客户端
调用链追踪简单实践
配置中心,熔断限流等分布式下的组件未来主要实现
声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论