Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Database 如果Redis';您的应用程序服务器上没有运行?_Database_Redis_Nosql - Fatal编程技术网

Database 如果Redis';您的应用程序服务器上没有运行?

Database 如果Redis';您的应用程序服务器上没有运行?,database,redis,nosql,Database,Redis,Nosql,我的理解是,使用Redis需要将其托管在自己的服务器上。那么,如果存储在其上的数据不是在与应用服务器(例如节点)相同的VM上运行(因此使用相同的RAM),为什么还要使用它呢?您根本不需要在单独的服务器上托管Redis。事实上,应用服务器在同一台服务器上运行诸如Redis或Memcached之类的内存存储来执行简单的缓存任务并不少见 然而,我认为你问题的核心是对内存存储工作原理的根本误解。即使您在与应用程序相同的服务器上运行Redis,您的应用程序也永远无法直接访问Redis用于存储数据的RAM块

我的理解是,使用Redis需要将其托管在自己的服务器上。那么,如果存储在其上的数据不是在与应用服务器(例如节点)相同的VM上运行(因此使用相同的RAM),为什么还要使用它呢?

您根本不需要在单独的服务器上托管Redis。事实上,应用服务器在同一台服务器上运行诸如Redis或Memcached之类的内存存储来执行简单的缓存任务并不少见


然而,我认为你问题的核心是对内存存储工作原理的根本误解。即使您在与应用程序相同的服务器上运行Redis,您的应用程序也永远无法直接访问Redis用于存储数据的RAM块——您仍然需要向Redis实例发送请求以检索数据。将Redis与应用服务器分开托管确实会带来网络延迟,但在访问或修改RAM中的数据方面没有任何区别。

您根本不需要将Redis托管在单独的服务器上。事实上,应用服务器在同一台服务器上运行诸如Redis或Memcached之类的内存存储来执行简单的缓存任务并不少见

然而,我认为你问题的核心是对内存存储工作原理的根本误解。即使您在与应用程序相同的服务器上运行Redis,您的应用程序也永远无法直接访问Redis用于存储数据的RAM块——您仍然需要向Redis实例发送请求以检索数据。将Redis与应用服务器分开托管确实会带来网络延迟,但在访问或修改RAM中的数据方面没有任何区别。

名称“Redis”是远程字典服务器的首字母缩略词-“REmote”部分表示打算通过网络使用它。这里的主要概念是,存储在Redis内存中的数据可以被多个应用程序实例访问,而不是每个应用程序实例都有一个应用程序内存储

也就是说,不需要在单独的服务器上安装Redis,也不需要在多个应用程序实例中使用Redis。另一方面,它很有意义,因为这就是它的设计目的。

名称“Redis”是远程字典服务器的首字母缩略词,“REmote”部分表示它打算通过网络使用。这里的主要概念是,存储在Redis内存中的数据可以被多个应用程序实例访问,而不是每个应用程序实例都有一个应用程序内存储


也就是说,不需要在单独的服务器上安装Redis,也不需要在多个应用程序实例中使用Redis。另一方面,它很有意义,因为这就是它的设计目的。

那么,从存储中检索数据的瓶颈(通过Redis的内存缓解)而不是网络?那么从存储中检索数据的瓶颈(通过Redis的内存缓解)而不是网络?