1.关于开源中国的一些数据

2.OSChina的几种缓存策略

3.Ehcache缓存架构

4.实际运行存在的问题

5.混村系统选型时的考量

6.J2Cache--两级缓存框架(内存,磁盘)

每天 IP>50W

每天PV>300W

每天动态处理请求1000W

高峰期NginxStatus>15000

系统负载>50%

主服务器:

DELL SC1435->12G内存 AMD 2G*2/SATA*2

DELL R720   ->32G内存/Xeon E5520*2/SAS/RAID 1+0

CDN节点:

4个自建的CDN节点(电信、联通、移动、阿里云)

OSChina 的几种缓存策略

~对象缓存ID->object

~对象缓存List<id>而不是List<Bean>

~页面片段缓存

~页面缓存CDN(squid、varnish、Traffic Server)

缓存清除策略

1.Ehcache的自动清除(设置timeToLiveSeconds=3600)

2.程序清除

3.手工清除

Ehcache缓存框架

Ehcache是内存中的java缓存框架  特点:

内存中,速度快

两级缓存,内存跟磁盘

多区域(region)的缓存数据结构

缓存数据侦听接口

支持多种集群部署方式(JGroups/RMI/Ehcache Server)

实际运行的问题

高峰期重启导致的缓存雪崩

单节点对突发的攻击应付不足

多节点运行时缓存数据不同步

缓存系统选型

Ehcache集群方案的不足

集中式缓存的不足(redis,memcached)

是否可以取长补短?

J2Cache的设计思路

J2Cache的使用技巧

Ehcache的磁盘存储建立在内存中(/dev/shm/xxx)

尽量设置缓存永久性,通过程序进行更新

<cache name="pages" maxElementsInMemory="500" eternal="true" overflowToDisk="false"/>

j2Cache下一步计划

各级缓存的统计

使用HGET/HSET替代现有大哈希表的方式,暂时不考虑field批量删除性能地下

支持其他的缓存框架和服务

j2Cache获取方式:

http://git.oschina.net/Id/J2Cache

转载于:https://my.oschina.net/u/3646942/blog/1506708

J2cache两级缓存原理相关推荐

  1. j2cache两级缓存框架

    j2cache介绍 j2cache是OSChina目前正在使用的两级缓存框架. j2cache的两级缓存结构: L1: 进程内缓存 caffeine/ehcache L2: 集中式缓存 Redis/M ...

  2. J2Cache 两级缓存中的 Region 到底是什么东西?

    2019独角兽企业重金招聘Python工程师标准>>> 不时有人来询问 J2Cache 里的 Region 到底是什么概念,这里做统一的解答. J2Cache 的 Region 来源 ...

  3. 高性能两级缓存J2Cache

    今天给大家推荐一个开源项目,J2Cache,一个很完善的两级缓存项目,作者是-红薯(开源中国CTO) 介绍 开源项目地址:https://gitee.com/ld/J2Cache/tree/maste ...

  4. java l1 l2缓存,Java 两级缓存框架

    概述介绍 J2Cache 是 OSChina 目前正在使用的两级缓存框架(要求至少 Java 8).第一级缓存使用内存(同时支持 Ehcache 2.x.Ehcache 3.x 和 Caffeine) ...

  5. SpringBoot 集成 layering-cache 实现两级缓存调研与实践

    前言 对于系统查多改少的数据,可以通过缓存来提升系统的访问性能.一般情况下我们会采用 Redis ,但是如果仅仅依赖 Redis 很容易出现缓存雪崩的情况.为了防止缓存雪崩可以通过 Redis 高可用 ...

  6. Springboot+caffeine 实现两级缓存

    目录: 缓存.两级缓存 spring cache:主要包含spring cache定义的接口方法说明和注解中的属性说明 spring boot + spring cache caffeine简介 sp ...

  7. 【Caffeine进阶】Redis+Caffeine 两级缓存实战,性能爆缸

    往期回顾 博主前面发过一篇[缓存框架Caffeine]初级篇,主要介绍了Caffeine的入门级使用!地址https://blog.csdn.net/Number_oneEngineer/articl ...

  8. Redis+Caffeine两级缓存

    1.前言 在高性能的服务架构设计中,缓存是一个不可或缺的环节.在实际的项目中,我们通常会将一些热点数据存储到Redis或MemCache这类缓存中间件中,只有当缓存的访问没有命中时再查询数据库.在提升 ...

  9. 【MDCC 2015】开源选型之Android三大图片缓存原理、特性对比

    from: http://www.csdn.net/article/2015-10-21/2825984 [CSDN现场报道]10月14日-16日," 2015移动开发者大会 · 中国&qu ...

最新文章

  1. html中本页面路径怎么写,HTML之绝对路径与相对路径
  2. ORACLE查询表数据占用存储空间大小
  3. java 输出编码_从代码看java输入输出中的编码和解码
  4. jQuery 事件 - ready() 方法
  5. flink运行原理_Flink运行架构剖析
  6. 修复MacBook Touch Bar(触控栏)无法正常工作的方法
  7. macbook pro启用root的方法
  8. 了解Python编程——Python学习(一)
  9. 小沙的长路(图论+数学)
  10. CentOS 5.2 LVM 新增加一块硬盘的方法
  11. xp系统总是弹出宽带连接服务器,XP系统电脑总是弹出拨号连接怎么办-系统城...
  12. 您的计算机配置已更改,你的硬件设置已更改请重启电脑怎么回事
  13. 小甲鱼C++快速入门——第四天
  14. 细思极恐!使用 AI 控制你的浏览器
  15. 用淘汰的手机做家庭监控
  16. 寻欢协议服务器,正式关闭服务器?官方客服电话已经无法接通!23年终要关站,曾是一代人逝去的青春...
  17. 谷歌 Pixel 手机阻止用户拨打报警电话
  18. java原始人生存繁殖的游戏,一款原始人生存繁殖的游戏
  19. 红帽环境+docker安装
  20. 中国电视企业逆势增长,助推中国制造走向世界

热门文章

  1. oracle 汉化包配置,Oracle Application Express安装与中文语言包配置
  2. IE6.0.2800.1106 和 IE6.0.2800.1106
  3. office提示“office未获得合适的许可,你可能是盗版软件的受害者。立即…”怎样解决?
  4. 水仙花数是指一个三位数,它的每个位上的数字的 3次幂之和等于它本身,请编程找出所有水仙花数。(例如:153 = 1^3 + 5^3 + 3^3 )
  5. python全栈开发中级_python全栈开发中级班全程笔记(第二模块)第一部分:文件处理...
  6. shell编程之正则表达式与总结(grep,egrep)
  7. TCGA数据下载教程:使用官方gdc-client软件下载
  8. 非全局安装npm,在项目目录下执行命令
  9. 利用sql语句删除重复数据
  10. 关于Angular 4 + ng-zorro 使用过程中遇到的问题