分布式缓存的作用

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了分布式缓存的作用相关的知识,希望对你有一定的参考价值。

参考技术A 分布式缓存能够处理大量的动态数据,因此比较适合应用在Web 2.0时代中的社交网站等需要由用户生成内容的场景。从本地缓存扩展到分布式缓存后,关注重点从CPU、内存、缓存之间的数据传输速度差异也扩展到了业务系统、数据库、分布式缓存之间的数据传输速度差异。

常用的分布式缓存包括Redis和Memcached。

Memcached

Memcached是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载。Memcached通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态、数据库驱动网站的速度。

特点:哈希方式存储;全内存操作;简单文本协议进行数据通信;只操作字符型数据;集群由应用进行控制,采用一致性哈希算法。

限制性:数据保存在内存当中的,一旦机器重启,数据会全部丢失;只能操作字符型数据,数据类型贫乏;以root权限运行,而且Memcached本身没有任何权限管理和认证功能,安全性不足;能存储的数据长度有限,最大键长250个字符,储存数据不能超过1M。

Redis

Redis是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。

特点:

Redis支持的数据类型包括:字符串、string、hash、set、sortedset、list;Redis实现持久化的方式:定期将内存快照写入磁盘;写日志;Redis支持主从同步。

限制性:单核运行,在存储大数据的时候性能会有降低;不是全内存操作;主从复制是全量复制,对实际的系统运营造成了一定负担。

fdisk分区和parted分区 增加SWAP空间 CDN分布式缓存的作用


 

作者

归档:学习笔记

2016/6/27

 


本章正题:磁盘分区

1.1 磁盘分区表

1.1.1 MBR主引导记录(引导系统启动)

   位置:位于0磁头,0磁道,1扇区的前446字节

     MBR446字节,64字节分区表,2字节分区结束标志

 

1.1.2 主分区primary1)一般一定要有(引导系统)

           2)存放数据

 

1.1.3 扩展分区extend1)最多一个

           2)无法直接使用

 

1.1.4 逻辑分区logical 存放数据

 

1.1.5 磁盘分区的设备名的表示: 

1)磁盘:第一块SAS硬盘 -- /dev/sda

      第三块SATA硬盘 -- /dev/sdc

2)分区:主分区和扩展分区 -- 1-4 表示

      逻辑分区 -- 5开始表示

3)例子:第一块sas硬盘的第一个主分区:/dev/sda1

      第二块sata硬盘的第二个主分区:/dev/sdb2

      第三块stat硬盘的第一个逻辑分区:/dev/sdc5

 

1.2 磁盘分区格式化

