服务到服务数据交换的最简单架构
Simplest architecture for service to service data exchange
我有一个带有 Web 服务 (.Net) 的 public 服务器,可以从不同的移动应用程序收集数据和上传文件,我需要将它与内部 Intranet 服务器同步。
Intranet 服务器受到防火墙和组织策略的深度保护。
我认为这是可以使用消息和代理的非常常见的场景,例如 Rabbitmq 或 Nservicebus,但我不是这方面的专家。
由于数据只能以单向和异步的方式从外部服务器发送到内联网,所以我想不要在架构中添加另一层间接层,而只是使用服务器公开的 Web 服务来服务器通信。
方法如下:
- Intranet windows 服务会以不同的预定时间间隔定期轮询外部 Web 服务,以了解是否有新数据要获取(可能从某个时间点开始)
- Web 服务将使用新数据和文件的列表进行响应
- windows 服务将迭代调用以获取要插入 Intranet 中的所有数据并下载上传的文件。
这种方法有什么风险?如果外部 Web 服务只响应 link 包含所有数据和文件的巨大压缩文件响应会更好吗?
对于如此简单的场景,我是否也应该使用 RabbitMq 之类的东西?
如果您真的要处理文件,您可能需要考虑更简单的事情。 FTP(更具体地说是 sftp)可能更符合您的需求,并且实施起来更简单。
我有一个带有 Web 服务 (.Net) 的 public 服务器,可以从不同的移动应用程序收集数据和上传文件,我需要将它与内部 Intranet 服务器同步。
Intranet 服务器受到防火墙和组织策略的深度保护。
我认为这是可以使用消息和代理的非常常见的场景,例如 Rabbitmq 或 Nservicebus,但我不是这方面的专家。
由于数据只能以单向和异步的方式从外部服务器发送到内联网,所以我想不要在架构中添加另一层间接层,而只是使用服务器公开的 Web 服务来服务器通信。
方法如下:
- Intranet windows 服务会以不同的预定时间间隔定期轮询外部 Web 服务,以了解是否有新数据要获取(可能从某个时间点开始)
- Web 服务将使用新数据和文件的列表进行响应
- windows 服务将迭代调用以获取要插入 Intranet 中的所有数据并下载上传的文件。
这种方法有什么风险?如果外部 Web 服务只响应 link 包含所有数据和文件的巨大压缩文件响应会更好吗?
对于如此简单的场景,我是否也应该使用 RabbitMq 之类的东西?
如果您真的要处理文件,您可能需要考虑更简单的事情。 FTP(更具体地说是 sftp)可能更符合您的需求,并且实施起来更简单。