该应用程序是客户端服务器模型。
客户端应用程序具有客户将在日常交易中使用的本地数据库。
服务器拥有另一个数据库,其中包含来自客户端的综合信息以及其他一些关键信息。
客户端和服务器需要周期性地进行通信:数据迁移、从服务器访问数据(客户端不可用)等。
客户端或服务器都没有静态 IP 地址。
如何确保客户端可以无缝连接到服务器?
由于业务需求,将所有内容都放在一个位置(例如,在云中或在数据中心)不是一种选择。
该应用程序是客户端服务器模型。
客户端应用程序具有客户将在日常交易中使用的本地数据库。
服务器拥有另一个数据库,其中包含来自客户端的综合信息以及其他一些关键信息。
客户端和服务器需要周期性地进行通信:数据迁移、从服务器访问数据(客户端不可用)等。
客户端或服务器都没有静态 IP 地址。
如何确保客户端可以无缝连接到服务器?
由于业务需求,将所有内容都放在一个位置(例如,在云中或在数据中心)不是一种选择。
如果只有一台服务器,为什么不能有静态 IP?
它总是有一个外部可见的IP吗?然后动态 DNS 适合您 - 服务器会在 IP 地址更改时通知 DNS 服务器。
如果他们都没有可公开访问的地址,您将需要一个调解器(代理),它有。现在,这个中介要么知道数据,要么将数据加密。
这样的中介可以是任何东西,例如 XMPP 服务器,其中服务器将被分配一个特定的 JID,如 server@mydomain,客户端将被分配给他们自己的 ID(如 customername@mydomain),或者可能是一些 PubSub 解决方案,或者它甚至可以是基于电子邮件的解决方案(是的,这很脏),客户端和服务器都定期读取他们的邮箱。
我想大多数 ESB 解决方案也可以。
主要的是,为了在 Internet 上创建客户端-服务器架构,服务器(或通过自己的应用程序特定协议帮助访问服务器的中介)必须是公开可访问的。