v0.10.0介绍
nodev10.0版本来了,对于性能官方肯定是说性能大大提高了
http://blog.nodejs.org/2013/03/11/node-v0-10-0-stable/
大致翻译如下:
不要用执行上的勤奋来掩盖思考上的懒惰
v0.10.0介绍
nodev10.0版本来了,对于性能官方肯定是说性能大大提高了
http://blog.nodejs.org/2013/03/11/node-v0-10-0-stable/
大致翻译如下:
Google Protocol Buffer( 简称 Protobuf) 是 Google 公司内部的混合语言数据标准,目前已经正在使用的有超过 48,162 种报文格式定义和超过 12,183 个 .proto 文件。他们用于 RPC 系统和持续数据存储系统。
协同程序(Coroutine)类似于多线程情况下的线程:是一种程序的运行绪,它有自己的栈,自己的局部变量,自己的当前指令指针(Instruction Pointer),但与其他协同程序共享全局变量以几乎所有其他资源。线程和协同程序的主要区别在于:在概念上讲,在多处理器情况下,拥有多线程的程序并发运行多个线程;而协同程序是通过协作来完成,在任一指定时刻只有一个协同程序在运行,一个正在运行的协同程序只在它显式要求被挂起时才会被挂起。
nginx和lua的配合让我们眼前一亮,高性能的带逻辑和数据库访问的nginx诞生了,感觉它天生就是为了 http 接口或者代理而生的。现在有这样一些需求:
1、将公司所有的api放在后方,让ngx_lua顶在最前面,作为 api 服务的前置入口,安全性要好
2、要能抗住压力,毕竟公司所有的 api 接口都将从ngx_lua这条总线走,不能有太长的响应
3、要可以扩展,如果一台服务器扛不住压力,可以很方便的进行水平扩展
4、要稳定,不能隔三差五的挂一次,不能影响公司的 api 服务
5、要好维护,出现问题能及时解决
1、数学库
math.random方法,如果不传递参数则返回[0,1)之间的随机数,如果给定一个整数,比如random(n)则返回1到m的整数随机数,如果调用random(n, m)则返回n到m的随机数
http协议请求头我们再熟悉不过了,一些诸如content-type,etag等等的协议头规定了我们如何使用http协议,以及反映着一些资源的状态。但是我们有注意过http请求头的顺序吗?