当前位置: 首页 > news >正文

佛山做网站公司排名seo分析报告

佛山做网站公司排名,seo分析报告,动态网站开发过程,用wordpress.com做cdn认识 MemcachedMemcached 简介Memcached 是一套开源的高性能分布式内存对象缓存系统,它将所有的数据都存储在内存中,因为在内存中会统一维护一张巨大的 Hash 表,所以支持任意存储类型的数据。很多网站通过使用 Memcached 提高网站的访问速度&…

认识 Memcached

Memcached 简介

Memcached 是一套开源的高性能分布式内存对象缓存系统,它将所有的数据都存储在内存中,因为在内存中会统一维护一张巨大的 Hash 表,所以支持任意存储类型的数据。很多网站通过使用 Memcached 提高网站的访问速度,尤其是对于大型的需要频繁访问数据的网站。

Memcached 是典型的 C/S 架构,因此需要安装 Memcached 服务端与 Memcached API 客户端。Memcached 服务端是用 C 语音编写的,而 Memcached API 客户端可以用任何语言来编写,如PHP、Python、Perl 等,并通过 Memcached 协议与 Memcached 服务端进行通信。

存储方式与数据过期方式

Memcached 具有独特的存储方式和数据过期方式

数据存储方式:Slab Allocation

Slab Allocation 即按组分配内存,每次先分配一个 Slab ,相当于一个大小为1MB的页,然后在1MB的空间里根据数据划分大小相同的 Chunk 。该方法可以有效解决内存碎片问题,但可能会对内存空间有所浪费。

数据过期方式:LRU、Laxzy Expiration

LRU是指追加的数据空间不足时,会根据LRU的情况淘汰最近很少使用的记录。Laxzy Expiration即惰性过期,是指使用get时查看记录时间,从而检查记录是否已经过期。

Memcached 缓存机制

缓存是常驻在内存的数据,能够快速进行读取。而 Memcached 就是这样一款非常出色的缓存软件,当程序写入缓存数据请求时,Memcached 的 API 接口将 Key 输入路由算法模块路由到集群中一台服务器,之后由 API 接口与服务器进行通信,完成一次分布式缓存写入。

Memcached 分布式

Memcached 分布式部署主要依赖于 Memcached 的客户端来实现,多个 Memcached 服务器是独立的。分布式数据如何存储是由路由算法所决定的。

当数据达到客户端程序库时,客户端的算法就依据路由算法来决定保存的 Memcached 服务器。读取数据时,客户端依据保存数据时的路由算法选中和存储数据时相同的服务器来读取数据。

Memcached 路由算法

求余数 hash 算法

求余数 hash 算法是先用 key 做 hash 运算得到一个整数,再去做 hash 算法,根据余数进行路由。这种算法适合大多数据需求,但是不适合用在动态变化的环境中,比如有大量机器添加或者删除时,会导致大量对象的存储位置失效。

一致性 hash 算法

一致性 hash 算法适合在动态变化的环境中使用。原理是按照 hash 算法把对应的 key 通过一定的 hash 算法处理后,映射形成一个首尾相接的闭合循环,然后通过使用与对象存储一样的 hash 算法将机器也映射到环中,按顺时针方向将所有对象存储到离自己最近的机器中。

安装 Memcached 案例

本案例使用两台 CentOS 7.4 系统完成,一台是 Memcached 服务器,一台是基于 LAMP 架构进行 Memcached 拓展的 Memcached API 客户端,可以根据企业需求进行架构调整。

案例环境

主机

IP地址

主要软件包

Memcached 服务器

192.168.100.201

memcached-1.5.6.tar.gz、libevent-2.1.8-stable.tar.gz

Memcached API客户端

192.168.100.202

memcached-2.2.7.tgz 、httpd、mysql、php

开始部署

Memcached 服务器

# tar zxvf memcached-1.5.6.tar.gz -C /opt/

# tar zxvf libevent-2.1.8-stable.tar.gz -C /opt/

# yum install gcc gcc-c++ make -y

# cd /opt/libevent-2.1.8-stable

# ./configure --prefix=/usr/local/libevent

# make && make install

# cd /opt/memcached-1.5.6

# ./configure \

--prefix=/usr/local/memcached \

--with-libevent=/usr/local/libevent/

# make && make install

# ln -s /usr/local/memcached/bin/* /usr/local/bin/

# memcached -d -m 32m -p 11211 -u root // 开启服务(-d守护进程 -m缓存大小32M -p端口11211)

# netstat -anpt | grep memc //查看端口 11211/tcp端口

# systemctl stop firewalld.service

# setenforce 0

Memcached API 客户端

手工编译安装LAMP架构:见之前的博文,在此不多叙述

测试数据库工作是否正常

# mysql -u root -p

> CREATE DATABASE sky;

> GRANT all ON sky.* TO 'skyuser'@'%' IDENTIFIED BY 'admin123';

> flush privileges;

# vi /usr/local/httpd/htdocs/index.php

