rrestjs

高性能node.js开发框架
授权协议 GPL
开发语言 JavaScript
所属分类 Web应用开发、 Node.js 扩展
软件类型 开源软件
地区 国产
投 递 者 夏飞鹏
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

rrest.js是一款基于expressjs代码开发的高性能node.js开发框架,由于重新编写了框架组织架构,比expressjs整体性能提升大约10%,实用功能也更加丰富,API和代码风格相比expressjs更简单易懂。

rrestjs有以下几个亮点: 
1、Restful模式:去掉了expressjs的app.get()路由机制,重新拆分客户端请求的uri,直接加载指定模块和执行模块内的方法,如果出错输出500或404。比如用户访问/user/face,访问头像页面,则rrestjs会根据拆分的uri去指定目录require('user')模块,然后执行face方法,省去了正则路由判断,提升性能。
2、原生node.js的API风格:没有expressjs自己封装的app.use等等,输出一个helloworld只需如下代码,降低了学习新代码风格的成本:
var http = require('http'),
rrest = require('rrestjs'),
server = http.createServer(rrest(function (req, res) {
res.end('hello world');
})).listen(3000);
3、开发模式自动保存重启:在开发模式下,支持像PHP那样的写代码,保存自动重启,放弃ctrl+c 然后 上+enter。
4、多进程共享session:多进程可以共享保存在内存中的session数据,而且以后部署上生产环境,只需加载不同配置文件,无需改动代码即可支持mongodb的session存储
5、提高静态文件输出性能:expressjs在静态文件输出上由于加上etag或last-modify缓存,需要2次I/O操作,rrestjs在此基础上做了2级缓存,减少一次I/O操作,性能提升10%。
6、多进程多任务管理:可以让多进程监听多端口,做不同业务,由一个守护进程守护,万一发现子进程意外挂掉,可以马上唤醒它,并且还是继续监听之前的端口和做之前的业务。
7、封装了mongodb连接池:封装了mongodb的连接池,可以手动的设定连接池的大小,大大提高的效率和稳定性。
8、IP和资源白名单过滤:增加了白名单功能,方便项目上公网以后的调试和测试。
9、增加jade的html缓存:增加html缓存功能,加速大并发,高I/O的输出jade模版,同时设置了更新缓存钥匙机制,防止缓存重建时的雪崩情况。
10、增加deflate和gzip:根据content-type的属性值,选择性的使用delate或gzip压缩数据响应给客户端,因为图片的gzip意义不大。
11、自动加载模块:根据自动加载例外的配置,去自动加载modules文件夹下的所有模块,不必一个个require了

 相关资料
  • 本文向大家介绍推荐 21 款优秀的高性能 Node.js 开发框架,包括了推荐 21 款优秀的高性能 Node.js 开发框架的使用技巧和注意事项,需要的朋友参考一下 Node.js 框架可以帮助你开发出更友好的 web 应用。Node.js 框架的许多特性和功能也能开发出大型的 web 应用。下面我们来介绍 21 款最好的 Node.js 框架,帮助开发者快速开发 web 应用。 Express

  • Node.js 语言环境搭建 Node.js 安装(3m大法:nvm、npm、nrm) Node.js 命令 Node.js开发工具(推荐vscode) Node.js 语言编程要点 使用Node.js 4.x或5.x里的ES 6特性,如果想玩更高级的,可以使用babel编译支持ES 7特性 合理使用standard 代码风格约定 ES 6语法 需要大家重视OO(面向对象)写法的学习和使用 核心模

  • 本文向大家介绍Android高级开发之性能优化典范,包括了Android高级开发之性能优化典范的使用技巧和注意事项,需要的朋友参考一下 本章介绍android高级开发中,对于性能方面的处理。主要包括电量,视图,内存三个性能方面的知识点。 1.视图性能 (1)Overdraw简介     Overdraw就是过度绘制,是指在一帧的时间内(16.67ms)像素被绘制了多次,理论上一个像素每次只绘制一次

  • Uragano 旨在提供一个搭建和使用简单的高性能 RPC 框架。Uragano 是基于 netstandard2.0 开发的。Uragano 默认采用 DotNetty 实现远程通信,使用 MessagePack 进行编解码。

  • 问题内容: 我在比较MySQL数据库的写入性能方面比较了node.js和PHP。我正在从此处使用Apache Benchmark,虚拟机中的Linux Mint,最新的mysql- server(5.5.43)和用于带有node.js的MySQL驱动程序。我使用的代码是 server.js index.php 使用index.php文件的Apache Benchmark到Apache2服务器 PH

  • 本文向大家介绍Node.js 服务器端应用开发框架 -- Hapi.js,包括了Node.js 服务器端应用开发框架 -- Hapi.js的使用技巧和注意事项,需要的朋友参考一下 Hapi.js 是一个用来构建基于 Node.js 的应用和服务的富框架,使得开发者把重点放在便携可重用的应用逻辑而不是构建架构。内建输入验证、缓存、认证和其他 Web 应用开发常用的功能。 示例代码: 附上github