JFinal 两级缓存问题

这两天没事看了下,两级缓存的,在想JFinal 虽然提供的 echace 和redis的插件,然后两个插件简单处理下也能实现两级缓存的效果,但只能是单版本的,在集群环境下,显然是满足不了,另外又看了下osc的j2cache两级缓存的框架,这框架也曾被人扒过,就目前看还是比臃肿依赖包也不少,建议JFinal集成两级缓存满足集群或分布式集群环境下对缓存需求,提供极速的解决方案

注:JFinal目前提供的支持上面也提到弊端,经组合后只能满足在单机上应用,假如实现两缓存,ecahce、redis二合一,通过实现配置是否开启两级缓存,灵活实现单机对缓存需求的同时又满足分布式集群对缓存的需求。

评论区

JFinal

2017-05-28 10:45

jfinal 定位于 MVC + ORM 框架,所以在添加功能时要保持克制,添加的功能在后续会一项非常沉重的负担,因为你需要一直维护与升级

能做好 MVC + ORM 就已经很不错了,以前添加的 redis 都有点冲动想移除出去,因为底层的 jedis 本身就做得不好, jfinal 对 jedis 进行封装以后也并不是那么好

JFinal

2017-05-28 10:45

专业的人,做专业的事,各有所长,jfinal 会尽可能集中精力做好自己的定位

EATI001

2017-05-28 11:22

@JFina 提出这个需求刚需,想想稍大的项目基本个都是集群环境,在同行框架中基本上都有自己的两级缓存实现 ,JFinal在这方面欠缺的确有些遗憾。^_^!!

EATI001

2017-05-28 11:26

@JFinal 展望当前项目稍大点的基本上是集群环境,缓存又是项目标配,如果单机运行的项目基本上个人或小规模项目跑跑。

EATI001

2017-05-28 11:32

@JFinal JFinal定位于MVC+ORM是没错,但缓存这个跟ORM有必然的关系,因为缓存运用直接影响到ORM数据库操作提速,提高性能,但缓存这个东西和ORM是相符相成的,形成有效的互补。

EATI001

2017-05-28 11:39

@JFinal JFinal ORM是对JDBC的极简封装,但大家都知道从数据库直接读取数据远没有将数据缓存到内存中读取来得快,单机服务器性能必然没有集群服务处理数据性能高。

JFinal

2017-05-28 12:04

@EATI001 时间太有限了,只能做这么多了

EATI001

2017-05-28 12:28

@JFinal 理解理解,的确个遗憾,现在生态的开源的项目基本上都单机应用,暂时没有集群应用。包括海哥的那新项目也是。

lyh061619

2017-05-29 23:09

@EATI001 j2cache挺好用的呀,当然JFinal官方提供集成插件可能更有说服力,osc社区上有人搞过。http://www.oschina.net/question/133989_228253。

netwild

2017-05-30 10:52

@EATI001 这个确实是刚需,我现在的做法是自己写了一个CacheKit,优先使用ehcache,没有命中再使用redis。同期待JFinal出一个集成缓存插件

EATI001

2017-05-31 08:59

@netwild 是的确实如你说的这样我才提出这个需求的。

EATI001

2017-05-31 09:01

@netwild 另外你这也只能在单机跑,集群环境下应该不行的吧?

EATI001

2017-05-31 09:23

@netwild 这个如果官方提供个解决方案,这个更好了,因为现在社区上看得让眼花撩乱,做产品的肯定是即拿即用,还得各种研究后才决定要用,这个花费很多时间,最终是否合适还不一定有保障先。^_^

netwild

2017-05-31 09:31

@EATI001 我的项目没那么大,缓存层还不需要集群,服务层集群的话,ehcache还没实现,redis是tcp/ip的,天然支持

Dull

2017-06-01 18:19

@EATI001 自己用的redis

热门反馈

扫码入社