`
hanyh
  • 浏览: 235310 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

nodejs使用(1)安装

阅读更多
nodejs试用
===============
1,下载安装
./configure --prefix=/home/god/nodejs
make
make install

2,read doc
简单看一下安装后的目录结构,可以看见有许多python的代码
god@hanyh-laptop:~/nodejs$ ls -R
.:
bin  include  lib  share

./bin:
node  node-repl  node-waf

./include:
node

./include/node:
config.h  ev.h           node_config.h  node.h              node_version.h  v8.h
eio.h     node_buffer.h  node_events.h  node_object_wrap.h  v8-debug.h      v8-profiler.h

./lib:
node

./lib/node:
wafadmin

./lib/node/wafadmin:
ansiterm.py  Configure.py  Environment.py  Logs.py  Options.py  py3kfixes.py  Scripting.py  Task.py  Utils.py
Build.py     Constants.py  __init__.py     Node.py  pproc.py    Runner.py     TaskGen.py    Tools

./lib/node/wafadmin/Tools:
ar.py           compiler_cxx.py  dmd.py  gdc.py       icc.py       libtool.py     osx.py      suncxx.py     xlcxx.py
cc.py           compiler_d.py    d.py    gnu_dirs.py  icpc.py      misc.py        preproc.py  unittestw.py
ccroot.py       config_c.py      gas.py  gob2.py      __init__.py  nasm.py        python.py   winres.py
compiler_cc.py  cxx.py           gcc.py  gxx.py       intltool.py  node_addon.py  suncc.py    xlc.py

./share:
man

./share/man:
man1

./share/man/man1:
node.1


设置路径:
======================================================
export PATH=$PATH:/home/god/nodejs/bin/

写入第一个例子:server1.js

var http = require('http');
http.createServer(function (req, res) {
  res.writeHead(200, {'Content-Type': 'text/plain'});
  res.end('Hello World\n');
}).listen(8124, "127.0.0.1");
console.log('Server running at http://127.0.0.1:8124/');

运行:
god@hanyh-laptop:~/nodejs/work$ node server1.js
Server running at http://127.0.0.1:8124/

ab压力测试
====================================================
nodejs的数据
==========================================
god@hanyh-laptop:~/nodejs/work$ ab -c 50 -n 10000 http://127.0.0.1:8124/
This is ApacheBench, Version 2.3 <$Revision: 655654 $>
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Licensed to The Apache Software Foundation, http://www.apache.org/

Benchmarking 127.0.0.1 (be patient)
Completed 1000 requests
Completed 2000 requests
Completed 3000 requests
Completed 4000 requests
Completed 5000 requests
Completed 6000 requests
Completed 7000 requests
Completed 8000 requests
Completed 9000 requests
Completed 10000 requests
Finished 10000 requests


Server Software:       
Server Hostname:        127.0.0.1
Server Port:            8124

Document Path:          /
Document Length:        12 bytes

Concurrency Level:      50
Time taken for tests:   1.694 seconds
Complete requests:      10000
Failed requests:        0
Write errors:           0
Total transferred:      760000 bytes
HTML transferred:       120000 bytes
Requests per second:    5903.01 [#/sec] (mean)
Time per request:       8.470 [ms] (mean)
Time per request:       0.169 [ms] (mean, across all concurrent requests)
Transfer rate:          438.11 [Kbytes/sec] received

Connection Times (ms)
              min  mean[+/-sd] median   max
Connect:        0    0   0.5      0       9
Processing:     0    8   4.5      8      37
Waiting:        0    8   4.4      8      37
Total:          1    8   4.4      8      37

Percentage of the requests served within a certain time (ms)
  50%      8
  66%     10
  75%     11
  80%     11
  90%     14
  95%     17
  98%     21
  99%     22
100%     37 (longest request)

nginx的数据
==========================================
god@hanyh-laptop:~/nodejs/work$ ab -c 50 -n 10000 http://127.0.0.1:7000/
This is ApacheBench, Version 2.3 <$Revision: 655654 $>
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Licensed to The Apache Software Foundation, http://www.apache.org/

Benchmarking 127.0.0.1 (be patient)
Completed 1000 requests
Completed 2000 requests
Completed 3000 requests
Completed 4000 requests
Completed 5000 requests
Completed 6000 requests
Completed 7000 requests
Completed 8000 requests
Completed 9000 requests
Completed 10000 requests
Finished 10000 requests


Server Software:        nginx/0.7.67
Server Hostname:        127.0.0.1
Server Port:            7000

Document Path:          /
Document Length:        151 bytes

Concurrency Level:      50
Time taken for tests:   1.086 seconds
Complete requests:      10000
Failed requests:        0
Write errors:           0
Total transferred:      3622534 bytes
HTML transferred:       1511057 bytes
Requests per second:    9205.48 [#/sec] (mean)
Time per request:       5.432 [ms] (mean)
Time per request:       0.109 [ms] (mean, across all concurrent requests)
Transfer rate:          3256.56 [Kbytes/sec] received

Connection Times (ms)
              min  mean[+/-sd] median   max
Connect:        0    2   1.2      2       9
Processing:     1    3   1.1      3       9
Waiting:        0    2   1.0      2       9
Total:          3    5   2.0      4      14

Percentage of the requests served within a certain time (ms)
  50%      4
  66%      4
  75%      7
  80%      8
  90%      9
  95%      9
  98%      9
  99%     10
100%     14 (longest request)

RPS和nginx相差只30%左右,性能相当惊人

基本设计
=================================
不用线程解决并发问题,线程难度大且有些问题性能不好
简化的事件模型,没有一个显式的start-the-event-loop过程,类似浏览器的一样隐藏事件模型,脚本启动后就自动进入事件模型状态
多核的支持:多进程。The fundamentals of scalable systems are fast networking and non-blocking design—the rest is message passing. In future versions, Node will be able to fork new processes

分享到:
评论

相关推荐

    NodeJS14安装保姆教程

    **NodeJS14安装保姆教程** Node.js是一个开放源代码、跨平台的JavaScript运行环境,它允许开发者在服务器端执行JavaScript代码。版本14是Node.js的一个稳定版本,提供了许多性能改进和新特性,使得开发Web应用更加...

    macbook pro/air m1 nodejs 安装

    1. **下载源代码**:访问Node.js的GitHub仓库页面(&lt;https://github.com/nodejs/node/tags&gt;),根据&lt;https://doesitarm.com&gt; 网站上提供的信息选择支持M1芯片的Node.js版本。这里我们以Node.js v12为例。 2. **解压...

    NodeJS安装及环境配置(windows)

    如果一切顺利,您现在应该可以正常使用安装的 Express 模块和其他全局 Node.js 模块,而不会占用 C 盘空间。通过配置环境变量,我们可以更好地管理和组织我们的开发环境,使得日后的工作更加高效和便捷。

    nodejs在linux安装教程-包涵判断当前版本是32位还是64位.pdf

    安装完成后,你可以开始使用Node.js编写和运行JavaScript代码,或者通过npm安装和管理项目依赖。Node.js在服务器端的强大功能使得它在Web开发领域扮演着重要角色,无论是构建全栈应用、处理实时数据流,还是构建CLI...

    Nodejs安装

    5. **验证安装**: 安装完成后,打开命令行工具,输入 `node -v` 或 `nodejs -v`(某些系统可能需要使用 `nodejs` 命令),如果显示出安装的 Node.js 版本号,说明安装成功。 **WebSocket 实体示例** WebSocket 是...

    nodejs完整安装教程(带软件)

    1. 使用Homebrew(如果尚未安装,需先安装Homebrew,运行`/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"`)。 2. 在终端中运行`brew install node`。 3. 同样...

    区块链开发(四)Nodejs下载&安装

    1. 使用 `wget` 命令下载已获取的 Node.js 安装包: ```bash wget https://npm.taobao.org/mirrors/node/v6.9.1/node-v6.9.1-linux-x64.tar.xz ``` 2. 解压缩下载的文件: ```bash tar -xvf node-v6.9.1-linux...

    nodejs 18.17.1

    标题"nodejs 18.17.1"表明这是一个关于 Node.js 版本18.17.1的知识点,通常涉及到新特性、性能优化和可能的修复。 Node.js 18.17.1 是一个重要的更新,它基于 V8 JavaScript 引擎,这个版本可能包括以下内容: 1. ...

    linux下安装nodejs

    修改 `/usr/bin/yum` 文件,将默认使用的 Python 版本更改为新安装的版本。 ```bash vi /usr/bin/yum # 替换第一行: #!/usr/bin/python 为 #!/usr/bin/python2.4 ``` 完成以上步骤后,再次尝试配置 Node.js...

    NodeJs-v18.12.1-x86 Windows安装包

    1. **下载安装包**:访问 https://nodejs.org/en/download/ 或者通过提供的本地资源 `node-v18.12.1-x86.msi` 下载适用于 x86 架构的安装文件。 2. **运行安装程序**:双击下载的 `.msi` 文件,启动安装向导。 3. **...

    win10安装nodejs和npm

    1. **下载安装程序**: - 访问官方网站 [https://nodejs.org/zh-cn/](https://nodejs.org/zh-cn/)。 - 选择“LTS”版本进行下载。LTS(Long Term Support)表示长期支持版本,适合生产环境使用。 2. **安装Node.js*...

    nodejs老版本,10.24.1

    nodejs老版本,10.24.1

    NodeJS安装包及教程.zip

    1. **系统需求**:确保用户的Windows系统满足安装NodeJS的基本条件,如操作系统版本、内存和硬盘空间。 2. **下载与安装**:详细解释如何下载zip文件,以及解压后如何运行"node-v10.15.3-x64.msi"进行安装。 3. **...

    NodeJS学习笔记和代码

    2. **npm**:NodeJS的包管理器,用于安装、管理和分享依赖库,是NodeJS生态的重要组成部分。 3. **流(Stream)**:NodeJS中的流接口允许数据以高效的方式逐块处理,常用于处理大文件或网络数据传输。 4. **中间件...

    【课件】NodeJs 介绍 安装 开发工具配置1

    安装 Node.js 很简单,只需访问其官方网站(https://nodejs.org/en/),选择合适的稳定版本下载,然后按照提示进行安装。安装完成后,可以在命令行界面(CMD)验证 Node.js 是否正确安装。 开发 Node.js 应用,通常...

    centOS安装nodejs

    1. **使用YUM仓库**:可以利用YUM工具从远程仓库安装Node.js。例如,使用nvm(Node Version Manager)或n(Node.js Version Manager)等工具管理不同版本的Node.js。 2. **使用源码编译安装**:如果需要定制化安装...

    nodejs安装和卸载,超全!

    nodejs安装和卸载 Ubuntu 上安装 上 Node.js ⽅式⼀:直接安装 ⼀、安装 1.$ sudo apt-get install nodejs 2.$ sudo apt-get install npm ⼆、升级 1.升级npm命令如下: $ sudo npm install npm -g /usr/local/bin/...

Global site tag (gtag.js) - Google Analytics