Redis在SignalR扩展方面是否比SQL Server更好,它们是否都支持故障转移?

7

在 David Fowler 的 博客 中,SQL Server已被添加到服务总线的扩展提供程序列表中。

我正在将Redis部署在我们的Windows服务器上。根据我所知道的关于Redis的信息,我猜它比使用SQL Server要快得多 - 这个假设合理吗?

如果是的话,Windows版本的Redis如何实现失效转移?

2个回答

12
  • Redis比SQL快大约200倍,主要是因为它是内存型的,并且协议是专门为速度设计的。
  • 如果需要帮助,Redis Cloud现在可在Windows Azure上使用,并且高可用性是服务内置的功能。

声明 - 我是Garantia Data公司的联合创始人兼首席技术官,该公司是Redis Cloud服务背后的公司。


4
基于我对Redis的了解,我猜它将比使用SQL Server快得多 - 这是一个公正的假设吗?
它会比SQL Server更快,因为它针对基于内存的操作进行了优化,但它的速度并不是唯一的优势。支持高级数据结构在处理各种情况时提供了很大的灵活性。
如果是这样,Redis的Windows版本如何实现故障转移? 下载部分有一个非官方的基于Windows的Redis端口链接,但它并不适合生产目的。Redis的官方版本支持复制哨兵具有自动故障转移功能,但很难说这些功能在Windows端口中的状态如何。总的来说,我不建议在Windows机器上使用Redis,而是使用带有Linux发行版的虚拟机并在其中运行它。

是的,我看过Windows端口,但对sentinel功能不清楚。因此,对于生产环境,最好使用一些Linux虚拟机。 我更喜欢将所有内容保留在MS堆栈上。其他选择?如果在Linux上使用Redis,则应在VM上分配多少内存(通常为)并推荐哪个Linux发行版-这适用于大约6000个客户的SignalR简单消息总线?如果仅用于SignalR消息总线,是否真的需要更复杂的数据结构支持? - ElHaix
SignalR可能在底层使用了Redis发布-订阅功能,因此它可以满足需求。关于需要多少内存,很难说,但我猜测如果你只是用它来做SignalR的话,1GB(甚至更少)就应该足够了。至于Linux发行版,我建议使用Ubuntu服务器版。 - yojimbo87
如果在SignalR中使用Windows Azure Service Bus后端平面(http://vasters.com/clemensv/2012/02/13/SignalR+Powered+By+Service+Bus.aspx),我可以使用我们自己的SQL Server虚拟机而不是微软的云吗?还是我应该发另一个问题? - ElHaix
http://stackoverflow.com/questions/13383489/how-to-create-a-local-windows-based-service-bus-outside-of-azure-similar-to-red - ElHaix
在尽可能少的代码更改的情况下,由于我们想要托管所有自己的服务器,Azure路线不是一个选择。既然已经有了使用Redis的文档方法,这可能会更快地进入市场,对吗? - ElHaix
显示剩余2条评论

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接