NodeJS
paip.最好的脚本语言node js 环境搭建连接mysql
#====下载node...走十一个exe..容易的..1
#0----Hello world .js 2
#---------模块的建立而且使用..2
1. ##--调用 (载入文件模块---普通文件模块3
2. ) 3
3. ##---载入内置模块3
4. ##----三、载入文件目录模块3
5. ##--四、载入node_modules里的模块4
----第三方模块的下载跟安装4
#---------调用mysql4
-----安装npm7
#-------------调试node-inspector/eclipse /webstorm 7
----有些错误的解决7
---node.js,优点 8
6. 不要特地ide view..hh,这个比php,python要好.8
7. node.js, 高并发(最重要的优点)(都是异步调用)8
8. 前台后台统一拉..9
9. 发展效率高,是java的1倍,跟个php差不多.9
10. 总而言之,NodeJS适合运用在高并发、I/O密集、少量业务逻辑的场景9
11. JavaScript也简单易学9
---node js 缺点9
12. 标准库太小.一瓦库要下载.9
13. 资料太少,生态系统还没建立9
14. 没默认调试ide支持9
15. 缺点:1. 不适合CPU密集型应用;9
16. 2. 只支持单核CPU,不能充分利用CPU9
17. 3. 可靠性低,一旦代码某个环节崩溃,整个系统都崩溃9
18. 4. 开源组件库质量参差不齐,更新快,向下不兼容10
19. 5. Debug不方便,错误没有stack trace10
--ide webstorm 1、IDE:Webstorm,没有其他。10
异步流程控制:Promise,Q.js10
五、 前端框架:Angular.js10
结论:10
参考 10
#====下载node...走十一个exe..容易的..
我选择了.EXE文件。因为.MSI安装文件除了将node.exe复制到C:/Program File (x86)/目录中及修改系统Path之外,没发现还有其他作用。
为容易的,不个node放的个windows哈面儿,走不要添加到个path兰..
Node版本
C:/>node -v
v0.10.28
hello.js文件,然后在里面输入:
var sys = require("sys");
sys.puts("Hello world");
然后我们在命名台中输入命令node hello.js,就能看到命名台输出结果Hello world。
作者 老哇的爪子 Attilax 艾龙, EMAIL:1466519819@qq.com
转载请注明来源: http://blog.csdn.net/attilax
每个模块都会暴露一个公开的API。以便开发者可以导入。如
var mod = require('module_name')
##--mode1.js
function meth1(name) {
console.log('hello, '+ name);
}
exports.meth1 = meth1;
注意,这里忽略了扩展名“.js”,也可以使用扩展名,绝对路径也能使用.
var h = require('./mode1');
h.meth1('snandy');
Node的内置模块被编译为二进制形式,引用时直接使用名字而非文件路径。当第三方的模块和内置模块同名时,内置模块将覆盖第三方同名模块。因此命名时需要注意不要和内置模块同名。如获取一个http模块
1
var http = require('http')
可以直接require一个目录,假设有一个目录名为folder,如
1
var myMod = require('./folder')
此时,Node将搜索整个folder目录,Node会假设folder为一个包并试图找到包定义文件package.json。如果folder目录里没有包含package.json文件,Node会假设默认主文件为index.js,即会加载index.js。如果index.js也不存在,那么加载将失败。
如果模块名不是路径,也不是内置模块,Node将试图去当前目录的node_modules文件夹里搜索。如果当前目录的node_modules里没有找到,Node会从父目录的node_modules里搜索,这样递归下去直到根目录。
不必担心,npm命令可让我们很方便的去安装,卸载,更新node_modules目录。
正常的使用npm奏能下载..走十俄的不能.只好手动下载..
node网站module>>>https://www.npmjs.org/>> search mysql >>https://github.com/felixge/node-mysql>>download zip 格式..
search mysql的时候儿能看见一瓦依赖库雅要下载了..
安装::: upzip>>改名to module name..>>>放得个"C://Program Files//nod
ejs//node_modules哈面儿..也能放的个%root%/node_modules哈面儿....走十C:/node_modules
韩式新不上的哪狗processmonitor 查看给挂 .
node网站module>>>https://www.npmjs.org/>> search mysql >>https://github.com/felixge/node-mysql>>download zip 格式..
search mysql的时候儿能看见一瓦依赖库雅要下载了..
///bignumber.js core-util-is inherits isarray readable-stream require-all
var sys = require("sys");
sys.puts("Hello world");
sys.puts("Hello aaa");
sys.puts("Hello bbbb");
var h = require('./mode1');
h.meth1('snandy');
//require('C://node_modules')
// 加载 mysql module
var mysql = require("mysql");
var dataBaseLinkInfo = {
"host": '127.0.0.1',
"database": 'dbc8',
"port": 3306,
"user": 'root',
"password": ""
}
var connection = mysql.createConnection(dataBaseLinkInfo);
connection.connect();
connection.query('SELECT * FROM grejx_def limit 2', function selectCb(err, rows, fields) {
if (err) {
throw err;
}
console.log(rows);
sys.puts("---------------------------------------Hello bbbb");
// console.log(fields);
})
connection.end();
Npm是下载库的...把msi里面一达了...走十俄的不一起,下李另一个才到个一起了..
走十%node_install%/node_modules 哈的一个npm目录..
调用的时候儿内个npm 是个 %node_install%/npm.bat
实际执行的十这个::
"C://Program Files//nodejs////node.exe" "C://Program Files//nod
ejs//node_modules//npm//bin//npm-cli.js" "install" "node-inspector"
走十俄的不能自动安装模块,有错误了.子能手动安装兰..
node.js本身支持调试(gdb也是,不好用.),在语句前面加debugger指令就可以添加一个断点
在启动服务的时候添加debug 选项
node debug index.js
2、执行时候,报错“Error: Cannot find module 'mysql'”
3、解决方法:在环境变量里面添加NODE_PATH设置,路径为:C:/Users/chezg/node_modules,即mysql模块的安装路径
单进程,单线程(使用消息方式,erlang也是)
总结一下NodeJS是怎么解决并发连接这个问题的:更改连接到服务器的方式,每个连接发射(emit)一个在NodeJS引擎进程中运行的事件(Event),放进事件队列当中,而不是为每个连接生成一个新的OS线程(并为其分配一些配套内存)
转: PayPal为什么从Java迁移到Node.js,性能提高一倍,文件代码减少44%
在这张图上你可以看到node.js应用的优势:每秒请求数量是Java的两倍。不过更有意思的是我们仅使用了单核的node去跟5核的Java来对比,我们非常希望将来继承扩大node.js的优势。
渲染相同的页面,node.js节省了35%的时间。即每个页面节约了200豪秒,用户可以清楚地感觉到这样的区别。
这两点比杞php差的太员..
CPU密集型应用给Node带来的挑战主要是:由于JavaScript单线程的原因,如果有长时间运行的计算(比如大循环),将会导致CPU时间片不能释放,使得后续I/O无法发起;
解决方案:分解大型运算任务为多个小任务,使得运算能够适时释放,不阻塞I/O调用的发起;
原因:单进程,单线程
解决方案:(1)Nnigx反向代理,负载均衡,开多个进程,绑定多个端口;
(2)开多个进程监听同一个端口,使用cluster模块;
有人说debug成本高,这要取决于你使用什么开发工具了,推荐webstorm,可以对Node.js程序进行单步调试
茴香豆的茴,有N种写法。所以,专家告诉我们,处理异步流程,除了回调函数方式外,还有事件方式、订阅发布模式、Promise。我的答案只有一个,Promise,in Q.js。
现在的状态..node.js是不能代替php的...php还是web的王者..王者.
参考
nodejs调试的几种方法,node-inspector可以着重看看 - terrychinaz的专栏 - 博客频道 - CSDN.NET.htm
Node.js的模块载入方式与机制 - snandy - 博客园.htm
Node.js Cannot find module 'xxx' 问题解决 - freeman983 - ITeye技术网站.htm
impt (nodejs)nodejs连接mysql遇到的问题与解决方法 - bimarcher的专栏 - 博客频道 - CSDN.NET.htm
Impt nodejs调试的几种方法,node-inspector可以着重看看 - terrychinaz的专栏 - 博客频道 - CSDN.NET.htm