1.2.1  fdisk 分区(用于小于2TB的磁盘),只支持分区表为MBR(最初始msdos

[[email protected] ~]# fdisk -cu  /dev/sdb

注:-cu 会按照扇区(secter)开始分区,默认的话是按照柱面(cylinter)分区

查看帮助:m

创建分区:n

删除分区:d

显示分区信息:p

退出不保存:q

退出并保存:w

注:输错了要删除,按Ctrl+u

1. 创建主分区

第一步:n

第二步:p

第三步:回车键  #默认从当前扇区开始分

第四步:+10M  #划分10M的空间

第五步:p 查看一下分区信息

第六步:w 保存并退出

第七步:partprobe  /dev/sdb1 #通知系统分区表变化了

2. 创建扩展分区并在创建逻辑分区

[[email protected] ~]# fdisk -cu  /dev/sdb

第一步:n

第二步:e

第三步:回车键  #默认从当前扇区开始分

第四步:回车键  #扩展分区一般剩余多少给多少

第五步:n   #在扩展分区之上开始创建逻辑分区

第六步:l

第七步:回车键  #默认从当前扇区开始分

第八步:+10M  #划分10M的空间

第九步:p 查看一下分区信息

第十步:w 保存并退出

第十一步:partprobe /dev/sdb5 #通知系统分区表变化了

     注:再次fdisk  -cu  /dev/sdb 进去时候会发现,提示没有分区的信息已经没有了,说明你已   经有了分区

3. 创建一个100M的分区,格式化后挂载到/mnt上面

[[email protected] ~]# fdisk -cu  /dev/sdb

第一步:把所有空间都划分为一个主分区,w 保存并退出

第二步:partprobe  /dev/sdb2 #通知系统分区表变了

第三步:mkfs.ext4 /dev/sdb1 #格式化,创建文件系统

    注:1. Inode和Block就是在创建文件系统的时候诞生的

       2. 最后2行会提示如何关闭磁盘自动检查

第四步:tune2fs -c 0 -i 0 /dev/sdb1  #关闭磁盘自动检查

    注:1. -c:关闭每挂载N次的时候进行磁盘检查

       2. -i:每个一段时间进行一次磁盘检查

第五步:mount /dev/sdb1 /mnt  #挂载到指定目录下,如/mnt下

第六步:df -h   查看一下是否挂载成功,和磁盘的信息

 

4.挂载永久生效

1. /etc/rc.local (写全路径)

/bin/mount /dev/sdb1 /mnt

2. /etc/fstab 开机自动挂载的配置文件

技术分享图片 

设备名称      挂载点     文件系统类型    挂载参数    dump备份(0关闭,1开启) 磁盘检查(0关闭,1开启并第一个检查【一般根分区为1】,其他从2开始)

注:tmpfs是伪文件系统,临时使用,读写要快一点(仅做了解)

 

 

1.2.2 parted分区(支持2TB以上的磁盘),支持分区表为GPTMBR

交互式:

1. parted /dev/sdc  

注:比fdisk支持很多的分区,不区分主分区之类的。

2. mktable gpt   创建分区表(mklable gpt也可以)

3. print或p   显示分区信息

4. mkpart primary 0 20M  创建分区(分配从0到20M,共20M的空间)

5. 选择I(它会提示你这么选择性能不是最高的,忽略)

注:1.这里面不需要保存,在parted里面会时候生效!

   2.GPT对应的ID 是ee

6. quit    退出不保存(默认会自动保存)

7. rm 2    删除第二个分区

 

非交互式:

交互式的命令连着写即可!


1.3 企业案例:java环境内存不够用,大量占用swap

1.3.1 临时增加SWAP空间

1. 创建100M的空文件

[[email protected] ~]# dd if=/dev/zero of=/tmp/100m bs=1M count=100

注:zero特殊文件,往外输出0,做测试

 

2. 创建为swap

[[email protected] ~]# mkswap /tmp/100m

 

3. swap文件生效

[[email protected] ~]# swapon /tmp/100m

注:swapon 开启swap, swapoff 关闭sawp

4. 查看swap的使用情况

[[email protected] ~]# free -h

5. 查看swap的组成

[[email protected] ~]# swapon -s

Filename    Type  Size Used Priority

/dev/sda2            partition 786428   0   -1

/tmp/100m               file  102396   0   -2

 

1.3.2 永久增加 swap空间

1)/etc/rc.local

/sbin/swapon /tmp/100m

2)写入到/etc/fstab

技术分享图片

注:swap的挂载点也是swap,文件系统也是swap

1.4 分区与文件系统的关系

文件系统:就是在分区中进行组织文件的一种方法

超级快SuperBlock:记录文件系统的控制与管理信息,存放InodeBlock的信息

修复超级块的方法:fsck.ext4 /dev/sdb3

查看分区信息:dumpe2fs  /dev/sda3

只查看超级块中重要信息:dumpe2fs -h /dev/sda3

1.5 常见的文件系统

1. SUSE openSUSE linux 的默认文件系统为Reiserfs

2. IBMAIX使用的ifs日志文件系统

 注:ifsunix系统,主要依赖于硬盘

3. Centos7采用XFS文件系统

4. Cenos6采用ext4文件系统

5. Centos5采用ext3文件系统

1.5.1 SAS/SATA硬盘文件系统选择

1. reiserfs适用于大量小文件,缺点:需要单独安装

2. xfs对于数据库的支持比较好,如:mysql

3. ext4通用的,如:数据量,小文件业务....

4. ext2基本上没人用,没有文件系统的日志功能(如:iotopCOMMAND会显示)

1.5.2 CDN分布式缓存

作用:提高网站访问速度

CDN公司:网宿、蓝汛

如:12306抢票,显示有票 其实没票

技术分享图片

1.5.3  SSD固态硬盘文件系统选择

        ext4 / Reiserfs可以作为SSD文件系统


请关注我的微信公众号:linux运维菜鸟之旅

更新比51cto慢一些,不过要方便许多

 


以上是关于分布式缓存的作用的主要内容,如果未能解决你的问题,请参考以下文章

分布式缓存主要用在高并发环境下的作用?

分布式架构系列:缓存在分布式系统中应用

分布式缓存

fdisk分区和parted分区 增加SWAP空间 CDN分布式缓存的作用

SpringBoot:redis分布式缓存

分布式缓存