songlijian/php-apollo-client
Composer 安装命令:
composer require songlijian/php-apollo-client
包简介
apollo client for php
README 文档
README
php version >= 7.0
$ composer require songlijian/php-apollo-client
Features
- 支持apollo配置变更的实时获取
- 支持拉取配置后自定义的回调处理
Usage
客户端以cli的方式后台启动执行,支持apollo配置的适时获取,并将配置保存在指定的目录供应用程序读取解析
客户端示例代码
#!/usr/bin/env php <?php require 'vender/autoload.php'; // autoload use Org\Multilinguals\Apollo\Client\ApolloClient; //specify address of apollo server $server = getenv('CONFIG_SERVER'); // get server address from env //specify your appid at apollo config server $appid = getenv('APPID'); // get appid from env //specify namespaces of appid at apollo config server $namespaces = getenv('NAMESPACE'); // get namespaces from env $namespaces = explode(',', $namespaces); $apollo = new ApolloClient($server, $appid, $namespaces); if ($clientIp = getenv('CLIENTIP')) { $apollo->setClientIp($clientIp); } ini_set('memory_limit','128M'); $pid = getmypid(); echo "start [$pid]\n"; $restart = true; //auto start if failed do { $error = $apollo->start(); if ($error) echo('error:'.$error."\n"); }while($error && $restart);
配置管理
拉取的配置默认保存在脚本所在目录,每个namespace的配置以apolloConfig.{$namespaceName}.php的方式命名保存
Docker环境客户端自启动
在docker的启动脚本中加入启动代码,一般的php容器启动脚本是docker-php-entrypoint
if [ -f "/path/to/start.php" ]; then apollo_ps=$(ps -aux | grep -c "php /path/to/start.php") if [ $apollo_ps -eq 1 ]; then php /path/to/start.php & fi fi
songlijian/php-apollo-client 适用场景与选型建议
songlijian/php-apollo-client 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 25 次下载、GitHub Stars 达 0, 最近一次更新时间为 2019 年 04 月 29 日, 在 PHP 生态内属于活跃度较高的组件。
我们在过去多个企业项目中使用过 songlijian/php-apollo-client 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 songlijian/php-apollo-client 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
统计信息
- 总下载量: 25
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 1
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2019-04-29