我们尝试通过
在帐户中运行几个Watson Cloud演示node.js应用程序来测试IBM Bluemix Cloud和Watson Cloud ,我们
注意到以下情况:
在我们的帐户中安装演示应用程序后,它可以正常运行;因为我尚未在Bluemix DevOps工具中打开此应用程序。因此,每次运行此应用程序时,该应用程序都会根据staging_task.log文件执行以下操作:
"" Installing IBM SDK for Node.js (4.5.0)from cache""""
上面的应用程序前端js代码被编写为与此SDK和Node.js版本一起使用。
#稍后,我在我们的帐户中再次制作了上述演示应用程序。它运行没有问题。然后,我只是在Bluemix DevOps工具中打开了上面的应用程序代码,然后保存文件而没有碰到任何代码。然后,此版本的应用程序将无法运行。
此staging_task.log文件显示了以下事实:上一步之后,此版本的应用程序现在将执行此操作:
“”“从高速缓存”“”安装用于Node.js(4.6.2)的IBM SDK
这意味着Bluemix Cloud在上述步骤之后会自动使用较新版本的Node.js和SDK。
*我们在2016年8月左右部署了以下Watson演示应用程序,并且尚未在该应用程序中重新保存任何文件,因此我们猜测该演示应用程序仍在缓存的运行环境中运行(适用于Node.js Verson 4的IBM SDK)。在我们的Bluemix帐户中。因此,此演示应用程序可以在我们的帐户中快速且正确地运行。https://github.com/watson-developer-cloud/conversation-simple
*在完成上述部署之后,Bluemix Cloud和Watson Cloud进行了多次升级。运行环境很多包含用于Node.js Verson 6的IBM SDK。
*在上个月,我们在帐户中部署了上述相同的演示应用程序。我们发现,同一个应用程序的运行速度比上述2016年8月部署慢得多。我们的猜测是,此演示应用程序代码是基于针对Node.js Verson 4的IBM SDK设计的。
已经在此Q中引起了问题。现在,Bluemix Cloud中用于Node.js的IBM SDK可能是版本6,此应用程序可能是基于用于Node.js Verson 4的IBM SDK设计的(此版本不是Package中的Node.js版本。 .json,但IBM SDK版本)IBM Bluemix node.js本机承诺支持
-为什么上述SDK和Node.js会自动升级?
-在决定在Bluemix Cloud中进行升级之前,如何强制该演示应用程序使用相同版本的IBM SDK和Node.js?从而确保我们现有的应用正常运行。
任何想法和建议将不胜感激。
您可以在package.json中定义节点和npm版本
{
"name":"iot-html5-phone",
"version":"0.0.1",
"scripts":{
"start":"node app.js"
},
"dependencies":{
},
"engines":{
"node":"0.10.26"
}
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句