使用JDBC Java连接多个MySQL服务器

时间:2014-10-13 09:52:58

标签: java mysql jdbc

我有10个不同的MySQL服务器,具有相同的架构设计。 现在我必须查询每个服务器并在java中合并结果,这与SQL中的UNION ALL相同。

所有数据库服务器都返回相同的数据格式,我尝试了所有服务器的顺序调用,但需要更多时间。

如何加快这个过程?

方案

enter image description here

1 个答案:

答案 0 :(得分:0)

这可能是你的顺序逻辑:

  1. List<YourObject> arr = new ArrayList<YourObject>();
  2. X = 1。
  3. 从X中选择*。
  4. 将结果添加到arr。
  5. X ++,直到没有更多的数据库。
  6. 我可以想到一个可能消耗更少时间的解决方案:

    这个逻辑怎么样:

    你可以将顺序剪切成线程。每个线程将连接到不同的服务器。 一旦你有服务器的结果锁定arr并添加结果。

    1. 为每个服务器创建一个连接线程。
    2. 运行线程以连接并等待结果。
    3. 每个传入结果都会添加到合并数组中。 (别忘了锁定全局结果数组)。