Php 使用cURL、HTTPS-POST的服务器到服务器通信
我正在实现(可能)如下所示的服务器到服务器通信: 客户端(web浏览器)(web应用)服务器(服务客户端)(服务应用)中央服务器 有些客户端请求在本地处理,有些作为远程服务调用(不是RPC)执行。对中央服务器的请求被格式化为HTTPS POST,然后使用cURL发送;服务器用适当的JSON消息进行回复 问题是,我使用的是HTTPS,每次执行服务查询时,证书验证都需要一些额外的时间。可以重用cURL句柄并发送“keep-alive”连接头,但是。。在当前的MVC实现中,每个新的客户机请求都会产生新的web应用实例(以及相应的服务客户机)——这意味着重新初始化句柄,并重新建立https连接 因此,出现了以下问题:Php 使用cURL、HTTPS-POST的服务器到服务器通信,php,curl,https,security,Php,Curl,Https,Security,我正在实现(可能)如下所示的服务器到服务器通信: 客户端(web浏览器)(web应用)服务器(服务客户端)(服务应用)中央服务器 有些客户端请求在本地处理,有些作为远程服务调用(不是RPC)执行。对中央服务器的请求被格式化为HTTPS POST,然后使用cURL发送;服务器用适当的JSON消息进行回复 问题是,我使用的是HTTPS,每次执行服务查询时,证书验证都需要一些额外的时间。可以重用cURL句柄并发送“keep-alive”连接头,但是。。在当前的MVC实现中,每个新的客户机请求都会产生新
您是否测量了HTTPS连接的开销?这真的很重要吗 如果希望避免对每个请求进行握手,可以尝试在服务器和中央服务器之间建立持久的安全连接 您可以通过SSH隧道、VPN等实现这一点
编辑:在中央服务器上维护保持活动连接的本地反向HTTP代理也是一个选项。是的,开销是HTTP的3到5倍。此外,如果使用SSH隧道,它将类似于套接字实现。据我所知,这与当前使用cURL(以及类似RESTful的协议)的想法相矛盾。隧道可能是两台服务器之间的虚拟网络,而不一定是与服务的直接连接。还可以看看本地反向代理解决方案。1。几乎所有的请求都应该立即执行(或者类似的事情),所以恐怕队列不是一个选项。