一台机器4g缓存实现方式

有一台机器8G内存,需要有4g的缓存,怎么实现好,单个64JVM是否支持分配5G以上的内存,如果支持那么是否会带来垃圾回收很慢呢?
不需要支持分布式,有什么好办法?最好是在一个进程中?
1、最好使用Java本身缓存,但就怕数据量一大,垃圾回收太慢,况且一个jvm能否支持5G以上的内存
2、使用C或C++编写单独的缓存。
请各位给个解决办法?

很简单,配多个JVM,Java天生是网络,也就是是多个JVM。

使用分布式缓存比如Echache就能一步到位。

谢谢bang的回复,我想问一下,能否通过一个jvm来实现?我想用这种方式

2010年03月26日 10:12 "ngq"的内容
谢谢bang的回复,我想问一下,能否通过一个jvm来实现?我想用这种方式 ...

不建议这种方式,本来JVM内存有限制,当个JVM内存设置过大,GC压力也很大,因此最好配多个JVM。

如果用一个JVM, 那只能拿它当客户端, 用memcache做服务器, 想要多少内存都够

PS: 菜菜的回答一个

jvm本身好像是有限的吧!

在不同的版本上有不同的限制。

window jvm 最大好像是 1.2-1.5g

在linux 上 大约是 2.6 g 左右

用memcached做集群就可以吧。。。。。