$link=mysql_connect('192.168.100.202','skyuser','admin123');

if($link) echo "

Success!!

";

else echo "Fail!!";

mysql_close();

?>

显示 Success 为正常工作

安装Memcached API 客户端

# yum install autoconf -y

# tar xf memcached-2.2.7.tgz -C /opt/

# cd /opt/memcached-2.2.7

//使用PHP的phpize脚本生成配置脚本configure 再进行配置编译

# /usr/local/php5/bin/phpize

# ./configure \

--enable-memcache \

--with-php-config=/usr/local/php5/bin/php-config

# make && make install

............

/usr/local/php5/lib/php/extensions/no-debug-zts-20131226/ //记录此行(共享组件的位置) 下面用到

配置PHP,添加Memcached组件

# vi /usr/local/php5/php.ini //搜索并修改下面一行,再新增一行

extension_dir = "/usr/local/php5/lib/php/extensions/no-debug-zts-20131226/"

extension = memcache.so

编写测试页面,测试Memcached是否正常工作

# vi /usr/local/httpd/htdocs/index.php

$memcache = new Memcache();

$memcache->connect('192.168.100.202',11211);

$memcache->set('key','Memcache test Successfull!',0,60);

$result = $memcache->get('key');

unset($memcache);

echo $result;

?>

# service httpd restart

6d0b7b12ff45164c3b1224c3434d4c0b.png

Memcached 数据库操作与管理

Memcached数据库操作和管理非常简单,安装使用telnet连接11211端口就可以

# yum install telnet -y

# telnet 127.0.0.1 11211

新建数据

add username 0 0 7 //不进行压缩和序列化标识 数据过期时间为永不过期 标识号是7就需要输入7位数。

example //输入数据

获取数据

get username //获取数据

VALUE username 0 7

example

gets username

VALUE username 0 7 1 //最后一位是更新因子会自增1

example

更新数据

set username 0 0 10 //更新信息,若键名不存在,则自行添加

everything

replace username 0 0 8 //更新信息,若键名不存在,则报错

12345678

检查更新

gets username

VALUE username 0 8 4

12345678

cas username 0 0 7 4 //检查更新,更新因子相等则更新否则返回EXISTS

lodging

STORED

追加数据

append username 0 0 7 //键值后追加数据

example

STORED

prepend username 0 0 2 //键值前追加数据

un

STORED

清除数据

delete username //清除指定的键值数据

flush_all //清除所有缓存数据

OK

查看服务器统计信息

stats //显示状态信息

stats items //返回所有键值对的统计信息

stats cachedump 1 0 //返回指定存储空间的键值对

stats slabs //显示各个slab的信息,包括chunk的大小、数目、使用情况等

stats sizes //输出所有item的大小和个数

stats reset //清空统计数据

退出

quit

http://www.lbrq.cn/news/2721547.html

相关文章:

  • 一站式营销平台重庆 seo
  • 小说网站的图片长图怎么做的跨境电商怎么开店铺
  • 酒厂网站源码餐饮培训
  • 建设一个网站可以放视频的多少钱数据分析培训
  • 临沂企业建站模板淘宝关键词排名查询工具
  • 网站维护费怎么做会计分录百度广告怎么投放
  • 做房地产网站广告销售客户管理软件哪个好用
  • 怎么制作网站教程下载搜易网服务介绍
  • 做3d人物模型素材下载网站信息流广告素材网站
  • 快站科技是什么互联网营销师考试内容
  • 里面云智能建站上海seo公司排名榜
  • 个人网站模板源码seo课程培训学校
  • 衡水提供网站制作公司哪家专业今日足球最新预测比分
  • 用asp.net 做网站海南网站制作
  • wordpress限制文章发布长春网站优化方案
  • 婚庆公司网站建设方案广告推广公司
  • 建立网站时要采用一定的链接结构可采用的基本方式有百度旧版本
  • 机关公文写作网站江门关键词排名工具
  • wordpress局域网建站免费网站站长查询
  • html5制作网站首页排名第一的助勃药
  • 温州网站关键词排名优化怎么制作个人网页
  • 做党务工作常用到的网站站长工具官网查询
  • wordpress 标签搜索引擎惠州百度seo哪家好
  • 如何拷贝别人网站的源码seo网站编辑优化招聘
  • 大兴网站开发网站建设报价长沙seo优化推广
  • 东莞制作公司网站网推什么意思
  • 企业手机端网站源码下载最佳磁力吧ciliba磁力链
  • 手机网站的价值网站制作步骤流程图
  • 科普网站建设目前最好的营销模式
  • 南阳哪里做网站比较好天津搜索引擎推广
  • 【科研绘图系列】R语言绘制多种饼图
  • 在Ubuntu 22.04上安装远程桌面服务
  • 多种适用于 MCU 固件的 OTA 升级方案
  • Python之Django使用技巧(附视频教程)
  • 基于Java的Markdown转Word工具(标题、段落、表格、Echarts图等)
  • 类和对象(中下)