亿级流量场景下,大型缓存架构设计实现,你知道吗?

三个重要的标准:
---大型缓存架构中需要首先说一下:
海量数据:支持海量数据缓存,支持大规模数据;
高并发:在亿级QPS的场景下,可以做到满足业务需求;
高可用:表示redis可以做到并且尽可能的做到可以持续使用 。比如全年保持99.99%的时间处在可用状态,除非遇到各种断电等特殊灾害;
-------------------------------------------------------------------------------------------------------
商品详情页的系统架构介绍-->两种设计类型:

亿级流量场景下,大型缓存架构设计实现,你知道吗?

文章插图
【亿级流量场景下,大型缓存架构设计实现,你知道吗?】小型电商:
静态模板是固定的 数据库中的数据全量喧嚷到模板中,下次请求来了直接返回,速度也很快;
缺点:当数据上亿的时候,如果模板改定,把这些所有的数据在MySQL中取出后渲染进模板,非常耗时,不现实;
亿级流量场景下,大型缓存架构设计实现,你知道吗?

文章插图

亿级流量场景下,大型缓存架构设计实现,你知道吗?

文章插图
大型电商
-- 使用大型的高级缓存架构:
设计缓存数据生产服务模块;
不需要再进行全量重新渲染,直接将最新的html模板推送到Nginx服务器,请求过来后直接在nginx本地进行渲染进模板中返回请求;
亿级流量场景下,大型缓存架构设计实现,你知道吗?

文章插图
************redis单机理论 ************
redis的重要性:
亿级流量场景下,大型缓存架构设计实现,你知道吗?

文章插图
------------------------------------------------------------------------------------------
虚拟机环境设置[1]
---- 安装ISO + 配置网络 + 安装JDK+Perl + SSH免密通信:
虚拟机中安装centos
启动一个virtual box虚拟机管理软件 使用CentOS 6.5镜像即可,CentOS-6.5-i386-minimal.iso
配置网络
vi /etc/sysconfig/network-scripts/ifcfg-eth0 ---- 修改linux的网络配置
删除对应的项目,保留如下的配置:
DEVICE=eth0TYPE=EthernetONBOOT=yesBOOTPROTO=dhcp
wq保存;
重启网络:service network restart使用ifconfig查询当前自动分配的网址;
将当前的网址设置为静态ip,加入下面的静态配置:
BOOTPROTO=staticIPADDR=192.168.0.XNETMASK=255.255.255.0GATEWAY=192.168.0.1
网络服务重启:service network restart
配置hosts【相当于给本机起别名】
vi /etc/hosts
192.168.0.X eshop-cache01其他主机,添加类似配置 。实现本机的hostname到ip地址的映射
配置SecureCRT【本人使用的Xshell 感觉也很好用】
此时就可以使用SecureCRT从本机连接到虚拟机进行操作了
关闭linux防火墙
service iptables stopservice ip6tables stopchkconfig iptables offchkconfig ip6tables off
vi /etc/selinux/configSELINUX=disabled
关闭windows的防火墙
配置yum
yum clean allyum makecacheyum install wget
------------------------------------------------------------------------------------------
在每个CentOS中都安装JAVA和Perl
(WinSCP,就是在windows宿主机和linux虚拟机之间互相传递文件的一个工具 。)
(1)安装JDK
1、将jdk-7u60-linux-i586.rpm通过WinSCP上传到虚拟机中2、安装JDK:rpm -ivh jdk-7u65-linux-i586.rpm3、配置jdk相关的环境变量vi .bashrcexport JAVA_HOME=/usr/java/latestexport PATH=$PATH:$JAVA_HOME/binsource .bashrc4、测试jdk安装是否成功:java -version
(2)安装Perl
yum install -y gcc
wget http://www.cpan.org/src/5.0/perl-5.16.1.tar.gztar -xzf perl-5.16.1.tar.gzcd perl-5.16.1./Configure -des -Dprefix=/usr/local/perlmake && make test && make installperl -v
为什么要装perl?我们整个大型电商网站的详情页系统,复杂 。java+nginx+lua,需要perl 。
perl,是一个基础的编程语言的安装,Tomcat,跑java web应用
------------------------------------------------------------------------------------------
3、在4个虚拟机中安装CentOS集群
(1)按照上述步骤,再安装三台一模一样环境的linux机器(2)另外三台机器的hostname分别设置为eshop-cache02,eshop-cache03,eshop-cache04(3)安装好之后,在每台机器的hosts文件里面,配置好所有的机器的ip地址到hostname的映射关系
比如说,在eshop-cache01的hosts里面
192.168.31.187 eshop-cache01192.168.31.xxx eshop-cache02192.168.31.xxx eshop-cache03192.168.31.xxx eshop-cache04
------------------------------------------------------------------------------------------
4、配置4台CentOS为ssh免密码互相通信【此时四台linux虚拟机可以通过ssh实现无密码输入通信】


推荐阅读