当前位置: 首页 > 面试题库 >

当我将PostgreSQL作为Django的数据库时,为什么要使用Redis?[关闭]

沈宇定
2023-03-14
问题内容

按照目前的情况,这个问题不适合我们的问答形式。我们希望答案会得到事实,参考或专业知识的支持,但是这个问题可能会引起辩论,争论,民意调查或扩展讨论。如果您认为此问题可以解决并且可以重新提出,请访问帮助中心以获取指导。

7年前关闭。

我有一个Django应用程序,该应用程序当前托管在Amazon的EC2服务上。我有两台计算机,一台使用Django应用程序,另一台使用我的PostgreSQL数据库。到目前为止,它是坚如磐石。

许多消息来源声称我应该在堆栈中实现Redis,但是用Django和Postgresql实现Redis的目的是什么?例如,如何在Django代码中实现Redis?

如何在PostgreSQL中使用它?

这些都是我一直试图寻找答案的问题,所以我来这里的目的是希望从最大和最好的问题中获得答案。我真的很感谢任何答案。

谢谢


问题答案:

Redis是一个在RAM内存中运行的键值存储系统,就像一个“轻型数据库”,并且由于它在RAM内存级别工作,因此与对PostgreSQL或任何其他传统的Relational
Database
进行读写相比,其速度要快几个数量级。Redis是一个所谓的NoSQL数据库,与Mongo和其他许多数据库一样。它不能直接替换PostgreSQL,您仍然需要永久存储,但是它与关系数据库一起作为备用存储系统使用。如果您的IO操作开始变得昂贵,并且可以用于快速计算和基于键的查询,那么可以使用Redis。

您可以使用包装器将其包含在Django / Python项目中,例如redis-
py

Redis的安装和使用非常简单,您可以在redis-py上查看示例。Redis独立于任何关系数据库,因此您可以将其用于永久和/或临时缓存,计算或存储值。它可以帮助减少对PostgreSQL的查询,最后您可以按自己的方式使用它,并利用它来改善应用程序/体系结构。



 类似资料:
  • 随着互联网技术的高速发展,预计2020 年底全世界网民的数量将达到 50 亿。网民数量的增加带动了网上购物、微博,网络视频等产业的发展。那么,随之而来的就是庞大的网络数据量。 大量的数据正在不断产生,那么如何安全有效地存储、检索,管理它们呢?于是对数据的有效存储、高效访问、方便共享和安全控制等问题成为了信息时代一个非常重要的问题。 使用数据库可以高效且条理分明地存储数据,它使人们能够更加迅速和方便

  • 问题内容: 谁能帮助解释为什么JNDI应该是公开数据库/ jms等服务的首选方式? 我遇到的所有帖子都谈到了不必加载特定的驱动程序管理器,从连接池中受益等优点,但是可以通过在属性文件中指定驱动程序管理器并使用反射来轻松实现。 连接池也可以通过将正确的实现方式通过spring或其他方式连接到应用Bean中来实现。 那么,为什么使用JNDI会更好呢? 问题答案: 当您必须在不同环境之间移动应用程序时,

  • 问题内容: 我想将Redis用作数据库,而不是缓存。根据我的(有限的)理解,Redis是一个内存数据存储。使用Redis有什么风险,如何减轻它们? 问题答案: 您可以通过多种不同方式将Redis用作权威存储: 打开 AOF (仅附加文件存储),请参阅AOF文档。这将实时记录针对您的数据集执行的所有Redis命令的日志。 使用主从复制运行Redis,请参阅复制文档。如果您的一个实例发生故障,这将使您

  • 本文向大家介绍为什么要用 redis ?为什么要用缓存?相关面试题,主要包含被问及为什么要用 redis ?为什么要用缓存?时的应答技巧和注意事项,需要的朋友参考一下 主要从“高性能”和“高并发”这两点来看待这个问题。 高性能: 假如用户第一次访问数据库中的某些数据。这个过程会比较慢,因为是从硬盘上读取的。将该用户访问的数据存在缓存中,这样下一次再访问这些数据的时候就可以直接从缓存中获取了。操作缓

  • 如果我可以使用在一行中打印所需内容,那么我很难理解为什么我需要。

  • 问题内容: 具体来说,在关系数据库管理系统中,为什么我们在创建时需要知道列的数据类型(更可能是对象的属性)? 对我来说,数据类型感觉就像是一种优化,因为可以以多种方式实现一个数据点。将语义角色和约束分配给数据点,然后让引擎在内部检查和优化哪种数据类型最能为用户服务会更好吗? 我怀疑这是繁重的工作,为什么只问用户而不是做工作就更容易了。 你怎么认为?我们要去哪里?这是现实的期望吗?还是我有一个错误的