Membase 是 NoSQL 家族的一个新的重量级的成员,支持Windows和Linux系统。 Membase容易安装、操作,可以从单节点方便的扩展到集群,而且为memcached(有 线协议的兼容性)实现了即插即用功能,在应用方面为开 发者和经营者提供了一个比较低的门槛。做为缓存解决方案,Memcached已经在不同类型的领域(特别是大容量的Web应用)有了广泛的使用,其中 Memcached的部分基础代码被直接应用到了Membase服务器的前端。 通过兼容多种编程语言和框架,Membase具备了很好的复用性。在安装和配置方面,Membase提供了有效的图形化界面和编程接口,包括可配置 的告警信息。 接下来是我在 Windows 机器上安装的步骤,已经通过一个小程序来测试安装成功的服务器。
1. 下载 Membase
* membase-server-community_x86_64_1.6.0.1.rpm [md5]
* membase-server-community_x86_1.6.0.1.rpm [md5]
* membase-server-community_x86_64_1.6.0.1.deb [md5]
* membase-server-community_x86_1.6.0.1.deb [md5]
* membase-server-community_x86_64_1.6.0.1_setup.exe [md5]
* membase-server-community_x86_1.6.0.1_setup.exe [md5]
*更多下载:http://www.membase.org/downloads 我下载的是 Windows 下的 64 位版本。
2. 双击 xxx.exe 进入安装,安装成功后程序会自动打开浏览器并访问 http://localhost:8091/index.html 页面,这是 Membase 管理控制台的页面,然后进入设置步骤,如下图: 点击 SETUP 按钮 在这里你需要配置服务器实例,选择数据存储的路径,以及缓存能用的物理内存大小。 Membase 使用两级数据存储(内存+磁盘),一旦超过内存大小,则自动使用磁盘来做存储,当然,这里面牵扯数据交换算法。 点击NEXT 这里添加存储节点(桶),需要选择“桶”的数据类型,可以选择兼容 Memcached 模式,以及每个节点的内存配额,以及复制数。 Membase 的结构:Cluster -> Servers -> Buckets 点击NEXT进入管理员密码设定,该密码是用来进入管理控制台的密码: 最后就进入了管理控制台的首页,自己多点点看吧 这时候 Membase 服务器已经是启动成功了的,下面我们用一个简单的 Java 程序来测试这个服务器: 源码打印? 1. package cache;
2.
3. import com.danga.MemCached.MemCachedClient;
4. import com.danga.MemCached.SockIOPool;
5.
6. /**
7. * Membase 测试
8. * @author Winter Lau
9. */
10. public class MembaseTester {
11.
12. /**
13. * @param args
14. */
15. public static void main(String[] args) {
16.
17. SockIOPool pool = SockIOPool.getInstance();
18. pool.setServers( new String[]{"localhost:11211"} );
19. pool.initialize();
20.
21. MemCachedClient mc = new MemCachedClient();
22. mc.setCompressEnable(true);
23. mc.setCompressThreshold(4096);
24.
25. for(int i=0;i<10000;i++)
26. mc.add("name"+i, "Winter Lau");
27.
28. System.out.println(mc.get("name"));
29. }
30.
31. }
package cache;
import com.danga.MemCached.MemCachedClient;
import com.danga.MemCached.SockIOPool;
/** * Membase 测试 * @author Winter Lau */
public class MembaseTester {
/** * @param args */
public static void main(String[] args) {
SockIOPool pool = SockIOPool.getInstance();
pool.setServers( new String[]{"localhost:11211"} );
pool.initialize();
MemCachedClient mc = new MemCachedClient();
mc.setCompressEnable(true);
mc.setCompressThreshold(4096);
for(int i=0;i<10000;i++)
mc.add("name"+i, "Winter Lau");
System.out.println(mc.get("name"));
}
}
这是用的是 http://www.oschina.net/p/memcached-java-client 这个 memcached 的 Java客户端包。 由于 membase 兼容 memcached,因此你可以使用任何以前自己熟悉的 memcached 客户端开发包来连接 membase。 太强了! 更多关于Membase的详细信息,或者下载地址请点这里