关注!我一直都是直接连接数据库的,要向你学习
解决方案 »
- java中 \n 和 \r 什么区别?(为何在文本框中输入的有回车,而用gettext()取得文本框内容然后写入文件,会发现写不进回车?)
- (请教)vb加密 java解密
- Vector() 删除元素碰到的问题
- 1个题目,谁能告诉我怎么做
- 怎样实现判断同一个串口是否2、3线连通阿?急急急。要做不出来,5.1还得加班阿。
- 请问复制(CTRL+C)是怎么实现的
- 如何生成.exe文件???---可怜可怜吧!!!
- JTree展开后超出了JTree的框框,展开的东西看不到了,怎么加滚动条?
- 关于JAVADOC的
- 关于多线程的问题,为什么这个程序的增量为25,而不是1
- 在jsp中怎么判断固定IP是否再线
- 新手的问题,各位大侠请进来看看,急急 急 急
我在网上东找一点,西找一点。。
然后都是自己测试出来的。。
有点不理解,如查机器配置高就没有发现这种现像。我的机器是p3 866
换成p4 1.7就没有问题了
1. 内存到后来分配不足。
2. 换成P4就没事了。由于是恶性循环,所以也许机器只要稍好一点,问题就可得到好的改观了。 解决方案:
采用连接池,且设置一个连接池中连接最大数目(以机器性能来定),当所需连接数超过该数目时,不再创建新的连接,而是等待,直到有连接释放了,再分配给它。这样保证服务器的速度以及内存分配。
测试得出打开的连接不会释放,是永不释放,直到服务重起。。
因此创建过多少连接,就会有多少连接一直存在的,这是正常的。
当应用需要操作数据库时,池中若有空着的连接时,就分配(不是创建)一个给它,若没有则创建一个新的(池中便多了一个连接)给应用。
所以我的想法是:设置一个连接池中连接最大数目(以机器性能来定),当所需连接数超过该数目时,不再创建新的连接,而是等待,直到有连接释放了,再分配给它。这样保证服务器的速度以及内存分配。