4
回答
Hazelcast定时清除数据问题
终于搞明白,存储TCO原来是这样算的>>>   

IMap接口提供的方法:

public void put(String key, CacheUser obj, long time, TimeUnit timeUnite)

得需要自己实现吗?就是想完成定时去清理指定key的数据!

举报
共有4个答案 最后回答: 2年前

hazelcast从一开始俺就参与了,当初很看好,也提交了不少issue,去年一冲动,想用它替换掉memcached,俺可是12台HP服务器,每台198G内存做的Hazelcast集群.可是当负载稍微高些集群就全部个屁了!结果网站全部假死,这个大坑啊!

--- 共有 1 条评论 ---
会飞的蝌蚪真假!好吧,简直不敢相信,我是新手。现在要定时清除指定key的数据,我起了个定时器,轮询数据,到时间就清除。今天刚看到,它本身就可以设定失效时间。不知道怎么写。求大神知道 2年前 回复

白石,hazelcast3.5+的版本是否你测试过。对于内存以及你的宕机能否贴出一下错误的日志(毕竟你机器的内存如此巨大),我有几个问题,想和你沟通一下:

1. hazelcast已经有healthmonitor等线程可设置一定的间隔时间查看到当前进程的一些开销情况,不知道你说的负载突然加大后集群宕机会出现什么情况。当然你可以使用mancenter(开发版仅限于两台机器,不过可以作为测试使用)

2. hazelcast对于内存的使用应该是企业版才会更好(high density memory),如果你要使用非堆内存来保存数据则需要实现它的storage才可以,我个人的经验是使用mapdb(但我没有测试过如此大的内存,也从未发现过集群不稳定情况)。

3. hazelcast3.4+以及hazelcast3.5中内部都启用了clusterQuorom还有backpressure等设置,这些都将有助于集群间复制的稳定性(不知道你是否实际测试过)

4. hazelcast引入了集群测试工具hazelcast-simulator,实际上很多的问题可以通过simulator来定位,不清楚你宕机的场景能否通过测试来发现。由于序列化会带来较大的开销,因此也可以考虑一些序列化的该工具来提升速度。


引用来自“jerryscott”的评论

白石,hazelcast3.5+的版本是否你测试过。对于内存以及你的宕机能否贴出一下错误的日志(毕竟你机器的内存如此巨大),我有几个问题,想和你沟通一下:

1. hazelcast已经有healthmonitor等线程可设置一定的间隔时间查看到当前进程的一些开销情况,不知道你说的负载突然加大后集群宕机会出现什么情况。当然你可以使用mancenter(开发版仅限于两台机器,不过可以作为测试使用)

2. hazelcast对于内存的使用应该是企业版才会更好(high density memory),如果你要使用非堆内存来保存数据则需要实现它的storage才可以,我个人的经验是使用mapdb(但我没有测试过如此大的内存,也从未发现过集群不稳定情况)。

3. hazelcast3.4+以及hazelcast3.5中内部都启用了clusterQuorom还有backpressure等设置,这些都将有助于集群间复制的稳定性(不知道你是否实际测试过)

4. hazelcast引入了集群测试工具hazelcast-simulator,实际上很多的问题可以通过simulator来定位,不清楚你宕机的场景能否通过测试来发现。由于序列化会带来较大的开销,因此也可以考虑一些序列化的该工具来提升速度。


之前的问题都不是问题
顶部