无需购买,轻松使用Redis(redis需要买吗)
的替代方案
NoSQL 数据库在 Web 应用、大数据和移动应用等领域得到广泛应用。其中,Redis(REmote DIctionary Server)是最受欢迎的免费开源 NoSQL 数据库之一,它非常适合将少量结构化数据存储在内存中,以改善性能并提供可靠的请求响应。然而,不幸的是,Redis(尤其是集群版本)的安装和管理比较复杂,耗费了很多时间和资源,使用 Redis 的部署成本也比较高,因此很多团队在查找替代性解决方案,但也许我们始料未及的是,最值得尝试的方式不花钱就能够用 Redis了。
Memcached 是一个开源、高性能的内存对象缓存系统,它可以将高频访问数据缓存在 RAM 的地方,以提高 Web 应用服务器的性能,同时也可以用来替代 Redis 数据库。与Redis相比,Memcached 的操作大部分是 MEMCACHED get() 和 set(),它支持的类型也有限,只支持字符串、数组、对象等,不能真正像 Redis 那样处理对象。但是,由于Memcached不用处理过多细节,因此可以更快地响应请求,十分适合负责存储少许简单数据的任务。
如果需要缓存复杂结构,如JSON,则可以使用 Amazon ElastiCache。它基于 Memcached 或 Redis 引擎创建出可扩展、高可用的缓存环境,内部能够进行自动缩放,便于管理诸如 JSON 对象等复杂结构的数据。例如,这是一个利用 Amazon ElastiCache 来缓存一次性 token 的实现:
“`javascript
//Storing a token in ElastiCache
import { ElastiCache } from ‘aws-sdk’;
const elastiCache = new ElastiCache({
endpoint: ‘elasticache.example.com’, // your ElasticCache endpoint
});
elastiCache.set(‘my_token’, ‘kdjfjsif534857’, function(err, res) {
console.log(res);
});
//Get the token from Elasticache
elastiCache.get(‘my_token’, function(err, data) {
console.log(data);
});
Memcached 和 ElastiCache 是最流行的基于内存的替代 Redis 方案,无需购买任何软硬件,而且不用担心安装和运维等问题,可以快速地建立一个集中的存储缓存解决方案,比如利用它们来实现灵活、可靠的会话管理系统。