andriusgecius / redundant-db
高可用数据库集群的连接管理器
1.0.3
2020-07-29 14:43 UTC
Requires
- php: >=5.2.0
- ext-memcached: >=1.0
- ext-pdo: >=1.0
This package is not auto-updated.
Last update: 2024-09-19 09:44:32 UTC
README
高可用数据库集群的连接管理器
这是什么?
假设你有一个拥有2个API的分布式数据库集群。这两个API都指向同一个数据库。你应该连接哪个API?如果其中一个API突然失效,你会怎样?你能多快将所有数据库连接重定向到健康的API?
这就是RedundantDB类能帮你的!
主要功能
-
简单 - 只需提供连接信息,你就可以准备连接
-
智能 - 寻找到达API的最快/最短路径。如果当前API不可达,立即切换API
-
PDO - 成功连接后返回PDO对象
-
依赖 - 依赖于\Memcached和\PDO
开始使用
通过composer安装
将RedundantDB添加到composer.json配置文件。
$ composer require andriusgecius/RedundantDB
并更新composer
$ composer update
// Require compser autoloader file require 'vendor/autoload.php'; // Initialize $dbConfig = [ 1 => [ 'host' => 'HOSTNAME', 'port' => 3306, 'database' => 'DBNAME', 'username' => 'USERNAME', 'password' => 'PASSWORD', 'type' => 'mysql' ], 2 => [ 'host' => 'HOSTNAME', 'port' => 3306, 'database' => 'DBNAME', 'username' => 'USERNAME', 'password' => 'PASSWORD', 'type' => 'mysql' ], 'memc' => [ 'host' => 'localhost', 'port' => 11211 ], 'charset' => 'utf8' ]; $RedundantDB = new \RedundantDB\Connection($dbConfig); $connect = $RedundantDB->connect(); //Returns PDO
免责声明
此连接管理器仅与MySQL集群进行了测试。欢迎有不同高可用关系型数据库集群经验的开发者贡献!
许可
请随意使用!