只显示主题贴

我说的是极端的情况,就是假设内存中的所有数据都被引用着而无法释放导致内存溢出,这时该怎么办,我目前想到的是做个守护进程(当java崩掉后重启服务),但不知道java中如何实现,二楼的思路不错,限制访问量直接防止该情况发生。另外想问下有没有办法让java强制回收有引用的对象,这样应该可以解决问题,另外看到《强烈推荐:著名社交网站LinkedIn的Java架构技术这篇文章里》(http://www.javaeye.com/news/2494)这段话:8。缓存通过C++实现,用JNI调用,LinkedIn选择C++而不是Java有两个原因: 1)尽可能的减少RAM的使用 2)垃圾收集暂停会杀 ...
  • 进入论坛 Java
相信大家在开发过程中一定碰到过内存溢出的情况。 关于解决方案有如下一些: 1.查找程序bug找出内存泄漏的地方 2.引用的包有内存溢出的缺陷或有冲突 3.病毒引起杀毒 4.打补丁 5.优化程序 6.加大堆栈大小 7.加内存 但是即使使用了上述方法仍然有可能会遇到内存溢出的情况,比如说机器总共能存2g,随着访问量的增加,内存总有可能会不够的,这时java垃圾回收机制就会开始回收内存,当回收了也不够时,java进程就会崩掉。 大家是如何防止或者处理这种情况的发生的呢? 比如说以前做windows应用程序有一个可以拦截程序异常的api可以在程序崩掉后拦截到并重启程序,但是java中该怎么做呢, ...
  • 进入论坛 Java
有道理,接口是不易变化的。
  • 进入论坛 Java
我和你碰到的问题一样,解决了吗?
也许这是个初学者的问题,但确是个蛮棘手的问题。 大家搭框架时如何寻找依赖包的,比如搭一个spring+jsf+hibernate的框架,是怎样去查找依赖包并加到lib路径中来的呢?我是查看官方文档一个个加的,已有组合的话比较简单官方包直接拷过来就行了,但是如果是一个新的就不得不一个拷过来,看看有没有冲突什么的,还有如果并非用到所有功能的话,也不需要所有的lib包,大家是如何查找的?有什么有用的工具可推荐下吗?用Maven还是要指明需要的是什么包什么版本的。
annotation可以简化配置,但是annotation扩展时,需要修改源文件,扩展性不佳。我认为annotation最大的好处就是配置默认属性,xml配置特定情况下的属性,两者结合就是RoR的核心思想——Convention over configuration,现在的spring,ejb3.0都是这样做的,当annotation和xml都配置时,xml优先于annotation。我觉得annotation用在这个上面非常好,就是配置默认属性后就不用改了,用于配置业务相关的还是算了,当然用面向方面的方式能解决通用的问题固然是最好的,但并非所有的东西都能抽取为一个方面。
  • 进入论坛 Java
对于服务层接口参数定义的定义一直有个疑惑,看到论坛上也有关于此的一个帖子,但是不够详细,希望能再和大家讨论下问题描述:服务层接口方法传参数列表进去合适(细粒度),还是传参数类进去合适(粗粒度)比如更新用户信息的接口如下void updateUser(String loginName,String name,String password)还是void updateUser(User user) 第一种方式 参数列表优点: 1 按需索取,效率高 2 传入参数明确缺点: 1 当参数发生变化时需要修改方法或者重载方法第二种方式 传pojo优点: 1 如果要添加一个字段的话比较方便,无需改动接口 缺 ...
  • 进入论坛 Java
不知lz是不是要这些例子http://blogger.org.cn/blog/more.asp?name=gareth&id=32005http://blog.csdn.net/shuailee/archive/2007/11/28/1905261.aspx
movingboy 写道引用对于第二种情况如果一个人既是学生又是老师那他的基本信息就要出现在两张表中,这样就出现了数据冗余。 你这是误解。如果真有这种情况,那么要么学生是老师的子类,要么老师是学生的子类。父类信息放在基本表中,子类扩展的信息放在扩展表中,后者以外键或主键与前者关联,不存在数据冗余 引用对于第三种情况如果一个人既是学生又是老师那他就要在t_people中出现2条记录,基本信息也出现了数据冗余。 这也是误解。这种情况下只有一条记录,它既包括学生信息,也包括老师信息,不管谁是谁的子类。 想想看,如果一个实体在同一个表中存在两条记录,那就是两个实体了! 看来你并未较好地了解Hiber ...
我说的是比较特殊情况,刚好那人就是学生又是老师,比如有老师管理和学生管理两个模块,新增时分别调用一次session.save(teacher);session.save(student);这时我上面说的第二种情况,t_people里就会出现2条同一个人的记录,除非teacher和student用组合代替继承把people设为一个成员变量,否则没办法解决问题。对于第三种情况,上面的情况一样出现两条记录。 第一种情况我一开始也以为可以实现只有一条记录,但是直到学jpa时用到了这样的例子才发现会有2条记录,产生这种情况的原因上面已经分析过了,示例代码如下 List list = session.fi ...
hrtc
搜索本博客
存档
最新评论