tutu-ru / lib-etcd-config
lib-config的etcd实现
1.0.0
2019-01-13 22:38 UTC
Requires
- php: ^7.1
- psr/simple-cache: ^1.0
- tutu-ru/lib-config: ^2.0
- tutu-ru/lib-etcd: ^1.0
Requires (Dev)
- cache/array-adapter: ^1.0
- cache/simple-cache-bridge: ^1.0
- phpunit/phpunit: ^7.4
- squizlabs/php_codesniffer: ^3.3
This package is auto-updated.
Last update: 2024-09-28 09:54:28 UTC
README
存储在etcd中的配置实现。可以单独使用,也可以与tutu-ru/php-config库一起使用,通过TutuRu\Config\ConfigInterface
接口。
初始化和使用
配置在创建对象时立即加载。
创建配置
use TutuRu\EtcdConfig\EtcdConfig; $config = new EtcdConfig('/config/root/node'); $config->getValue('some.node');
创建具有60秒数据缓存的配置
use TutuRu\EtcdConfig\EtcdConfig; use Cache\Adapter\Apcu\ApcuCachePool; use Cache\Bridge\SimpleCache\SimpleCacheBridge; $cache = new SimpleCacheBridge(new ApcuCachePool()); $config = new EtcdConfig('/config/root/node', $cache, 60); $config->getValue('some.node');
创建支持运行时更改的配置
use TutuRu\EtcdConfig\MutableEtcdConfig; $config = new MutableEtcdConfig('/config/root/node'); $config->setValue('some.node', 'new value');
迁移
use TutuRu\EtcdConfig\EtcdConfigMutator; $configMutator = new EtcdConfigMutator('/config/root/node'); $configMutator->init(); $configMutator->setValue('some/node', $value);