Memcache(1.1)Memcache 基本概述与架构概述

【1】基本概念介绍

官网:https://memcached.org/

【1.1】memcache与memcached

memcache:是早期使用的,与php结合的,是Php中常用的一个原生插件,完全在php框架内开发的

memcached:是建立在 libmemcached的基础上,所以相对而言版本的功能更全面。现在都是用这个

区别:Memcached 是一个内存缓存系统,而 Memcache 是php的一个扩展插件,是php用于操作和管理 Memcached 的工具,如果安装了 Memcached 但没有安装 Memcache,则php 无法操作 Memcached,但是可以使用命令来操作 Memcached;

如果安装了 Memcache却没有安装 Memcached,则无法使用。

只有同时安装了 Memcached 和 Memcache ,才能在 PHP 中使用 Memcached。

【1.2】memcached 介绍

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

(2)Memcached是使用的key-value存储(数据按照键值对的形式进行组织、索引和存储),数据可以来自数据库调用、API调用 或者页面渲染结果。

(3)Memcached 能用于 java/c/c++/c#/Perl/Python/php/ruby等大部分流行语言

(4)Memcached 仅支持简单的 key-value结构的数据记录。

【1.3】现状与用途

现状:就是做缓存查询

用途:减少访问压力,作后端的session会话保持。

【1.4】基本运行机制

请求=》查看缓存中是否有=》如果有=》返回该页面给客户端

                                          =》没有=》从数据库获取该页面数据=》返回该页给客户端(同时将该页面放入memcached)

如下图:

  

【2】Memcached  特性

【2.1】与关系型数据存取对比

  

【2.2】Memcache 特点总结

  

 【3】集群架构

【3.1】主从

  

 左边:

(1)一主一从

一个Magent,然后一个主库,一个从库。Magent 负责主从同步与代理关系。

外部链接直接链接到 Magent=》 然后 Magent 转发请求到主库

如果主库挂掉,Managent 会自动把请求切换到从库。

右边:

配置2个 Magent,做 Magent 的高可用,避免单点故障。

右边是多个主库分布在不同机器,这样由Magent来记录分发数据到不同主库。

从库只弄了2个机器,做复制就好了。

【3.2】互备主从

  

【3.3】高可用架构

  

 比如,keepalived+magent,外部访问 vip

猜你喜欢

转载自www.cnblogs.com/gered/p/12960271.html