0

我有一个时间关键的 JAVA 应用程序,它使用内存数据库(在我的例子中是 MySQL)来回答查询。

为了加快进程,我考虑过使用多个线程(以便多个处理器可以同时工作)。所以我的第一个问题是内存表是否可以在多线程环境中运行得更快。

如果第一个问题的答案是肯定的,那么我需要一些建议如何做到这一点。我尝试了两种方法:

  1. 我给了所有线程相同的 jdbc 实例。这种策略没有提高性能。

  2. 我尝试为每个线程创建新实例,并尝试将其连接到我之前创建的数据库:

    Class.forName("com.mysql.jdbc.Driver").newInstance(); conn = DriverManager.getConnection(url, username, password); this.executeQuery("USE myDatabase");

在第二个版本中,我收到一条错误消息:

com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException:未知数据库“rockit”

在单线程环境中,此时没有错误。

4

0 回答 0