【发布时间】:2015-01-27 18:17:43
【问题描述】:
假设在两个不同的服务器上有两个服务器端应用程序。
服务器 #1,IP 地址 1.2.3.4,包含一个带有 MySQL 数据库的 PHP Web 应用程序。
服务器 #2,IP 地址 5.6.7.8,包含一个带有 MongoDB 数据库的 NodeJS 应用程序。
PHP 应用程序如何“命令”NodeJS 应用程序(反之亦然)执行某些操作,例如:
- “请将此数据保存在您的数据库中”,或
- “我想从您的数据库中检索数据,其中 some_id = 123”
这些内部通信应该是安全的,这意味着除了两台服务器之外没有人可以执行它们。
我认为这可以通过简单的 HTTP POST / GET 请求来实现。
例如,NodeJS 应用程序向http://1.2.3.4/do_something.php 发送带有参数的 POST 请求
或者 PHP 应用程序将 GET 请求发送到 http://5.6.7.8/retrieveSomething
但我认为它不安全,因为 URL 是公开的。 (如果我错了,请纠正我)
我什至不知道这个问题的谷歌搜索关键字。
是网络服务吗? SOA? RPC?
【问题讨论】:
-
一个非常简单的方法是JSON-RPC,它是您可以使用的最薄、最严肃的标准化方法。这是一个选择吗?
-
谢谢,这看起来是一个可行的选择,我会试试的。