Memcache 学习笔记(一)----Memcache — Linux部署

  Memcache

一、Memcache简介(内容摘自 --百度百科

  memcache是一套分布式的高速缓存系统,由LiveJournal的Brad Fitzpatrick开发,但目前被许多网站使用以提升网站的访问速度,尤其对于一些大型的、

  需要频繁访问数据库的网站访问速度提升效果十分显著 。这是一套开放源代码软件,以BSD license授权发布。官方网址:http://www.memcache.org

二、Memcache 工作流程 

  1.MemCache的工作流程如下:先检查客户端的请求数据是否在memcached中,如有,直接把请求数据返回,不再对数据库进行任何操作;如果请求的数据不在memcached中,

    就去查数据库,把从数据库中获取的数据返回给客户端,同时把数据缓存一份到memcached中(memcached客户端不负责,需要程序明确实现);每次更新数据库的同时更新

    memcached中的数据,保证一致性;当分配给memcached内存空间用完之后,会使用LRU(Least Recently Used,最近最少使用)策略加上到期失效策略,失效数据首先被

    替换,然后再替换掉最近未使用的数据。

  2.Memcache是一个高性能的分布式的内存对象缓存系统,通过在内存里维护一个统一的巨大的hash表,它能够用来存储各种格式的数据,包括图像、视频、文件以及数据库检索的结果

    等。简单的说就是将数据调用到内存中,然后从内存中读取,减少数据库访问次数,以提高动态Web应用的速度、提高可扩展性,从而大大提高读取速度。

  3.Memcache是danga的一个项目,最早是LiveJournal 服务的,最初为了加速 LiveJournal 访问速度而开发的,后来被很多大型的网站采用。

  4.Memcached是以守护程序(监听)方式运行于一个或多个服务器中,随时会接收客户端的连接和操作。

三、Memcache 特性和限制

  1.在 Memcached中可以保存的item数据量是没有限制的,只要内存足够 。

   2.Memcached单进程在32位系统中最大使用内存为2G,若在64位系统则没有限制,这是由于32位系统限制单进程最多可使用2G内存,要使用更多内存,可以分多个端口开启多个Memcached进程 ,

    最大30天的数据过期时间,设置为永久的也会在这个时间过期,常量REALTIME_MAXDELTA 60*60*24*30控制

    最大键长为250字节,大于该长度无法存储,常量KEY_MAX_LENGTH 250控制

    单个item最大数据是1MB,超过1MB数据不予存储,常量POWER_BLOCK 1048576进行控制,它是默认的slab大小

      最大同时连接数是200,通过 conn_init()中的freetotal进行控制,最大软连接数是1024,通过 settings.maxconns=1024 进行控制

   3.跟空间占用相关的参数:settings.factor=1.25, settings.chunk_size=48, 影响slab的数据占用和步进方式

   4.memcached是一种无阻塞的socket通信方式服务,基于libevent库,由于无阻塞通信,对内存读写速度非常之快。

   5.memcached分服务器端和客户端,可以配置多个服务器端和客户端,应用于分布式的服务非常广泛。

   6.memcached作为小规模的数据分布式平台是十分有效果的。

   7.memcached是键值一一对应,key默认最大不能超过128个字 节,value默认大小是1M,也就是一个slabs,如果要存2M的值(连续的),不能用两个slabs,因为两个slabs不是连续的,无法在

    内存中 存储,故需要修改slabs的大小,多个key和value进行存储时,即使这个slabs没有利用完,那么也不会存放别的数据。

   8.memcached已经可以支持C/C++、Perl、PHP、Python、Ruby、Java、C#、Postgres、Chicken Scheme、Lua、MySQL和Protocol等语言客户端。

四、memCache在Linux中的部署

  Linux mamCache 安装

    安装libevent

      官方网站  : http://libevent.org/

    1. 解压

      tar -zvxf libevent-2.1.8-stable.tar.gz

    2. 进入目录

      cd libevent-2.1.8-stable

    3. 执行

      ./autogen.sh

    4. 配置

      ./configure -prefix=/usr

    5. 编译安装

      make && make install

    安装memcached

      官方网站  :  http://memcached.org

    1. 解压

      tar -zxvf memcached-2.x.x.tar.gz

    2. 进入目录

      cd memcached-2.x.x

    3. 一步搞定

      ./configure && make && make test && sudo make install

    4.启动

      memcached -d -u root -p 11211

    安装 php 扩展

    1. 下载

      https://github.com/websupport-sk/pecl-memcache/archive/php7.zip

    2. 解压

      unzip pecl-memcache-php7.zip

    3. 进入目录

      cd pecl-memcache-php7

    4. 执行phpize

      /usr/local/php/bin/phpize

    5. 配置

      ./configure --with-php-config=/usr/local/php/bin/php-config

    6. 编译安装

      make && make install

    7. 修改 php.ini 配置文件

      快速定位php.ini和php扩展目录的位置

      phpinfo,Loaded Configuration File

      vim /usr/local/php/etc/php.ini

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

      extension="memcache.so";

    8. 重启apache

      /usr/local/apache2/bin/apachectl restart

 

转载于:https://www.cnblogs.com/liwei-17/p/6945773.html

绕过Google Play:获取Expo Go安卓APK的实用指南 本文为国内安卓开发者提供了绕过Google Play商店获取Expo Go APK的实用指南。针对无法访问Google Play的痛点,详细介绍了通过官方GitHub Releases、可信第三方网站(如APKMirror)及APK下载器等多种安全获取途径,并重点讲解了APK安装、安全验证(核对签名)及常见连接问题的排查方法,帮助开发者顺利开启React Native开发之旅。 阅读详情

相关推荐

VS2022离线安装总闪退?可能是这个--noWeb参数没加对(完整参数指南)

本文深入解析了VS2022离线安装过程中常见的闪退问题,指出核心原因往往在于命令行参数使用不当,特别是`--noWeb`参数。文章提供了完整的参数使用指南和实战解决方案,包括证书处理、安装器文件修复及自动化脚本,帮助用户彻底解决离线部署中的验证失败与闪退难题。

weixin_28842269的博客 703

MemCache详细解读

MemCache个自由、源码开放、高性能、分布式的分布式内存对象缓存系统,用于动态Web应用以减轻数据库的负载。它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高了网站访问的速度。MemCache个存储键值对的HashMap,在内存中对任意的数据(比如字符串、对象等)所使用的key-value存储,数据可以来自数据库调用、API调用,或者页面渲染的结果。

一个老码农 1450

(最新更新!)2024全国大学生数学建模竞赛(国赛)B题决策优化+鲁棒模型完整建模全解全析

2024全国大学生数学建模竞赛(国赛)B题完整建模全解全析(已更新!)

Yilu264的博客 9391

Memcache 学习总结

WHAT is Memcache? Free & open source, high-performance, distributed memory object caching system, generic in nature, but intended for use in speeding up dynamic web a...

weixin_33811961的博客 179

MemCache 入门极简教程

2019独角兽企业重金招聘Python工程师标准>>> ...

weixin_34077371的博客 377

Memcached文详解 Memcached

Memcached个开源的,支持高性能,高并发的分布式内存缓存系统,由 C 语言编写,总共 2000 多行代码。从软件名称上看,前 3 个字符Mem就是内存的意思,而接下来的后面 5 个字符cache就是缓存的意思,最后个字符d,是daemon的意思,代表的是服务器端守护进程模式服务。

Code · Cloud · Think · Repeat 9934

kylin启动memcached缓存

部署kylin的机器内存不足时,可以使用memcached作为kylin的查询缓存。

qq_40209679的博客 887

memcache和mysql如何部署_Memcache部署和使用

Memcache部署和使用memcache简介Memcache是danga.com的个项目,最早是为LiveJournal服务的,目前全世界不少人使用这个缓存项目来构建自己大负载的网站,来分担数据库的压力。二、memcache的安装1、下载源文件(目前最新稳定版本是memcached-1.4.5.tar.gz)由于Memcache用到了libevent这个库用于Socket的处理,所以还需...

weixin_29825861的博客 167

Linuxmemcache的安装

Linuxmemcache的安装 memcache是高性能,分布式的内存对象缓存系统,用于在动态应用中减少数据库负载,提升访问速度。据说官方所说,其用户包括twitter、digg、flickr等,都是些互联网大腕呀。目前用memcache解决互联网上的大用户读取是非常流行的种用法。 ‍ 我在Linux上安装了memcache,这里先不说用法,先说下安装,如下。

yumengkk的专栏 1267

memcache部署安装

linux操作系统memcached部署

qq_48722638的博客 727

linux MemCache安装手册

linux MemCache安装手册1、所需软件列表:memcached-1.4.5.tar.gzlibevent-1.4.12-stable.tar.gz Memcache用到了libevent这个库用于Socket的处理,在http://www.danga.com/memcached下载这两个软件至本地/usr/local/src目录,命令如下: cd /usr/local/...

weixin_34344677的博客 136

php支持memcache

memcache个人理解主要是用来管理内存的,phpmemcache结合就可以使php些数据保存在memcache管理的内存里,方便管理,也快,还支持多台服务器共享数据,废话不多说. 分为linux和windows 1)linux和类Unix可以从以下地址下载memcached和libevent,由于安装memcache需要libevent支持,所以需要先安装libevent m

