J2cache两级缓存原理
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两级缓存原理相关推荐
- j2cache两级缓存框架
j2cache介绍 j2cache是OSChina目前正在使用的两级缓存框架. j2cache的两级缓存结构: L1: 进程内缓存 caffeine/ehcache L2: 集中式缓存 Redis/M ...
- J2Cache 两级缓存中的 Region 到底是什么东西?
2019独角兽企业重金招聘Python工程师标准>>> 不时有人来询问 J2Cache 里的 Region 到底是什么概念,这里做统一的解答. J2Cache 的 Region 来源 ...
- 高性能两级缓存J2Cache
今天给大家推荐一个开源项目,J2Cache,一个很完善的两级缓存项目,作者是-红薯(开源中国CTO) 介绍 开源项目地址:https://gitee.com/ld/J2Cache/tree/maste ...
- java l1 l2缓存,Java 两级缓存框架
概述介绍 J2Cache 是 OSChina 目前正在使用的两级缓存框架(要求至少 Java 8).第一级缓存使用内存(同时支持 Ehcache 2.x.Ehcache 3.x 和 Caffeine) ...
- SpringBoot 集成 layering-cache 实现两级缓存调研与实践
前言 对于系统查多改少的数据,可以通过缓存来提升系统的访问性能.一般情况下我们会采用 Redis ,但是如果仅仅依赖 Redis 很容易出现缓存雪崩的情况.为了防止缓存雪崩可以通过 Redis 高可用 ...
- Springboot+caffeine 实现两级缓存
目录: 缓存.两级缓存 spring cache:主要包含spring cache定义的接口方法说明和注解中的属性说明 spring boot + spring cache caffeine简介 sp ...
- 【Caffeine进阶】Redis+Caffeine 两级缓存实战,性能爆缸
往期回顾 博主前面发过一篇[缓存框架Caffeine]初级篇,主要介绍了Caffeine的入门级使用!地址https://blog.csdn.net/Number_oneEngineer/articl ...
- Redis+Caffeine两级缓存
1.前言 在高性能的服务架构设计中,缓存是一个不可或缺的环节.在实际的项目中,我们通常会将一些热点数据存储到Redis或MemCache这类缓存中间件中,只有当缓存的访问没有命中时再查询数据库.在提升 ...
- 【MDCC 2015】开源选型之Android三大图片缓存原理、特性对比
from: http://www.csdn.net/article/2015-10-21/2825984 [CSDN现场报道]10月14日-16日," 2015移动开发者大会 · 中国&qu ...
最新文章
- html中本页面路径怎么写,HTML之绝对路径与相对路径
- ORACLE查询表数据占用存储空间大小
- java 输出编码_从代码看java输入输出中的编码和解码
- jQuery 事件 - ready() 方法
- flink运行原理_Flink运行架构剖析
- 修复MacBook Touch Bar(触控栏)无法正常工作的方法
- macbook pro启用root的方法
- 了解Python编程——Python学习(一)
- 小沙的长路(图论+数学)
- CentOS 5.2 LVM 新增加一块硬盘的方法
- xp系统总是弹出宽带连接服务器,XP系统电脑总是弹出拨号连接怎么办-系统城...
- 您的计算机配置已更改,你的硬件设置已更改请重启电脑怎么回事
- 小甲鱼C++快速入门——第四天
- 细思极恐!使用 AI 控制你的浏览器
- 用淘汰的手机做家庭监控
- 寻欢协议服务器,正式关闭服务器?官方客服电话已经无法接通!23年终要关站,曾是一代人逝去的青春...
- 谷歌 Pixel 手机阻止用户拨打报警电话
- java原始人生存繁殖的游戏,一款原始人生存繁殖的游戏
- 红帽环境+docker安装
- 中国电视企业逆势增长,助推中国制造走向世界
热门文章
- oracle 汉化包配置,Oracle Application Express安装与中文语言包配置
- IE6.0.2800.1106 和 IE6.0.2800.1106
- office提示“office未获得合适的许可,你可能是盗版软件的受害者。立即…”怎样解决?
- 水仙花数是指一个三位数,它的每个位上的数字的 3次幂之和等于它本身,请编程找出所有水仙花数。(例如:153 = 1^3 + 5^3 + 3^3 )
- python全栈开发中级_python全栈开发中级班全程笔记(第二模块)第一部分:文件处理...
- shell编程之正则表达式与总结(grep,egrep)
- TCGA数据下载教程:使用官方gdc-client软件下载
- 非全局安装npm,在项目目录下执行命令
- 利用sql语句删除重复数据
- 关于Angular 4 + ng-zorro 使用过程中遇到的问题