其实这不是合并问题,这很棘手。让我将要制作的服务器命名为“HOOLA”
这个“HOOLA”包含 HTTP 服务器(例如 Apache HTTP 服务器)和 XMPP 服务器(例如 Openfire)我们假设“HOOLA”分配了 123.22.125.22 IP 地址。
当用户向 123.22.125.22 发出 HTTP 请求时,“HOOLA”会将此请求转交给内部的 HTTP 服务器。当用户向 123.22.125.22 发出 XMPP 请求时,“HOOLA”会将此请求转交给内部的 XMPP 服务器。两者都会将自己的响应返回给用户。
这就是我需要做的。但我不知道该叫什么名字,而且我找不到任何信息,因为我想不出这个作品的一些关键词。
我想要的最佳解决方案是“HOOLA”运行并且只有一个进程。我认为我应该修改 Apache HTTP Server 或 Openfire 的源代码以实现此解决方案。
我想要的第二个最佳解决方案有三个进程,“HOOLA”、“Apache HTTP Server”、“Openfire”。其中“HOOLA”控制所有请求和响应流。我认为我不需要为这个解决方案修改 Apache HTTP Server 或 Openfire 的源代码。
如果您能告诉我应该使用什么关键词来搜索,我将不胜感激。
答案1
我不确定“内部 […] 服务器”是指您私有网络中的单独机器,还是指在同一台机器上运行的进程。
同一台机器
在同一台机器上运行两个服务器应该没有问题,因为 HTTP 和 XMPP 使用不同的 TCP端口号:HTTP 为 80,HTTPS 为 443,5269XMPP。因此,只需启动两个内部服务器,并保留它们的默认端口号配置,一切就都可以正常工作。
独立的机器
让 HOOLA 成为伪装路由器/防火墙。这样,它会将一个端口的 TCP 请求转发到一个服务器,将另一个端口的 TCP 请求转发到另一个服务器,并阻止所有其余的请求。这两项服务将在单个 IP 下向公众提供,而不同的内部 IP 地址将被隐藏(“伪装”)。