我在 centos(6.2final)、mysql 5.1.66 和 java jdk 1.6 上编程。
这段代码让我得到服务器的结果。
public ArrayList confirm(String key, String string) {
ArrayList tmp = null;
try {
PreparedStatement prep = null;
try {
prep = Local.prepareStatement("select distinct tags from tagDB where key=? and string!=?;");
} catch (Exception e) {
}
if (prep != null) {
prep.setString(1, key);
prep.setString(2, string);
int count = getRowCount(prep.executeQuery());
if (count > 0) {
tmp = new ArrayList();
ResultSet rs = prep.executeQuery();
while (rs.next()) {
tmp.add(rs.getString("tags"));
}
return tmp;
}
}
} catch (Exception e) {
e.printStackTrace();
}
return tmp;
}
服务器的数据库很好。我认同。
如果你想看mysql。我可以给你。
我的java日志如下。
16:2:46:450, turnaround time :26
16:2:46:484, turnaround time :23
...
16:2:47:665, turnaround time :23
16:2:50:136, turnaround time :71
16:2:50:246, turnaround time :106
...
16:2:53:22, turnaround time :54
**16:2:58:131, turnaround time :5098**
16:2:58:157, turnaround time :22
...
16:2:58:325, turnaround time :23
**16:3:3:358, turnaround time :5028**
**16:3:8:423, turnaround time :5027**
16:3:9:525, turnaround time :22
...
16:3:10:248, turnaround time :64
**16:3:15:288, turnaround time :5032**
有时它恰好延迟了 5000 毫秒。
所以我认为这是因为服务器的内存或缓冲区设置,比如java的GC。
所以我编辑了my.cnf(mysql的配置文件)。关于maxconnection、max_heap_table_size、max_tmp_table_size、thread_cache_size等的大小。(我未能调整 thread_cache_size 的值和一些表的东西。my.cnf 文件没有调整以上两个值......)
比什么都没发生。
mysql的慢查询日志什么都得不到。
...任何我不能做的更多。所以请..非常感谢阅读所有内容....
非常。祝大家有美好的一天。
附言。我的英语不好..我知道。对此也很抱歉。^^;