如何更好地设计库存、订单同步web应用程序



我有一个web应用程序,它显示库存、订单、来自订单托运人的跟踪信息以及跟踪更新。当客户登录时,他会在不同的页面中看到以上所有信息。

我在服务器中有一个基于控制台的应用程序,该应用程序托管4个后台工作人员来执行上述任务并更新数据库。现在,我为每个客户提供了一个控制台应用程序。我这样做是因为无论出于何种原因,控制台应用程序都会因为一个客户的数据而失败,而不应该影响其他客户。

微软是否有更好的方法或任何现有的工具、api、框架来支持这种堆栈?或者我所做的是正确和最好的方法?是否有更稳定的技术可以支持基于订阅的成员资格、脱机数据同步、对用户请求进行排队以及在请求完成时通知用户。

我会看看Azure队列和Webjobs(下面的链接)

使用队列结构,您可以简单地对应用程序进行解耦,并使应用程序只执行需要的操作。然后,您的主应用程序可以将相关和需要的信息放入队列中,然后忘记它

接下来(也许也是其中最关键的部分),您可以编写一个简单的控制台应用程序,该应用程序将在队列存在并准备就绪时运行。这样做的美妙之处在于,您不仅可以让多个网络作业做同一件事(我不建议这样做),而且只需要拥有和维护一个控制台应用程序。如果应用程序崩溃,它将简单地重新启动它(几秒钟内),然后再次返回。

下面,请找到如何制作示例队列和Webjob:的教程链接

http://azure.microsoft.com/en-us/documentation/articles/websites-dotnet-webjobs-sdk-get-started/?rnd=1

最新更新