服务注册发现
TTL、HTTP、TCP、gRPC 四种检查,按健康实例做负载均衡。
consul-php 完整覆盖 Consul HTTP API v1,把服务注册发现、配置中心、KV、Session、ACL 与集群运维收进同一套 PHP 客户端。
核心包只依赖 PSR 接口,HTTP 客户端、缓存、日志与事件分发器都可替换;Laravel、Hyperf、webman 等六种框架内置适配并自动发现。
一只只吃心跳、从不掉线的注册中心小助手:天线是健康检查心跳,胸前脉线代表服务状态,腰间挂着 ACL Token。
心跳还在,服务就不会掉线。注册、发现、配置、锁、权限与运维,都经由同一个传输层。
TTL、HTTP、TCP、gRPC 四种检查,按健康实例做负载均衡。
blocking query 长轮询,异常时降级轮询,恢复后自动切回。
会话创建、续约与销毁,配合 KV acquire 实现资源锁。
Token、Policy、Role 与 AuthMethod 全套管理。
Status、Operator、Snapshot 与 Event 等模块齐备。
Laravel、Hyperf、webman、ThinkPHP、Yii2、Yii3 内置适配。
四次关键发布,把模块、原生支持与框架适配逐一补齐。
补齐 Yii2 应用组件与 Yii3 DI 接入,六框架适配完成。
深度审计修复,API 模块扩到 18 个,内置 cURL 支持原生 PHP。
新增内置 cURL HTTP 客户端与 NativeService 注册、心跳、注销助手。
修复多语言图排版,补齐 artisan 命令与本地化资源。
点击图片放大查看。
先安装,再跑一个最小示例。
composer require erikwang2013/consul-phpuse Erikwang2013\Consul\Client\ConsulClient;
$client = new ConsulClient(['base_uri' => 'http://127.0.0.1:8500']);
$instances = $client->serviceDiscovery()->healthyInstances('user-service');
$dbHost = $client->configCenter()->get('app/db_host', 'localhost');鼠标停一停,它会换一种心情。