我必须创建一个通知系统,它会提醒用户其他人做了什么。如果其中一个用户添加了一些订单,另一个应该将其视为警报或类似的东西。 所以,我的问题是,哪种方式最好这样做。我应该使用TTimer并每隔5分钟询问一次,或者您知道更好的想法吗?
抱歉英语极度不好......我来自波兰;)
答案 0 :(得分:2)
通知是发布/订阅通信模型的用例。也许你可以在你的应用程序中添加一个面向消息的中间件,并实现类似于“聊天”系统的东西。这样的系统可以使用中央服务器将消息(文档,命令......)转发到所有连接的客户端。对于技术背景信息,术语message oriented middleware是一个起点。
通知的现有“消息代理”(其中许多是开源代码)的优点是:
由于它们的通用设计,它们可以解决许多类似的问题,这些问题比使用数据库更难实现(或消耗更多资源)。它们可以使分布式系统的设计更加容易。对于高级理解和实用指南,Gregor Hohpe的书籍和网站Patterns and Best Practices for Enterprise Integration是一个良好的开端。
答案 1 :(得分:1)
首先我认为你的英语很好:) 我使用Delphi 2007和Bold编写的多用户应用程序。一个功能是用户可以互相通知。 Bold有一个非常强大的内置更新机制。不幸的是,这些日子并不容易变大,因为它不是出售。您也可以尝试自己实现所需。尝试搜索Delphi observer pattern。 总结这种模式是关于列表中的寄存器观察者。当发生某些事情时,应通知观察者有关发起者通知列表中的所有观察者。
答案 2 :(得分:0)
如果您的用户位于同一本地网络上,则可以使用Mailslots使用推送通知。它将是即时的,轻量级的。