[swoft logo](http://doc.swoft.org/img/v1/logo.png) swoft组件整理 dev-tools展示: 路由列表/事件列表 -> 没必要一个单独路由文件, 但是又需要一个地方可以查看到所有的路由 控制台应用: 同时只允许一个任务在跑(锁/自动删除 redis/incr 单进程 crontab) swoft: 异步io -> 协程io swoft 延迟收包 swoft http client 包单独使用 swoole 需要使用 co::sleep() swoft task 切换不同存储, 现在是 swoole table; 对 swoole task 压测, 查看 swoole table 的冲突情况 swoft更新时需要兼容api swoole taskWorker 无法使用协程 分布式服务: 腾讯云TSF: https://cloud.tencent.com/document/product/649 阿里云EDAS: https://help.aliyun.com/product/29500.html swoft: 正在更新, 会有一个系列, 方式会类似 D大 的 spring 系列教程 ☐ spring干货汇总 https://mp.weixin.qq.com/s?__biz=MzAxODcyNjEzNQ==&mid=2247484574&idx=1&sn=0984db0da3dc0efda956fa0aaeabe479 ☐ 翟永超 http://blog.didispace.com/ - spring - spring全家桶: https://gitee.com/yidao620/springboot-bucket -> swoft全家桶 微服务2.0技术栈选型手册 https://mp.weixin.qq.com/s/OloZhn2pwfIrOQit_8jefA ☐ swoft添加swaggerUI: spring / golang -> GraphQL http://graphql.cn swoft: ☐ 添加 tars 协议支持 ☐ 官网文案 process模块 ☐ 国际化: 官网 + github; 国际化规范, 参考 laravel symfony ☐ swoft: 从入门到精通 ☐ 我努力的方向还是希望能一起构建 swoole(php) 的社区, 能让 swoole 替换掉 fpm ☐ 如果我们的框架能在易用性上超过 fpm, 并且几乎无缝的从 qps 200 -> qps 1000, 我感觉这就是技术上很大的成就 ☐ 信奉的哲学是 20% 的时间可以解决 80% 的常见的问题, 时间充裕再用 80% 的时间解决剩下 20% 的「难题」 ☐ 使用 helper function, 用最简单的方式暴露最常用的方法, 以此来明显减少代码量 ☐ swoft: 10 分钟构建 swoft 官网 ☐ swoft解读系列教程 ☐ swoft 宣传: 开源中国 sf 头条 v2ex ☐ swoft redis: 连接池 延迟收包 默认ttl ☐ swoft cache: 使用 redis, 使用不同 db, 参考 laravel 实现 ☐ swoft 源码解读 - swoft-component:feature 分支 ☐ 阿里云服务: 中间件(分布式事务)https://www.aliyun.com/aliware 分布式事务 https://help.aliyun.com/product/48444.html 使用mq避免分布式事务 https://yq.aliyun.com/articles/10 ☐ weiboMesh [tars-PHP](https://gitee.com/mirrors/Tars) [msec](http://haomiao.qq.com/ [rainbond](https://gitee.com/rainbond/Rainbond) ☐ ali SOFA mesh https://mp.weixin.qq.com/s?__biz=MzA3MDg5MTEzMA==&mid=500751401&idx=1&sn=42e3773740d8ab01eccb92af342e1fd4 - https://github.com/micro/go-micro - swoft + 支付系统 aliyun serverless k8s 微服务的10个挑战和解决方案 1.数据同步 – 我们使用事件源代码架构来使用异步消息传递平台解决此问题。传奇设计模式可以应对这一挑战。 2.安全性 – API网关可以解决这些挑战。Kong非常受欢迎,并且是开源的,并且正在被许多公司用于生产。还可以使用JWT令牌,Spring Security和Netflix Zuul / Zuul2为API安全性开发自定义解决方案。还有企业解决方案,如Apigee和Okta(两步认证)。Openshift用于公共云安全的顶级功能,如基于Red Hat Linux Kernel的安全性和基于命名空间的app-to-app安全性。 3.版本控制 – 这将由API注册表和发现API使用动态Swagger API处理,动态Swagger API可以动态更新并与服务器上的使用者共享。 4. 发现 – 这将由Kubernetes和OpenShift等API发现工具解决。它也可以在代码级使用Netflix Eureka完成。但是,使用业务流程层执行此操作会更好,并且可以通过这些工具进行管理,而不是通过代码和配置进行维护。 5.数据过期 – 应始终更新数据库以提供最新数据。API将从最近更新的数据库中获取数据。还可以为数据库中的每个记录添加时间戳条目,以检查和验证最近的数据。可以根据业务需求使用可定义的驱逐策略来使用和自定义缓存。 6.调试和记录 – 有多种解决方案。可以通过将日志消息推送到异步消息传递平台(如Kafka,Google PubSub等)来使用外化日志记录。客户端可以在标头中为REST API提供关联ID,以跟踪所有pod / Docker容器中的相关日志。此外,可以使用IDE或检查日志在每个微服务上单独完成本地调试。 7.测试 – 可以通过模拟REST API或集成/依赖API来解决此问题,这些API不可用于使用WireMock,BDD,Cucumber,集成测试,使用JMeter进行性能测试以及任何良好的分析工具(如Jprofiler)进行测试, DynaTrace,YourToolKit,VisualVM等 8.监控 – 监控可以使用开源工具,如Prometheus与Grafana结合使用,创建仪表和矩阵,Kubernetes / OpensShift,Influx DB,Apigee,结合Grafana和Graphite。 9. DevOps支持 – 使用最先进的DevOps工具(如GCP,Kubernetes和OpenShift与Jenkins)可以解决微服务部署和支持相关的挑战。 10.容错 – 如果给定SLA / ETA的API没有响应,Netflix Hystrix可用于断开电路。 30个用于微服务的顶级工具 https://mp.weixin.qq.com/s/XmlmN2h7cCguJc6spBoD7w swoft: doc(积累问题) -> 源码解读 -> swoole4.1.0+解决问题 swoft 功能实战: http://doc.swoft.org/master/zh-CN/README.html swoft热更新太慢 查看包依赖关系