我即将建立一个新的系统,我想要最大的可用性!我将不得不使用Windows!如何实现高度的可用性?
我会让客户使用webservices与我的系统通话。我也会从周围的系统获取数据。这些数据使用消息传递,MQ系列和MSMQ提供。 系统将产生一些使用队列发回周围系统的数据。
后新的数据已经到了系统中不同的进程将使用这些数据做不同势任务,如打印,写入数据库等
为了实现高可用性我计划有系统的两个版本在两台不同的机器上并行运行。客户端将尝试使用正确响应的第一台服务器。 我认为理想的解决方法是将来自两台服务器中任何一台服务器的输入数据放在COMMON队列中(在第三台机器上?)。队列中的数据可以被两台服务器上的进程拾取(请考虑生产者 - 使用者模式)。
我认为也许NServiceBus会适合我的需要。根据上述我有几个问题。
- 队列可以在两台服务器之间共享吗?我不希望数据卡在服务器上,如果它停下来的话。我希望其他服务器继续处理。
- 不同机器上的两个(或多个)“消费者”/进程是否可以从普通队列中挑选数据?
欢迎任何建议!