G_Yabind

亚浜


  • 首页

  • 码市

  • 标签

  • 分类

  • 归档

  • 搜索

Memcached

发表于 2019-06-12 | 更新于: 2019-06-09 | 分类于 NoSQL |
字数统计: 583 | 阅读时长 ≈ 2

Memcached介绍

  • Memcached是国外社区网站LiveJournal团队开发,目的是为了通过缓存数据库查询结果,减少数据库访问次数,从而提高动态web站点性能
  • 官网站点:【了解更多】
  • 数据结构简单 ( k-v ) ,数据存放在内存里
  • 多线程
  • 基于C/S架构,协议简单
  • 基于libevent的事件处理
  • 自主内存存储处理(slab allowcation)
  • 数据过期方式:Lazy Expiration 和 LRU

Memcached的数据流向

1560093620453

Slab allocation

  • Slab allocation的原理
  • 将分配的内存分割成各种尺寸的快(chunk),并把尺寸相同的快分成组(chunk的集合),每个chunk集合被称为slab
  • Memcached的内存分配以Page为单位,Page默认值为1M,可以在启动是通过 -I 参数来指定
  • Slab是由多个Page组成的,Page按照指定大小分割成多个chunk
1560093949237

Growth factor(决定chunk的大小)

  • Memcached在启动时通过 -f 选项可以指定 Growth Factor因子。该值控制chunk大小的差异。默认值1.25
  • 通过memcached-tool命令查看指定Memcached实例的不同slab状态,可以看到个ltem所占大小(chunk大小)差距为1.25
  • 命令:#memcached-tool 127.0.0.1:11211 display

Mencached的数据过期方式

  • Lazy Expiration

    • Memcached 内部不会监视记录是否会过期,而是在get时查看记录的时间戳,检查记录是否过期。这种技术被称为lazy(惰性)expiration。因此,Memcached不会在过期监视上耗费CPU时间
  • LRU

    • Mencached会优先使用已超时的记录空间,但即使如此,也会发生追加新纪录时空间不足的情况,此时就要使用名为Least Recently Used(LRU)机制来分配空间。顾名思义,就是删除“最近最少使用”的记录的机制。因此,当内存空间不足时(无法从slab class获取到新的空间时),就从最近胃被使用的记录中搜索,并将其空间分配给新的记录。丛缓存的实用角度看,该模型十分理想。

Memcached安装

  • yum install -y memcached libmemcached libevent
  • systemctl start memcached
  • vim /etc/sysconfig/memcached 可以配置参数
  • 比如加上监听的IP,可以把OPTIONS=”” 改为OPTIONS=”127.0.0.1”
  • 其中-m指定memcached分配内存
  • -c指定最大并发数
  • -u指定运行memcached服务的用户

私有化部署-自动化安装FastDFS应用

发表于 2019-06-10 | 更新于: 2019-06-17 | 分类于 FastDFS应用 |
字数统计: 461 | 阅读时长 ≈ 2

上传文件

所有需要的软件已经整理成了一个包。把包上传到每台机上的/usr/local/src/目录下

1
2
3
4
5
6
7
8
9
10
11
12
13
[root@localhost ~]# cd /usr/local/src/
[root@localhost src]# ls
FastDFS-install.tar.gz
[root@localhost src]# tar -zxvf FastDFS-install.tar.gz
./FastDFS/
./FastDFS/ngx_cache_purge-2.3.tar.gz
./FastDFS/installFastDFS.sh
./FastDFS/fastdfs-nginx-module_v1.16.tar.gz
./FastDFS/FastDFS_v5.05.tar.gz
./FastDFS/nginx-1.6.2.tar.gz
./FastDFS/libfastcommon-master.zip
[root@localhost src]# ls
FastDFS FastDFS-install.tar.gz
阅读全文 »

shell判断

发表于 2019-06-03 | 更新于: 2019-06-11 | 分类于 shell |
字数统计: 762 | 阅读时长 ≈ 3

shell脚本中的变量

  • 当脚本中使用某个字符串较频繁并且字符串长度很长时就应该使用变量代替

  • 使用条件语句时,常使用变量

    1
    2
    3
    if [[ condition ]]; then
    #statements
    fi
    阅读全文 »

Seafile-开源企业私有网盘升级

发表于 2019-05-31 | 更新于: 2019-05-28 | 分类于 Seafile |
字数统计: 2.4k | 阅读时长 ≈ 11
前言

​ 本人当时搭建seafile的时候版本号是6.1.1现在版本更新到了6.3.4了,打算升级一下。文章脑袋思路不是特别有思路,写的不好希望理解。

​ 简述一下:之前的seafile服务是搭建在192.168.1.102上的/home/seafile目录下的,之前的数据MySQL并没有放在这个机器上而是放在了192.168.1.103上。

阅读全文 »

安装Zabbix监控软件

发表于 2019-05-31 | 更新于: 2019-05-02 | 分类于 Linux高级 |
字数统计: 1.1k | 阅读时长 ≈ 4

Zabbix监控介绍

  • C/S架构,基于C++开发,监控中心支持web界面配置和管理

  • 单server节点可以支持上万台客户端

  • 最新版本4.0,官方文档:Zabbix官网

  • Zabbix包括5个组件

    阅读全文 »

私有化部署-安装FastDFS应用

发表于 2019-05-18 | 更新于: 2019-05-19 | 分类于 FastDFS应用 |
字数统计: 2.9k | 阅读时长 ≈ 12

安装依赖包

1
yum install make cmake gcc gcc-c++

安装 libfastcommon (所有服务器上)

上传安装libfastcommon

  • 将包 libfastcommon-master.zip 上传到/usr/local/src 目录,并解压
阅读全文 »

FastDFS介绍

发表于 2019-05-17 | 更新于: 2019-05-16 | 分类于 FastDFS应用 |
字数统计: 1k | 阅读时长 ≈ 3

FastDFS 介绍

​ FastDFS 是一个开源的分布式文件系统,它对文件进行管理,功能包括:文件存储、文件同步、文件访问(文件上传、文件下载)等,解决了大容量存储和负载均衡的问题。特别适合以文件为载体的在线服务,如相册网站、视频网站等等。
​ FastDFS 服务端有两个角色:跟踪器(tracker)和存储节点(storage)。跟踪器主要做调度工作,在访问上起负载均衡的作用。存储节点存储文件,完成文件管理的所有功能:存储、同步和提供存取接口,FastDFS 同时对文件的 meta data 进行管理。所谓文件的 meta data 就是文件的相关属性,以键值对(key value pair)方式表示,如:width=1024,其中的 key 为 width,value 为 1024。文件 meta data 是文件属性列表,可以包含多个键值对。FastDFS 系统结构如下图所示:

阅读全文 »
Yabind

Yabind

7 日志
5 分类
5 标签
GitHub E-Mail Google Twitter
© 2019 Yabind
0%