[小小的讨论],静态类的优缺点!

mind_1220 2005-10-18 11:35:15
RT,
公司网站老是出现问题,数据库锁表+访问速度慢。
大家推测了很多的原因,也解决了不少的问题,
但是我们的许多类都是用的静态类,
我不知道这样是不是引起问题的所在,
请各位发表一下自己的观点。

我认为:
缺点:
1、静态类有资源瓶颈的问题;
2、线程安全问题
有点:
节约内存
...全文
427 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
newste 2005-10-19
  • 打赏
  • 举报
回复
同意 inexplicable(inexplicable的观点,估计没有采用连接池技术,所以效率低,反映速度慢,
要不就是驱动选的不对,
一些 很简单的 Sql比如(select * from book order by comedate desc)就会锁表
有可能是你数据出现了非法数据,看看有没有数据超出了你规定的字段长度;我觉得写成静态的区别不是很大
mind_1220 2005-10-19
  • 打赏
  • 举报
回复
呵呵
我们当然用的是 Weblogic的连接池了。
我们的Apache和Weblogic在以他服务器上,但是Mysql在另外一个数据库上。
实在不明白锁表的原因。
有谁有这方面的经验吗?
wdman 2005-10-19
  • 打赏
  • 举报
回复
估计是只有一个数据库连接,如果使用weblogic的话,它本身提供了连接池的功能,设置一下就可以了。
liwei_0223 2005-10-18
  • 打赏
  • 举报
回复
顶,先关注一下
inexplicable 2005-10-18
  • 打赏
  • 举报
回复
如果发现是数据访问影响速度的话,//只有一个connection
可以试试看connection pool

如果你的static class 提供的方法都是synchronized 的话。
确实可能因为mutual exclusion 导致性能下降。

可以从两个方面提高效率:
1) 尽量减小 synchronized region
2) 使用multi-threading

至于static class 或者none static class 和你要提高效率的关系不大。
因为none static function 也许要同步。
mind_1220 2005-10-18
  • 打赏
  • 举报
回复
自己顶一下
mind_1220 2005-10-18
  • 打赏
  • 举报
回复
谢谢各位的回答,
我希望大家可以说清楚一点,
我应该怎么做?
顺便问一下
1、Weblogic+Mysql
一些 很简单的 Sql比如(select * from book order by comedate desc)就会锁表
为什么呢?
2、我们的访问量不是很大,一天2000个ip左右,用静态类的好处是什么?仅仅节约内存吗?
非静态变量呢?
treeroot 2005-10-18
  • 打赏
  • 举报
回复
完全没有根据!
我觉得静态类和一般的类几乎是一样的,但是它可以是private
也就是说很容易隐藏起来。另外就是它的一点形式上的区别,Outclass.InnerClass()
网络精灵 2005-10-18
  • 打赏
  • 举报
回复
up

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