gpt4 book ai didi

networking - 如何通过网络在私有(private)应用程序之间进行私有(private)通信?

转载 作者:行者123 更新时间:2023-12-02 05:25:20 27 4
gpt4 key购买 nike

它基本上是一个安装在多台 PC 上的应用程序,每个安装维护它自己的数据库,当它们同时启动(连接到同一网络)时与其他的同步。

我已经使用简单的套接字连接和自定义缓冲区对此进行了测试,但我想让应用程序之间的通信符合公认的标准并且安全/稳健,而不是试图重新发明轮子。

执行此应用到应用通信的正常/标准方法是什么?我在哪里可以找到更多信息?

此外,可以使用哪些技术来宣布和查找网络上的其他应用程序?


编辑:(完善我的问题)

下面 gimel 指向的 pub/sub 模型似乎符合我的需要。然而,它涵盖了很多领域,我真的不知道要从中获取和使用什么。

一旦两个或多个应用程序相互发现,我似乎还需要建立 P2P 连接 - 我该怎么做?

如果有可用的示例/教程,请指出。实现我需要的东西的小型开源项目/模块也可以使用。

我选择的平台是 Linux,但基于 Windows 的示例也非常有用。


编辑 [09-01-06]:

我目前正在考虑以下选项:

  1. multicasting (TLDP-Howto) - 这似乎可行,但我需要进一步研究它。
  2. 使用免费的动态 DNS 服务器,虽然这看起来有点冒险......
  3. 使用一些免费的电子邮件工具,例如gmail/yahoo/...,并从那里发送/读取邮件以查找其他应用程序的 IP(可以工作,但感觉很脏)
  4. 有人建议使用网络服务,但我不知道它们是如何工作的,必须研究一下

如果您有任何示例,我将不胜感激您对这些选项的意见。不幸的是,我没有使用中央服务器或网站的选项(除非可以保证它是免费和永久的)。

[编辑 2009-02-19]

(希望我能接受两个/三个答案!我接受的一个是因为它提供了思路和可能性,而其他人则提供了固定但适用的解决方案。感谢所有回答的人,所有这些都有帮助。 )

当我找到/实现我的解决方案时,我会更新这个问题,如果解决方案足够,我会为它创建一个 sourceforge 项目。 (在任何情况下,这都是一个大得多的项目中的一个小问题。)

最佳答案

参见 Publish / Subscribe异步消息传递范式。

一个示例实现是 Apache ActiveMQ :

Apache ActiveMQ is fast, supports many Cross Language Clients and Protocols, comes with easy to use Enterprise Integration Patterns and many advanced features while fully supporting JMS 1.1 and J2EE 1.4.

关于networking - 如何通过网络在私有(private)应用程序之间进行私有(private)通信?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/390944/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com