介绍

Redis基础定义

Redis 是一款开源、使用ANSI C语言编写、支持网络访问、同时支持内存存储与持久化的 Key-Value(键值)数据库 / 存储系统,提供多编程语言客户端API。

  1. 属于NoSQL非关系型数据库;
  2. 和 Memcached 同类,但功能更强,可以弥补 Memcached 的短板;
  3. 常作为关系型数据库(MySQL等)的补充缓存方案。

支持的数据类型

  • String:字符串类型
  • List:双向链表
  • Set:无序集合
  • zset(sorted set):有序集合
  • Hash:哈希结构(类似Map)

Memcached 仅支持字符串,这是二者最典型的区别之一。

特性

  1. 多语言客户端支持
    官方提供 Java、C/C++、C#、PHP、JavaScript、Python、Ruby、Perl 等大量语言SDK,开发接入便捷。
  2. 主从同步机制
    支持主从复制,可以实现数据异地备份、读写分离,提升可用性。
  3. 高性能
    数据优先存放内存,读写速度极高,广泛用作分布式缓存。
  4. 持久化能力
    可将内存数据落地磁盘,重启后数据不会全部丢失(Memcached 默认无持久化)。

背景

早期Redis项目由VMware资助开发与维护。

我们会用 WinForm(C#) 简易Redis客户端Demo来给大家演示使用,是C#对接Redis的入门演示程序。

  • 设置键值
  • 根据键获取值

Redis vs Memcached 简要对比

特性RedisMemcached
数据类型5种基础结构仅String字符串
持久化支持RDB/AOF持久化不支持持久化
主从复制支持不原生支持
内存淘汰多种淘汰策略LRU淘汰

Next:

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注