Memcache基本上已经是开发的标配了,但是对于Memcache集群,很多线上部署仍然是很单薄的。
几个存在的问题:不健壮、数据不安全、配置变更可能导致存取异常、后备数据的一致性
鉴于存在以上问题,Memcache的开发团队开发了Membase,支持多台服务器集群,数据的切片和复制,有效的提高了服务稳定性和数据的安全 性,并且支持数据的持久存储。代码的稳定性不够好,我曾经在部分线上业务上使用了Membase,后来因为几次莫名的存取操作缓慢,只能又撤销回到 Memcache。
之后,Membase团队与CouchDB团队合并,推出二合一的产品: Couchbase。
Couchbase的最大特点:
1,完全继承Memcache,原生支持所有Memcache操作;
2,继承了Membase的特性,支持集群和数据持久化;
3,继承了CouchDB的文档性质,支持通过View对数据进行操作。这个View的特性,提供了以往memcache所不具备的便利性,但是同Mongodb相比又很简单原始,感觉不是一种普遍需求的功能。
首先,从安装讲起:
安装服务器:
去官网下载对应版本的安装包http://www.couchbase.com 目前最新版本是2.1.1
从membase开始,就提倡采用web方式进行管理(执行完安装文件后,在浏览器中http://localhost:8091端口访问),默认是8091端口。
另外一段信息,是关于端口。11211是memcache访问端口,8091是管理和操作端口,其他几个是用于管理和集群通讯的。
打开8091进行初始化设置:
初始化过程很人性化,第一步是选择物理存储位置,并且设定新创建还是加入到一个已有的集群中。
如果选择新创建,需要指定内存使用的数量(注意若在集群中,所有集群的Mem内存必须都大于此值)。下一步中,还可以选择自动灌入一些测试数据,这样能直接体验一些view的效果。
再下一步,是创建缺省Bucket设置,这个很重要:
Bucket的意义,在于将数据进行分隔,比如:任何view就是基于一个bucket的,仅对bucket内的数据进行处理。一个server上 可以有多个Bucket,每个Bucket的存储类型、内容占用、数据复制数量等,都需要分别指定。从这个意义上看,每个Bucket都相当于一个独立的 实例。在集群状态下,我们需要对server进行集群设置,Bucket只侧重数据的保管。
创建Bucket,需要指明驱动类型: Memcached顾名思义,纯内存,无复制集等功能;Couchbase型是带有持久存储,可以有复制集。
关于复制集,可以设置:禁止复制集、复制集数量(如果设为2,数据将在两个节点上保存,任何一个节点损坏数据仍然存在),是否对索引也进行复制。Flush,是指是否支持清空全部数据的操作。
建议是使用Couchbase类型,设定好内存使用量,其他按默认。关于内存设定,尽量不要将Server上的内存全部分配出去,留一些空闲,对新建Bucket进行测试就很方便。当然,Bucket占用的内存数,在建立后也是可以动态调整的。
后面按照提示进行,设置完管理员密码,服务就可以使用了。在首页的管理界面,可以看到运行的概况:
在ServerNodes帧中,可以查看服务器集群情况;在View中,可以管理各个Bucket中的View,在DataBuckets中,对Buckets进行管理。比如调整内存占用:
只有一个服务器节点,replica是没有意义的,我们来搭建第二个服务器节点。安装过程类似,这里选择加入集群,填写IP和密码:
点击下一步,经过验证就可以加入集群了。集群中任何一台服务器,地位是对等的,用浏览器连接上去都可以进行管理。
可以看到,新加入的服务器处于 Pending 状态,意味着数据尚未进行同步。只有数据进行同步之后,这个节点才能提供服务。点击Rebalance按钮,进行数据同步。还有进度条显示,真的很体贴。
转载自: http://www.4u4v.net/memcache-sheng-ji-ban-couchbase-di-an-zhuang-pei-zhi-yu-shi-yong-shuo-ming.html
相关推荐
### Memcache安装与基本操作详解 #### 一、前言 Memcache是一种高性能的分布式内存对象缓存系统,用于加速动态Web应用,减轻数据库负担。本文将详细介绍如何安装配置Memcache,并提供基本的操作示例。 #### 二、...
3. 如果遇到依赖问题,需要先安装旧版OpenSSL,然后再次尝试安装Couchbase。 安装完成后,Couchbase会提示服务已经启动,并可通过8091端口进行Web管理。主要的端口包括: - 11211:Memcache服务端口,用于数据存取...
**Memcache 安装配置使用说明** --- **1、简介** 1.1 **文档目的** 本文档旨在提供详细的步骤和指南,帮助用户成功地在他们的系统上安装、配置和使用Memcache,这是一个高效的分布式内存对象缓存系统,常用于缓解...
在PHP5.2.6版本的Windows环境下,正确配置和使用Memcache涉及下载安装服务、启用PHP扩展以及编写代码进行数据交互。掌握这些知识,开发者可以充分利用Memcache提升网站和应用的响应速度,优化用户体验。
1. **完全兼容Memcache:** Couchbase支持所有的Memcache协议和命令,这使得迁移变得非常简单。 2. **集群支持与数据持久化:** 支持多服务器集群部署,数据可以在集群内进行切片和复制,提高系统的可靠性和数据的...
面向对象的常用接口包括Memcache::connect(打开连接)、Memcache::pconnect(打开长连接)、Memcache::close(关闭连接)、Memcache::set(保存数据)、Memcache::get(提取数据)、Memcache::replace(替换数据)...
>`,运行此脚本,如果看到Memcache扩展部分,说明安装和配置成功。 至此,你已经在Linux上成功安装了Memcache服务器和PHP扩展,可以开始使用Memcache来缓存数据,提高Web应用的响应速度。别忘了根据你的实际需求...
该压缩包包含memcache-win安装包,安装说明文档,php5.2.17的扩展文件:php_memcache.dll
9. **扩展与优化**: 除了基础的使用,还可以通过集群配置、持久化策略等方式进一步优化Memcache的性能。例如,设置多个服务器以实现负载均衡,或者使用一致性哈希算法来分发数据。 10. **与其他技术结合**: ...
在Windows操作系统上,尤其是64位的Windows 7系统,安装和配置Memcache可以帮助提升应用性能。本文将详细介绍如何在Win7 64位系统上安装和使用`memcache`。 首先,我们要理解`memcache`的工作原理。它是一个基于...
其他函数如`Memcache::set`、`Memcache::get`、`Memcache::delete`等也遵循类似的使用逻辑。 总结,PHP中的Memcache扩展为开发者提供了一个高效、易用的工具,用于在Web应用程序中实现数据的快速缓存,降低对数据库...
标题中的“memcache也spring,hibernate的配置”指的是如何在Java开发环境中,结合Memcached缓存系统、Spring框架和Hibernate持久化框架进行集成配置。Memcached是一种高性能的分布式内存对象缓存系统,用于加速动态...
KV发动机欢迎来到Couchbase KV-Engine项目。这始于Couchbase的上游memcached项目的分支,但此后有了实质性的发展。它包含Couchbase Server的键/值服务的大部分代码。仓库布局存储库中的关注领域: -公共头文件。 ...
**Memcache 使用与安装详解** Memcache 是一款高性能的分布式内存对象缓存系统,它能够存储数据并提供快速访问,广泛应用于减轻数据库负载,提升Web应用性能。在本文中,我们将详细探讨 Memcache 的基本概念、安装...
6.重新启动Apache,然后查看一下phpinfo,如果有memcache,那么就说明安装成功! Memcached的基本设置参数: -p 监听的端口 -l 连接的IP地址, 默认是本机 -d start 启动memcached服务 -d restart 重起memcached服务 ...
Memcache是一种广泛使用的分布式内存对象缓存系统,它可以在服务器集群间通过网络共享小块内存,从而提升应用程序的性能,减少数据库负载。在PHP中,我们通常使用php_memcache.dll扩展来与Memcache服务器进行交互。...
本篇文章主要围绕"PHP Memcache多版本拓展"进行详细讲解,包括其适用环境、安装步骤、使用方法以及与PHP7及以上版本的兼容性。 ### 一、适用环境 PHP Memcache多版本拓展库特别针对PHP7及以上版本进行了优化,覆盖...
压缩包中的`MemCache使用.txt`文档可能包含了安装、配置和测试的详细步骤,以及如何监控MemCache的性能。通常,我们可以通过以下方式进行测试: 1. **命令行测试**:使用telnet命令行工具连接到MemCache服务器,...