【发布时间】:2013-12-08 12:20:50
【问题描述】:
我目前正在开发一个需要高度可扩展的社交网络应用程序。
我一直在阅读有关发布/订阅模式(消息总线)的信息,并且正在努力理解正确的用例场景 - 什么时候合适,什么时候过度杀伤?
例如:
- 用户在需要保存到数据库的表单上输入信息的站点有几个区域;
- 当发生数据库保存并且必须向一个或多个用户发送电子邮件通知时。
另外,对于保存场景,如果我要发布/订阅,我想给用户友好的消息,让他们知道他们的数据在保存过程完成后保存在表单上
方法。
完成特定任务后,如何将成功/失败消息返回到 UI?
哪些场景是发布/订阅模式的理想候选者?保存基本表单数据库似乎有点过头了。
【问题讨论】:
-
试试Programmers 我认为这将是更多的话题。
-
视情况而定。您的电子邮件通知示例就是一个很好的例子。如果您只是发送电子邮件,不妨将其添加到流程中。但是,假设您想提供不同的通知方式,例如向手机推送消息或通知页面上的用户(如果他当前已登录)。在这些情况下,您可以使用 pub/sub 来实现这些并将它们添加到系统中而无需触摸现有功能。总体而言,它只是在您需要它的领域为您提供了更多的灵活性。如果您不需要灵活性,那就是开销和矫枉过正。
-
我认为基本的保存操作会是矫枉过正是否正确。
标签: c# design-patterns scalability social-networking publish-subscribe