2020年适用于Linux的10个顶级开源缓存工具(2)

作为一个内存中但持久的磁盘数据库,Redis在与内存中数据集配合使用时表现最佳。但是,您可以将其与磁盘数据库一起使用,例如MySQL,PostgreSQL等。例如,您可以在Redis中获取大量写操作的小数据,并将其他数据块保留在磁盘数据库中。

Redis通过多种方式支持安全性:一种是使用“保护模式”功能来保护Redis实例不被外部网络访问。它还支持客户端-服务器身份验证(在服务器中配置密码并在客户端中提供密码)和所有通信通道(例如,客户端连接,复制链接和Redis Cluster总线协议等)上的TLS。

Redis有很多用例,包括数据库缓存,全页缓存,用户会话数据管理,API响应存储,发布/订阅消息传递系统,消息队列等等。这些可以应用于游戏,社交网络应用程序,RSS提要,实时数据分析,用户推荐等。

相关:

2. Memcached

Memcached是一个免费,开源,简单但功能强大的分布式内存对象缓存系统。它是内存中的键值存储区,用于存储小块数据,例如数据库调用,API调用或页面呈现的结果。它可以在类似Unix的操作系统(包括Linux和OS X)上运行,也可以在Microsoft Windows上运行。

Memcached 1.6.3 发布,高性能分布式缓存系统

作为开发人员工具,它旨在通过缓存内容(默认情况下为最近最少使用(LRU)缓存)来提高动态Web应用程序的速度,从而减少磁盘上的数据库负载–它充当以下任务的短期内存应用程序。它提供了最流行的编程语言的API。

Memcached支持将字符串作为唯一的数据类型。它具有客户端-服务器体系结构,其中一半逻辑发生在客户端,另一半发生在服务器端。重要的是,客户了解如何为项目选择要写入或读取的服务器。此外,如果客户端无法连接到服务器,则客户端非常了解该怎么办。

尽管它是一个分布式缓存系统,因此支持群集,但Memcached服务器彼此断开连接(即,它们彼此之间不知道)。这意味着没有像Redis这样的复制支持。他们还了解如何存储和获取项目,管理何时驱逐或重新使用内存。您可以通过添加更多服务器来增加可用内存。

从Memcached 1.5.13开始,它支持通过TLS进行身份验证和加密,但是此功能仍处于试验阶段。

相关:

如何在Ubuntu 18.04和16.04 LTS上安装Memcached缓存系统  https://www.linuxidc.com/Linux/2020-03/162742.htm

3、Apache Ignite

Apache Ignite是一个免费的开源、易于扩展的分布式键值存储,缓存和多模型数据库系统,它提供了强大的处理API,可用于在分布式数据上进行计算。它也是一个内存中的数据网格,可以在内存中使用,也可以与Ignite本机持久性一起使用。它可以在类似UNIX的系统(例如Linux和Windows)上运行。

gridgain_vs_hazelcast_benchmarks_put_chart

它具有多层存储,完整的SQL支持和跨多个群集节点的ACID(原子性,一致性,隔离性,耐久性)事务(仅在键值API级别上受支持),共处一地处理和机器学习。它支持与任何第三方数据库(包括任何RDBMS(例如MySQL,PostgreSQL,Oracle数据库等)或NoSQL存储)的自动集成。

重要的是要注意,尽管Ignite用作SQL数据存储,但它并不完全是SQL数据库。与传统数据库相比,它可以明显地处理约束和索引。它支持主索引和辅助索引,但是只有主索引用于强制唯一性。此外,它不支持外键约束。

Ignite还通过允许您在服务器上启用身份验证并在客户端上提供用户凭据来支持安全性。还支持SSL套接字通信,以在所有Ignite节点之间提供安全连接。

Ignite有许多用例,包括缓存系统,系统工作负载加速,实时数据处理和分析。它也可以用作以图形为中心的平台。

相关:

GridGain 确认 Apache Ignite 性能是 Hazelcast 的 2 倍 

4、Couchbase Server

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/d127fb1d0df46f02abe7335ee8b23298.html