i am a dummy 3609

php 查看memcache,怎样查看memcache的日志

Redis和Memcache的区别总结linux 查看memcache服务 是否运行‘检查进程 ps -ef|grep memcached检查端口 默认使用11211端口 netstat -na|grep 11211phpmemcachememcached有什么区别PHP有两个memcache客户端:php memcachephp memcachedmemcache完全在PHP框架内开发...

weixin_32946543的博客 554

LINUX【企业】 ------- LNMP架构下的Memcache高速缓存部署

LINUX【企业】 -------  LNMP架构下的Memcache高速缓存部署 Memcache简介 memcache套分布式的高速缓存系统,由LiveJournal的Brad Fitzpatrick开发,但目前被许多网站使用以提升网站的访问速度,尤其对于些大型的、需要频繁访问数据库的网站访问速度提升效果十分显著 Memcache个高性能的分布式的内存对象缓存系统,通过在内存里...

sinceNow的博客 393

linuxmemcache编译安装及使用

linnux之memcache编译安装及使用1、编译安装memcache安装依赖工具包下载官方源码安装libevent依赖和memcache:2、连接使用memcachetelnet连接memcache常用命令添加修改添加缓存修改缓存设置缓存读取删除清空所有缓存查看缓存服务器状态打印版本打印内存信息 memcache套分布式的高速缓存系统,特点为key-value 存储。 1、编译安装memc...

