Home >Database >Mysql Tutorial >paip.最好的脚本语言node js 环境搭建连接mysql_MySQL

paip.最好的脚本语言node js 环境搭建连接mysql_MySQL

WBOY
WBOYOriginal
2016-06-01 13:16:261084browse

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

#0----Hello world   .js

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; 

1. ##--调用 (载入文件模块---普通文件模块

 注意,这里忽略了扩展名“.js”,也可以使用扩展名,绝对路径也能使用.

  var h = require('./mode1');

h.meth1('snandy'); 

3. ##---载入内置模块

Node的内置模块被编译为二进制形式,引用时直接使用名字而非文件路径。当第三方的模块和内置模块同名时,内置模块将覆盖第三方同名模块。因此命名时需要注意不要和内置模块同名。如获取一个http模块

1

var http = require('http')

4. ##----三、载入文件目录模块

可以直接require一个目录,假设有一个目录名为folder,如

1

var myMod = require('./folder')

此时,Node将搜索整个folder目录,Node会假设folder为一个包并试图找到包定义文件package.json。如果folder目录里没有包含package.json文件,Node会假设默认主文件为index.js,即会加载index.js。如果index.js也不存在,那么加载将失败。

5. ##--四、载入node_modules里的模块

如果模块名不是路径,也不是内置模块,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 查看给挂 .

#---------调用mysql

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

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-inspector/eclipse /webstorm    

node.js本身支持调试(gdb也是,不好用.),在语句前面加debugger指令就可以添加一个断点

在启动服务的时候添加debug 选项

node debug index.js

----有些错误的解决

2、执行时候,报错“Error: Cannot find module 'mysql'”

3、解决方法:在环境变量里面添加NODE_PATH设置,路径为:C:/Users/chezg/node_modules,即mysql模块的安装路径

6. 不要特地ide view..hh,这个比php,python要好.

7. node.js, 高并发(最重要的优点)(都是异步调用)

单进程,单线程(使用消息方式,erlang也是)

总结一下NodeJS是怎么解决并发连接这个问题的:更改连接到服务器的方式,每个连接发射(emit)一个在NodeJS引擎进程中运行的事件(Event),放进事件队列当中,而不是为每个连接生成一个新的OS线程(并为其分配一些配套内存)

转: PayPal为什么从Java迁移到Node.js,性能提高一倍,文件代码减少44%

在这张图上你可以看到node.js应用的优势:每秒请求数量是Java的两倍。不过更有意思的是我们仅使用了单核的node去跟5核的Java来对比,我们非常希望将来继承扩大node.js的优势。
 渲染相同的页面,node.js节省了35%的时间。即每个页面节约了200豪秒,用户可以清楚地感觉到这样的区别。

8. 前台后台统一拉..

9. 发展效率高,是java的1倍,跟个php差不多.

10. 总而言之,NodeJS适合运用在高并发、I/O密集、少量业务逻辑的场景

11. JavaScript也简单易学

---node js 缺点

12. 标准库太小.一瓦库要下载.

13. 资料太少,生态系统还没建立

14. 没默认调试ide支持

这两点比杞php差的太员..

15. 缺点:1. 不适合CPU密集型应用;

CPU密集型应用给Node带来的挑战主要是:由于JavaScript单线程的原因,如果有长时间运行的计算(比如大循环),将会导致CPU时间片不能释放,使得后续I/O无法发起;

解决方案:分解大型运算任务为多个小任务,使得运算能够适时释放,不阻塞I/O调用的发起;

16. 2. 只支持单核CPU,不能充分利用CPU

17. 3. 可靠性低,一旦代码某个环节崩溃,整个系统都崩溃

原因:单进程,单线程

解决方案:(1)Nnigx反向代理,负载均衡,开多个进程,绑定多个端口;

(2)开多个进程监听同一个端口,使用cluster模块;

18. 4. 开源组件库质量参差不齐,更新快,向下不兼容

19. 5. Debug不方便,错误没有stack trace

--ide  webstorm    1、IDE:Webstorm,没有其他。

有人说debug成本高,这要取决于你使用什么开发工具了,推荐webstorm,可以对Node.js程序进行单步调试

异步流程控制:Promise,Q.js

    茴香豆的茴,有N种写法。所以,专家告诉我们,处理异步流程,除了回调函数方式外,还有事件方式、订阅发布模式、Promise。我的答案只有一个,Promise,in Q.js。

五、前端框架:Angular.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

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn