跟我学Nginx+Lua开发
收藏

nginx+lua开发技术系列教程,学习nginx嵌入lua开发,并实战HTTP服务、单品页应用

分享到: Sina Tec

最近更新文章

第八章 流量复制/AB测试/协程

流量复制 在实际开发中经常涉及到项目的升级,而该升级不能简单的上线就完事了,需要验证该升级是否兼容老的上线,因此可能需要并行运行两个项目一段时间进行数据比对和校验,待没问题后再进行上线。这其实就需要进行流量复制,把流量复制到其他服务器上,一种方式是使用如tcpcopy引流;另外我们还可以使用nginx的HttpLuaModule模块中的ngx.location.capture_multi进行并 ...
jinnianshilongnian 评论(2) 有22468人浏览 2015-03-07 17:25

第七章 Web开发实战2——商品详情页

本章以京东商品详情页为例,京东商品详情页虽然仅是单个页面,但是其数据聚合源是非常多的,除了一些实时性要求比较高的如价格、库存、服务支 ...
jinnianshilongnian 评论(35) 有44625人浏览 2015-03-03 21:40

第六章 Web开发实战1——HTTP服务

此处我说的HTTP服务主要指如访问京东网站时我们看到的热门搜索、用户登录、实时价格、实时库存、服务支持、广告语等这种非Web页面,而是在Web页面中异步加载的相关数据。这些服务有个特点即访问量巨大、逻辑比较单一;但是如实时库存逻辑其实是非常复杂的。在京东这些服务每天有几亿十几亿的访问量,比如实时库存服务曾经在没有任何IP限流、DDos防御的情况被刷到600多万/分钟的访问量,而且能轻松应对。支撑 ...
jinnianshilongnian 评论(19) 有36760人浏览 2015-03-02 22:05

第五章 常用Lua开发库3-模板渲染

动态web网页开发是Web开发中一个常见的场景,比如像京东商品详情页,其页面逻辑是非常复杂的,需要使用模板技术来实现。而Lua中也有许多模板引擎,如目前我在使用的lua-resty-template,可以渲染很复杂的页面,借助LuaJIT其性能也是可以接受的。   如果学习过JavaEE中的servlet和JSP的话,应该知道JSP模板最终会被翻译成Servlet来执行;而lua-resty ...
jinnianshilongnian 评论(5) 有27984人浏览 2015-03-01 17:23

第五章 常用Lua开发库2-JSON库、编码转换、字符串处理

  JSON库   在进行数据传输时JSON格式目前应用广泛,因此从Lua对象与JSON字符串之间相互转换是一个非常常见的功能;目前Lua也有几个JSON库,本人用过cjson、dkjson。其中cjson的语法严格(比如unicode \u0020\u7eaf),要求符合规范否则会解析失败(如\u002),而dkjson相对宽松,当然也可以通过修改cjson的源码来完成一些特殊要求。 ...
jinnianshilongnian 评论(4) 有50674人浏览 2015-02-28 18:46

第五章 常用Lua开发库1-redis、mysql、http客户端

对于开发来说需要有好的生态开发库来辅助我们快速开发,而Lua中也有大多数我们需要的第三方开发库如Redis、Memcached、Mysql、Http客户端、JSON、模板引擎等。 一些常见的Lua库可以在github上搜索,https://github.com/search?utf8=%E2%9C%93&q=lua+resty。   Redis客户端 lua-resty-redi ...
jinnianshilongnian 评论(10) 有67305人浏览 2015-02-28 09:31

第四章 Lua模块开发

在实际开发中,不可能把所有代码写到一个大而全的lua文件中,需要进行分模块开发;而且模块化是高性能Lua应用的关键。使用require第一次导入模块后 ...
jinnianshilongnian 评论(6) 有28398人浏览 2015-02-27 10:02

第三章 Redis/SSDB+Twemproxy安装与使用

目前对于互联网公司不使用Redis的很少,Redis不仅仅可以作为key-value缓存,而且提供了丰富的数据结果如set、list、map等,可以实现很多复杂的功能;但是Redis本身主要用作内存缓存,不适合做持久化存储,因此目前有如SSDB、ARDB等,还有如京东的JIMDB,它们都支持Redis协议,可以支持Redis客户端直接访问;而这些持久化存储大多数使用了如LevelDB、Rocks ...
jinnianshilongnian 评论(16) 有35448人浏览 2015-02-26 11:39

第二章 OpenResty(Nginx+Lua)开发入门

Nginx入门 本文目的是学习Nginx+Lua开发,对于Nginx基本知识可以参考如下文章: nginx启动、关闭、重启 http://www.cnblogs.com/derekchen/archive/2011/02/17/1957209.html agentzh 的 Nginx 教程 http://openresty.org/download/agentzh-nginx-tuto ...
jinnianshilongnian 评论(16) 有266126人浏览 2015-02-22 19:16

第一章 安装OpenResty(Nginx+Lua)开发环境

首先我们选择使用OpenResty,其是由Nginx核心加很多第三方模块组成,其最大的亮点是默认集成了Lua开发环境,使得Nginx可以作为一个Web Server使用。借助于Nginx的事件驱动模型和非阻塞IO,可以实现高性能的Web应用程序。而且OpenResty提供了大量组件如Mysql、Redis、Memcached等等,使在Nginx上开发Web应用更方便更简单。目前在京东如实时价格、 ...
jinnianshilongnian 评论(13) 有123075人浏览 2015-02-17 14:35
  • 专栏创建者:jinnianshilongnian
  • 创建时间:2015-03-10 13:10:48
  • 专栏文章数:10篇
  • 专栏被浏览:702863 次

本专栏热门文章

最新评论

博主,你好,我想请问一下博主当时用的ubuntu版本是多少?我现在的问题是虚拟机装的是ubuntu s ...
kenne_2011 评论了 第三章 Redis/SSDB+Twemproxy安装与使用
kang19870415 写道这一章内容我尝试了无数遍也没有成功,后来将模块包中mysql.lua,改 ...
javaDog_li 评论了 第四章 Lua模块开发
发现一个问题,请教下:我在access_by_lua_file和init_by_lua_file两个节 ...
anyzm311 评论了 第一章 安装OpenResty(Nginx+Lua)开发环境
tomcat 配置 conf下Catalina下的localhost下的Root.xml 值为/usr ...
newboy2004 评论了 第六章 Web开发实战1——HTTP服务
xcmzh 写道Aceslup 写道test_http_2 代码完全一样,就是测试时是404。搞不懂出 ...
xcmzh 评论了 第五章 常用Lua开发库1-redis、mysql、 ...
Aceslup 写道test_http_2 代码完全一样,就是测试时是404。搞不懂出错在哪。我得到的 ...
xcmzh 评论了 第五章 常用Lua开发库1-redis、mysql、 ...
你好,我在 server { listen 80; server_name xx.com; locat ...
s531201710 评论了 第二章 OpenResty(Nginx+Lua)开发入门
协程还是不理解哦
Aceslup 评论了 第八章 流量复制/AB测试/协程
test_http_2 代码完全一样,就是测试时是404。搞不懂出错在哪。
Aceslup 评论了 第五章 常用Lua开发库1-redis、mysql、 ...
开涛老师:基于ngx_cache_purge 针对目录删除缓存目前有现成的模块可以用吗?
Tro_picana 评论了 第一章 安装OpenResty(Nginx+Lua)开发环境
Global site tag (gtag.js) - Google Analytics