假设我创建了2个MySQLi对象$db1
和$db2
。
连接驻留在不同的服务器上(本地),数据库结构完全相同。我想使用相同的查询查询两个服务器。
我的问题是:
一些见解或指向正确的方向将不胜感激。
答案 0 :(得分:4)
您可以启动两个线程(一个用于查询每个DB),连接两个线程,然后处理结果。
PHP支持线程可通过以下扩展名获得:
http://sourceforge.net/projects/phpthreadlib/
https://github.com/kulikov/php-threads-manager
https://github.com/dlsniper/php-threads
https://github.com/unusorin/php-threads
我知道您声明要进行应用级分片。我认为(已经完成)应用程序级别分片是非平凡的。最初设置起来非常简单,但是当您需要添加新分片时很复杂(在应用程序联机时将密钥范围迁移到新服务器并非易事)。至少看看MySQL对分片和分区的支持:http://xeround.com/blog/2011/11/mysql-sharding-vs-mysql-partitioning