steady-as-hill/single-service-server
Composer 安装命令:
composer require steady-as-hill/single-service-server
包简介
single service framework, base on swoole
关键字:
README 文档
README
说明(特色、局限性)
- 这个框架是用来实现内部接口服务的,不是做网站的(不考虑SEO,视图、丰富路由协议等)
- http协议,如果使用rawdata提交参数,只支持json格式
- 返回值固定json格式,需自行修改代码支持其他情况(没预留)
- 配置获取支持两种方式:本地路径或远程ini服务。
- 每个服务器都内置了个ServiceName用于运维管理,比如启动停止服务,比如重新获取刷新配置等。该ServiceName名为SteadyAsHill(虽然占用,但限制了只能127.0.0.1访问)。
微服务重在微字,要拆解。它不是万能的方案,特大特长的,就需要考虑其他的框架了,甚至换语言
名词解释
- uri中 /servicename/controllername/actionname, 每个servicename对应启动一个Server
- 关于模块名和服务名:物理磁盘路径中的名字是模块名,url中的名字是服务名,服务名可以在配置文件中更改,且可以多个(比如由于版本升级,需要servicename有所区别,但又需要兼顾旧版一段时间)
参看
其他
关于库文件加载,基本分三种情况:
- 模块专属类库(library目录),在run.php的入口文件通过设置->initAutloadLocalLibrary(true),可以在启动时全部预先加载,此时就不需要相应的autoload函数了
- 对于遵循psr-4规范的类库目录,可以在run.php的入口开头加入相关autoload,或通过server->initIncludePath()指定尝试搜索目录(仅支持一个目录)
- 其他像composer这种外部类库,在run.php的入口开头加入相关autoload
ServiceSample 下是几个小的Service骨架
能用,但不一定合适你的情况能直接用,都是些很简单示例性的小服务
使用前修改:
- 合并所有_config目录下的配置
- 确认或修改bin/run.php 里 SingleService/Server.php 的路径
- 确认或修改bin/run.php 里 initServiceModule 那里模块路径
- 确认或修改bin/start.sh 里 配置文件获取方式
- Email 发送邮件的
- HelloWorld 演示测试用的
- Ini 配置管理
steady-as-hill/single-service-server 适用场景与选型建议
steady-as-hill/single-service-server 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 14 次下载、GitHub Stars 达 0, 最近一次更新时间为 2018 年 06 月 27 日, 在 PHP 生态内属于活跃度较高的组件。
它主要适用于以下技术方向: 「service」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。
我们在过去多个企业项目中使用过 steady-as-hill/single-service-server 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 steady-as-hill/single-service-server 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
与 steady-as-hill/single-service-server 相关的其它包
同方向 / 同关键字的高下载量 PHP Composer 包推荐,方便对比选型:
A fast and intuitive dependency injection container.
Registry service.
swagger-php - Generate interactive documentation for your RESTful API using phpdoc annotations
Service auto install for Nette Framework
Structure for the Laravel Service-Repository Pattern
Base Skeleton for Laravel Application
统计信息
- 总下载量: 14
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 6
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2018-06-27