标签:nodejs

发表于
NodeJS默认64位机器GC是有1.4G内存,所以,如果是512或者128兆内存的小vps,立时就不灵了。 需要加参数 --max_old_space_size=128 --optimize_for_size 搞定。...
发表于
国外的npm registry由于受到墙的影响,所以很不稳定。 那么这种情况下怎么安装比较快呢? 首先得选好国内的源: 淘宝源:registry.npm.taobao.org cnpm源:registry.cnpmjs.org 第二,指定安装源: npm --registry=https://registry.npm.taobao.org \ --cache=$HOME/.npm/.cache/cnpm \ --disturl=https://npm.taobao.org/mirrors/node \ --userconfig=$HOME/.cnpmrc npm获取配置最高优先级的方式是: npm install --proxy http://username:password@server:port 次一级的方式是环境变量: npm_config_...
发表于
缺省jenkins的execute shell的方式是: sh -xe hudsonxxx.sh 说明一下: -e 打开开关 +e 关上开关 -x 打开开关 +x 关上开关 详细解释一下: set -e 表示一旦脚本中有命令的返回值为非0,则脚本立即退出,后续命令不再执行; set -x 表示执行指令后,会先显示该指令及所下的参数。 set -o pipefail表示在管道连接的命令序列中,只要有任何一个命令返回非0值,则整个管道返回非0值,即使最后一个命令返回0. 注意在引用nvm以及meteor的环境中,要设置set +e 否则source nvm.sh的过程容易出错!...
发表于
1.安装辅助包 apt-get install build-essential openssl libssl-dev curl 2.增加一个用户组,这个组的成员可以控制nvm groupadd dev 3.git克隆nvm的代码 git clone https://github.com/creationix/nvm.git /opt/nvm 4.建立公用nvm目录 mkdir /usr/local/nvm 5.建立公用npm目录 mkdir /usr/local/node 6.设置好权限,使dev组可以存取以上两个目录 chown -R root:dev /usr/local/nvm chmod -R 775...
发表于
启动所有的程序后,保存当前所有程序状态,会生成一个dump.pm2文件 pm2 save 从pm2 save中恢复所有程序状态 pm2 resurrect pm2有Keymetrics这个免费的监控平台,添加监控: pm2 link [YOUR_SECRET_KEY] [YOUR_PUBLIC_KEY] 杀掉pm2的God Daemon pm2 kill 指定配置文件启动 pm2 start pm2-env.json 缩放实例的数量: pm2-meteor scale +2 指定程序名: pm2 start app.js --name "api"...
发表于
最近工作比较多在Ubuntu平台下。 用visualenv和nvm比较多,但是nvm遇到的问题比较多。 比如jenkins调用nvm就比较麻烦 如何用root用户给所有用户装上nvm呢? 首先安装基本依赖包: apt-get install build-essential openssl libssl-dev curl 建个公共组: groupadd dev 下载nvm git clone https://github.com/creationix/nvm.git /opt/nvm 建立两个目录,一个装nvm,一个是nodejs mkdir /usr/local/nvm mkdir /usr/local/node chown -R root:dev /usr/local/nvm chmod -R 775 /usr/local/nvm...
发表于
在自建ghost blog的elasticsearch的文章中,我们已经看到了回调地狱(callback hell!!!),这真是个恐怖至极的东西。 应该有更优雅的方式来直接把ghost blog的内容导入elasticsearch吧。 我们来看一看: 先装需要的库,这里假设ghost用得是sqlite3的库,如果是mysql,需要修改下! # mkdir /home/ex # cd /home/ex # npm install async # npm install request # npm install sqlite3 # cat /home/ex/run02.js var util = require("util"); var sqlite3 = require("sqlite3"); var async = require("async"); var request = require("request"); function...
发表于
这是一篇长文...... 前面写了好几篇elasticsearch的文章,这跟linux系统管理看起来毫不沾边啊。理由很朴素,想给自己的Ghost blog加个搜索引擎。试了几个都不如意,于是干脆搭建一个elasticsearch自用。 鉴于生产环境的主程序和elasticsearch通常是分开的。不可能直接主程序调用elasticsearch的9200进行查询,通常是会在中间加一层proxy代理,通过api查询。所以有了之前的flask代理api。 现在我们已经从 免费的elasticsearch 有了自己的服务器,我们怎么从Ghost blog来建立Elasticsearch的搜索引擎呢? 第一步:添加个博客的url,列出所有文章: 首先添加ghost的routes,使得能看到所有文章 # vi core/server/routes/frontend.js ... // redirect to /ghost and let that do the authentication to prevent redirects to /ghost//admin etc. router.get(/^\/((ghost-admin|admin|wp-admin|...