一尘不染

ServiceStack.Server:与ServiceStack库集成的Redis服务器?

redis

我想澄清一下我是否正确理解了ServiceStack.Server功能。

此页面上,描述了ServiceStack.Server
API,并指出

创建一个Redis MQ服务器,在其自己的后台线程上处理每个消息

当我以为这是一台独立的Redis服务器时是否正确?因此,如果我使用下面的代码启动它,则我正在运行一台功能齐全的Redis服务器,这意味着无需安装Redis软件Memurai等。

因为,如果我遵循此示例,并且没有其他正在运行的Redis服务器,则会得到

‘由于目标机器主动拒绝连接,因此无法建立连接。127.0.0.1:6379’

这条线

var redisFactory = new PooledRedisClientManager("localhost:6379");

启动客户端并尝试连接到6379,自然失败。在redisFactory然后在线路创建MQSERVER,这是奇数我使用:

var mqHost = new RedisMqServer(redisFactory, retryCount: 2);

如果这是一个独立的MQ服务器,那么在创建和启动服务器之前创建客户端将无法正常工作,这使我认为这不是Redis MQ服务器吗?


阅读 284

收藏
2020-06-20

共1个答案

一尘不染

我当时以为这是一台独立的Redis服务器时是否正确?

这是一个不正确的结论,Redis Server是分布式内存数据结构服务器,就像其他分布式服务器(如RDBMS或MQ
Broker)一样,它在其自己的隔离网络进程中运行。

所有ServiceStack Redis库都连接到Redis服务器,Redis
MQ
类似于所有其他分布式ServiceStack
MQ
提供程序,它们处理发送到代理的消息,在这种情况下,Redis
MQ使用Redis Server作为其代理。该声明:

创建一个Redis MQ服务器,在其自己的后台线程上处理每个消息

说明Redis MQ如何处理接收到的消息,其中每种不同的消息类型(即,请求DTO类型)在其自己的后台线程中处理消息。

2020-06-20