连接池的REST调用从Bluemix nodejs应用程序到数据中心服务通过Datapower



嗨,我们在Noedjs上部署了一个UI组件到Bluemix,它对部署在Data-center中的服务进行REST服务调用(JSON/XML)。这些调用将作为安全代理通过IBM Data Power网关。
Data Power建立一个到调用方的HTTPS互认证连接(使用脱机交换的证书)。虽然这种方法是安全的,但是设置起来很耗时,而且如果为每个服务请求设置此连接,它将为最终用户创建一个缓慢的响应。为了优化响应时间,我们正在寻找任何可以在部署在Bluemix和DataPower安全代理上的nodejs应用程序之间池连接的解决方案。有人有这方面的经验吗?

  1. 关于"它是耗时的设置",在datapower中,你可以在你的服务前面创建一个多协议网关(MPGW)作为路由器。MPGW将根据服务调用的URI匹配它们,并相应地对它们进行路由。在这个场景中,您只需要在Bluemix Cloud Integration服务中配置一个端点,就可以使用您的所有服务。这种方法的一个缺点是很难控制对特定内部部署服务的访问,因为它们都将作为单个服务暴露给您的Bluemix应用程序。

  2. 关于优化响应时间,您认为瓶颈在哪里?如果tcp连接的建立造成太多的开销,你应该能够配置你的Node.js应用程序使用或通过keepalive设置重用持久连接,或者你可以查看设置一个连接池,为你管理(例如https://www.npmjs.com/package/generic-pool似乎是一个流行的选择)。在数据电源端,确保根据您的需求设置前/后端持久超时:http://www-01.ibm.com/support/knowledgecenter/SS9H2Y_7.2.0/com.ibm.dp.doc/mpgw_availableproperties_serviceview.html?lang=en

datapower中的其他超时值可以在http://www-01.ibm.com/support/docview.wss?uid=swg21469404

中找到。

相关内容

最新更新