Memcached使用介绍

memcached是高性能的分布式内存缓存服务器,通过缓存数据库查询结果,减少数据库访问次数,以提高动态Web应用的速度和可扩展性。

特点:

  1. 协议简单;
  2. 机遇libevent的事件处理;
  3. 内置内存存储方式;
  4. 采用不相互通信的分布式;

memcached的对象实际上放置在内存中,这是如此快速的原因。

memcached如何支持高并发?

memcached使用多路复用I/O模型(epoll,select等),传统阻塞I/O中,系统可能会因为某个用户连接还没有做好I/O准备而一直等待,直到这个连接做好I/O准备。如果这时还有其他用户连接到服务器,可能会因为系统阻塞而得不到响应。

而多路复用I/O是一种消息通知模式,用户连接做好I/O准备后,系统会通知我们这个连接可以进行I/O操作,这样就不会阻塞某个用户连接。因此才能支持高并发。

线程数并不是越多越好,一般设置为CPU核数,这样效率最高。

memcached分布式布置方案

有1台memcached服务器不能满足我们的需求,需要布置多台memcached服务器。但是有个问题,怎么确定一个数据应该保存到哪个服务器上呢?

有两种方案,第一种普通Hash分布,第二种一致性Hash分布。

原文发布于微信公众号 - php(phpdaily)

原文发表时间:2016-07-13

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏CodingToDie

分布式事务解决方案

Spring Cloud 分布式事务管理 在微服务如火如荼的情况下,越来越多的项目开始尝试改造成微服务架构,微服务即带来了项目开发的方便性,又提高了运维难度以及...

3694
来自专栏数据和云

GR运维手册 - 第一册 苦海岸边,GR的基础知识

作者简介: ? 刘伟 云和恩墨开源解决方案事业部首席架构师 多年一线互联网企业DBA经历,对MySQL、NoSQL,PostgreSQL等各类开源数据库均有涉猎...

2836
来自专栏云计算爱好者

简单介绍Docker的架构特性与局限

Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化。容器是...

2016
来自专栏韩伟的专栏

高性能服务器架构思路( 五 ) : 分布式缓存

在高性能的服务器架构中,常用的缓存和分布两种策略,往往是结合到一起使用的。只有清楚的理解这些技术的原理,并且和实际的业务场景结合起来,才能真正的做出满足应用要求...

3.2K0
来自专栏韩伟的专栏

分布式系统解决之道:目录、消息队列及其他

由于这系列文章实在是太长,所以很抱歉发错了顺序,这应该是第二篇,不过单独来看也是可以成文的。 目录服务(ZooKeeper) 分布式系统是一个由很多进程组成的整...

3633
来自专栏Janti

每天学一点Docker(1)

Docker能做些什么? 1.docker能够解决虚拟机能够解决的问题 2.隔离应用依赖 3.创建应用镜像并复制 4.创建容易分发的即启即用的应用 5.dock...

3827
来自专栏Java技术栈

网站性能测试指标(QPS,TPS,吞吐量,响应时间)详解

常用的网站性能测试指标有:吞吐量、并发数、响应时间、性能计数器等。 并发数 并发数是指系统同时能处理的请求数量,这个也是反应了系统的负载能力。 响应时间 响应时...

4728
来自专栏CSDN技术头条

干货丨Tachyon:Spark生态系统中的分布式内存文件系统

Tachyon是Spark生态系统内快速崛起的一个新项目。本质上,Tachyon是个分布式的内存文件系统,它在减轻Spark内存压力的同时,也赋予了Spark内...

1905
来自专栏Java技术

Apache Kafka:下一代分布式消息系统

Apache Kafka是分布式发布-订阅消息系统。它最初由LinkedIn公司开发,之后成为Apache项目的一部分。Kafka是一种快速、可扩展的、设计内在...

411
来自专栏架构师小秘圈

Hive极简教程

一、HIVE架构 Hive 是建立在 Hadoop 上的数据仓库基础构架。它提供了一系列的工具,可以用来进行数据提取转化加载(ETL),这是一种可以存储、查询和...

4276

扫描关注云+社区