hanruiding的博客 462

Memcache分布式部署方案()

基础环境其实基于PHP扩展的Memcache客户端实际上早已经实现,而且非常稳定。先解释些名词,Memcache是danga.com的个开源项目,可以类比于MySQL这样的服务,而PHP扩展的Memcache实际上是连接Memcache的方式。 首先,进行Memcache被安装具体可查看:Linux下的Memcache安装:http://www.ccvita.com/25...

182

Linux 缓存---Memcache

Memcache介绍安装环境准备数据库部署web01部署站点访问web页面测试web02 部署windows系统配置hosts数据库主机部署Memcachedweb01、web02 主机安装PHP memcache扩展插件 介绍 分布式的高速缓存数据库 Memcache套分布式的高速缓存系统,由LiveJournal的Brad Fitzpatrick开发,但目前被许多网站使用以提升网站的访...

mcywww的博客 398

Memcachelinux环境下的部署

http://www.ccvita.com/258.html Memcache是什么    Memcache是danga.com的个项目,最早是为 LiveJournal 服务的,目前全世界不少人使用这个缓存项目来构建自己大负载的网站,来分担数据库的压力。 它可以应对任意多个连接,使用非阻塞的网络IO。由于它的工作机制是在内存中开辟块空间,然后建立个HashTable,Memcac

Erica_1230的专栏 959

LNMP部署+memcache缓存服务器

LNMP部署+memcache缓存服务器 MemCache 简介 MemCache个自由、源码开放、高性能、分布式的分布式内存对象缓存系统,用于动态 Web 应用以减轻数据库的负载。它通过在内存中缓存数据和对象来减少读取数据库的次数, 从而提高了网站访问的速度。 MemCaChe个存储键值对的 HashMap,在内存中对任意 的数据(比如字符串、对象等)所使用的 key-value ...

weixin_45636702的博客 371

php增加memcache模块

##将phpize加入环境变量 1)将php的bin目录路径增加到 ~/.bash_profile中,为了方便调用 PATH=PATH:PATH:PATH:HOME/bin:/usr/local/lnmp/mysql/bin:/usr/local/lnmp/php/bin source ~/.bash_profile 2)memcache目录中本来没有configure文件,所以没法编译 yum ...

weixin_44783160的博客 302
上一篇: HTML学习笔记《二》 ----HTML部分标签应用
下一篇: Memcache 学习笔记(二)---- PHP 脚本操作 Memcache 服务器
de0708
博客等级 码龄12年 0粉丝 0原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值