Lua中的函数(或Function),其实应该是闭包(Closure),闭包可以认为是函数+外部变量,这里为了简单没有作区分,函数原型(或Proto)可以认为是函数的静态表示。
openssl AES 加密/解密
发表于
|
分类于
日常记录
AES算法
LuaJIT的变量实现-TValue
发表于
|
分类于
Openresty
Lua是动态类型的编程语言,变量的值可以是数值、字符串、table等所有支持的数据类型。在Lua虚拟机中每个变量都是用一个TValue结构体表示。LuaJIT出于效率的考虑重新组织了TValue结构体。
欢迎来到JIT的世界: The Joy of Simple JITs
发表于
|
分类于
Openresty
这个例子展示了简单的JIT(即时编译器)可以多么简单和有趣。JIT这个词让人联想到高深的魔法,只有顶尖的编译器团队才会想到使用。你可能会想到JVM或者.NET这样有数十万行代码的庞大的运行时库。你看不到像”Hello, World!”那样的JIT, 通过简短的代码做些有趣的事情。这篇文章尝试改变这个现状。
Nginx stream模块的执行阶段
发表于
|
分类于
Nginx
Nginx的stream模块提供了TCP负载均衡的功能,最初的stream模块比较简单,在nginx-1.11.4后也开始采用类似HTTP模块中分阶段处理请求的方式。
HTTP严格传输安全协议 (HSTS)
发表于
|
分类于
日常记录
HSTS
openresty的agent进程
发表于
|
分类于
Openresty
最近Openresty项目增加了一个新的功能,可以在Nginx中开启一个agent进程,这个agent进程不像Nginx的worker进程那样监听服务端口然后对外提供服务,而是继承了master进程的用户权限。
xps 13安装ubuntu 16.04
发表于
|
分类于
日常记录
入手戴尔的xps13,预装的Win10操作系统。考虑到这款机型有预装ubuntu 16.04的开发者版本,只是没有在国内发售,遂询问戴尔客服,是否可以提供系统镜像,或者相应的驱动程序。对此戴尔方面表示他们官方没有提供任何驱动程序,系统默认是有适配的,直接安装ubuntu即可……
Lua中的全局变量与环境
发表于
|
分类于
Openresty
环境的概念
systemd创建定时任务
发表于
|
分类于
日常记录