BMCD由于不想再附加一个MongoDB的依赖,于是选用了SQLite作为数据库。不过手写SQL语句实在是太烦了,于是我又选用了Sequelilze作为SQLite的ORM模型处理。
折腾了一天之后稍微总结一下它的用法
var Sequelize = require('sequelize');
var sequelize = new Sequelize('bmcd', null, null,
...BMCD由于不想再附加一个MongoDB的依赖,于是选用了SQLite作为数据库。不过手写SQL语句实在是太烦了,于是我又选用了Sequelilze作为SQLite的ORM模型处理。
折腾了一天之后稍微总结一下它的用法
var Sequelize = require('sequelize');
var sequelize = new Sequelize('bmcd', null, null,
...响马回复了
@孢子响马:同时你这个测试中大家的 mongodb 都是一个连接,因此其实在请求 mongodb 时是串行的,所以你这个其实是在测试 mongodb 的 qps
于是改了一下代码,创建了一个500连接的连接池
var db = require('db');
var http = require('http');
var connectPool = [];
...突然想到Node.JS中有种很常用的优化方法,是利用异步的特性不管执行是否成功,先返回HTTP响应,于是按照这种方法我又改了一下代码
var http = require('http');
var mongodb = require('mongodb').MongoClient;
mongodb.connect('mongodb://localhost/fibvsnode?maxPoolSiz
...最近同学在写学校的一个公共API,用的是nodejs的restify框架。完成基础之后开始压测,QPS只有20……
20……对于一个公共API来说不是调用一下就死的事情么。第一怀疑对象自然是数据库了,抽出业务逻辑然后压数据库,QPS终于上升了,达到了30,后端是oracle的数据库,node的oracle这个包不支持连接池。换成另外的支持连接池的包也无济于事。
后来突然想起来为了省事,node...
因为最近开始用generator处理异步逻辑了,所以遇到需要循环的地方如果使用数组,数组里再有异步逻辑的话使用forEach再带一个函数进去是无法当成异步逻辑处理的,所以就想用for of循环做枚举遍历,顺手写了个小测试当做性能对比
'use strict'; let arr = []; for(let i =0;i<10000000;i++){ arr.push(i); } le...
故障最初表现是这样的,在客户端正常连接一段时间之后,无任何征兆的服务端会突然触发close事件从而进行连接断开的清理工作,将Redis和Mysql内的在线数据都清理掉了,导致推送时找不到该设备,但是客户端直接请求服务端的数据,服务端均能够正确响应。
最初以为是node的ws模块有bug,在触发close事件的时候并没有真正关闭连接,所以在close事件触发的时候直接调用了socket._sock...
网上见过的对比都是只有一个Hello, world!的输出。其实这毫无意义啊。于是打算自己敲一个对比
大致思路是收到http请求后去mongodb插一条数据,插完返回一段json,用来简单模拟一个创建的请求,以求更贴近业务
先说一下运行环境
CentOS 6.5 X86_64
双路Xeon X5470
16G内存
然后贴代码
var db = require('d
...一大早微博被这条轮了,然后闲的无聊也去看了一下,发现支持JS,于是去刷题了。题目都比较水
Part 1
https://paiza.jp/poh/enkoi
题目大意抛去剧情就是普通的加法
第一行是下面总共有几个数字
然后把它们加起来ˊ_>ˋ
process.stdin.resume();
process.stdin.setEncoding('utf8');
var lines = 0;
...在win8下使用需要编译的npm包时,如果用户文件夹是中文的,可能会遇到“error MSB4025: 未能加载项目文件,给定编码中的字符无效”错误。网上看了一圈有两种方案,
其一是修改node-gyp的代码,转换文件编码
http://my.oschina.net/tearlight/blog/279797
另一种就是修改注册表,然后修改用户文件夹改到一个英文目录中。
但是修改用户文件夹...