我在openshift中创建了一个节点应用程序,我通过SSH连接,我能够推送我的代码,我可以更改server.js代码以获得简单的hello世界。
Server.js
#!/bin/env node
var http = require('http');
var serverIp = process.env.OPENSHIFT_NODEJS_IP;
var port = process.env.OPENSHIFT_NODEJS_PORT || 8080;
//creating server
var server = http.createServer(function(req, res) {
res.writeHead('Content-Type', 'text/plain');
res.end('Simple example!!');
});
//listening
server.listen(port, serverIp, function() {
console.log('Server started on port ' + port + ' IP: ' + serverIp);
});
推送这个新代码时,我没有收到任何错误。 这是 package.json 文件
{ "name": "Hello_world",
"version": "1.0.0",
"description": "Hello world",
"engines": {
"node": ">= 0.6.0",
"npm": ">= 1.0.0"
},
"devDependencies": {},
"bundleDependencies": [],
"private": true,
"scripts": {
"start" : "node server.js"
},
"main": "server.js"
}
当我这样做时,应用程序变得非常慢(比如等待2/3分钟),这是链接。 此处{http://avalecia-minisis.rhcloud.com/]enter代码1 但是当我更改原始代码时,一切都很好......:/
我不知道问题出在哪里。
答案 0 :(得分:2)
部署到OpenShift时,您的应用程序的构建过程可以是optimized (or tuned) in a variety of ways。
如果您希望尽量减少部署之间的停机时间,可以尝试启用the hot_deploy
feature:
mkdir .openshift ; mkdir .openshift/markers ; touch .openshift/markers/hot_deploy
git add .openshift/markers/hot_deploy
git commit -m "enabling the hot_deploy marker to minimize downtime on OpenShift"
git push
Checking in your node_modules
folder也会对构建时间产生重大影响。
启用NPM_CONFIG_PRODUCTION
是另一种可能有用的方法(请参阅:Run npm install --production on OpenShift)