它基本上是一个安装在多台PC上的应用程序,每个安装都维护着它自己的数据库,当它们同时启动时(同时连接到同一网络),它与其他数据库同步.
我已经使用简单的套接字连接和自定义缓冲区对此进行了测试,但是希望使应用程序之间的通信符合公认的标准并且还要安全/健壮,而不是试图重新发明轮子.
这个应用程序到应用程序通信的正常/标准方式是什么?我在哪里可以找到更多信息?
此外,还有/可以使用哪些技术来宣传和查找网络上的其他应用程序?
编辑:(提炼我的问题)
下面的gimel指向的pub/sub模型似乎与我需要的一致.然而,它涵盖了很多方面,我真的不知道从这一切中拿走和使用什么.
看起来我需要在两个或更多应用程序找到彼此后建立P2P连接 - 我该怎么做?
如果有可用的示例/教程,请指出它们.实现类似我需要的东西的小型开源项目/模块也将提供服务.
我选择的平台是Linux,但基于Windows的示例也非常实用.
编辑[09-01-06]:
我目前正在查看以下选项:
多播(TLDP-Howto) - 这似乎可行,但我需要更多地研究它.
使用免费的动态DNS服务器,虽然这看起来有点冒险......
使用一些免费的电子邮件工具,例如gmail/yahoo/...,并从那里发送/读取邮件以查找其他应用程序的IP(可以工作,但感觉很脏)
建议使用webservices,但我不知道它们是如何工作的,并且必须对它进行研究
我很感激您对这些选项的看法以及是否有任何示例.遗憾的是,我没有选择使用中央服务器或网站(除非可以保证免费和永久).
[编辑2009-02-19]
(希望我能接受两个/三个答案!我接受的那个答案因为它提供了思路和可能性,而其他人则提供了固定但适用的解决方案.感谢所有回答的人,所有这些都有帮助.)
当我找到/实现我的解决方案时,我将更新这个问题,如果解决方案足够,我将为它创建一个sourceforge项目.(无论如何,这是一个更大的项目中的一个小问题.)
请参阅发布/订阅异步消息传递范例.
一个示例实现是Apache ActiveMQ:
Apache ActiveMQ速度快,支持许多跨语言客户端和协议,带有易于使用的企业集成模式和许多高级功能,同时完全支持JMS 1.1和J2EE 1.4.