在锤子科技发布会上,提到给Openresty的捐赠的事情,出于好奇我在是网上查询了Openresty,看到了Openresty的官网(http://openresty.org/en/)。看到介绍说的很强大,然后开始了解国内外哪些公司在使用,也对Openresty进行了学习,和做了一些Demo ,发现Openresty开发效率确实很高,最后找到了一些资源,在此将这些资料整理出来,方便后期的学。

1、Openresty最佳实践 (https://moonbingbing.gitbooks.io/openresty-best-practices/content/)

最佳实践应该是入门Openresty必读的资料,讲解也比较简单,也是一些比较基础的

2、《Nginx Lua 开发实践》图书地址(https://item.jd.com/12319546.html)

这本书虽然标题不是Openresty,内容全是Openresty,也是讲解了Openresty比较基础的知识,同时也给出了Openresty一些常用模块的讲解,并且有一些小的Demo,书的最后两章,讲解了Openresty的指令 和常用API,在我看来基本上算是翻译一下Openresty github上的 api,只是用自己的语言描述出来。

3、Openresty Github (https://github.com/openresty/lua-nginx-module)

这是Openrety的核心module 上面文档是开发Openresty应用一定要看的。

4、StuQ 一系列入门的视频教程,这个可以下bilibili上看,直接搜索就可看到一共3个小部分。

5、春哥在2014年nginx conf大会上的演讲视频(https://www.youtube.com/watch?v=Z0fQabvVhIk) ,这个视频在youtube上,需要FQ,这个演讲最要讲了openresty的一些内部机制。

6、《深入理解Nginx:模块开发与架构解析》这本书写了如何开发Nginx的模块开发,看了之后,基本上可以开发自己的Nginx的模块开发,能够帮助我们理解Nginx内部一些核心概念和特性,比如 Openresty hook的一些阶段,以及子请求,以及顺序执行和平行请求。

7、春哥写的Nginx模块开发的学习项目echo-nginx-module(https://github.com/openresty/echo-nginx-module) 这个项目确实算是nginx模块开发的最好的项目,而且代码写的可读性非常好。

8、以及几个必读的驱动包 lua-resty-redis lua-resty-mysql lua-resty-lock lua-resty-memcached 之前对mysql、redis、memcached 这些驱动感觉很神秘,但是读了这几个驱动包之后,感觉这些协议实现没那么神秘而且自己也可以实现这些驱动。

9、基于Openresty的百万级长链接推送 这个是酷狗的使用Openresty做WebSocket长链接的一个演讲,如果做长链 是很好的一个例子,网上有视频

10、It大咖说一些Openresty一系列峰会的演讲视频(https://www.itdks.com/ActivityC/search?keyWord=Openresty) 里面有很多公司实际应用上的例子,以及社区发展和Openresty 不同年度的新特性。

11、Openresty在Api 网关上的成熟应用 Kong、Orange ,Kong还没有细看,但是Orange这个项目我是全部看完了,基本上对Orange这个解决方案了解的很深入。

12、《Lua程序设计》 里面除了写到Lua使用的教程,而且还有C API相关的内容,如果要试图读openresty的源代码,最好先看一下这本书,因为Openresty里面存在很多Lua 和C的交互

13、高效的Luajit 翻译文章(https://blog.csdn.net/qq_35624156/article/details/77455670)

14、B站Upload分享(https://www.tuicool.com/articles/UNziEjn)

Openresty学习汇总的更多相关文章

  1. ABP 学习汇总

    本文背景 公司最近规划的新框架准备基于ABP来搭建,自从在阳铭博客看到ABP框架的介绍后,就一直持续关注着,但还没真正在实际项目中直接使用ABP,只是自己做了一些学习和Demo.ABP所用到的一些新技 ...

  2. JS object(对象)的学习汇总

    Object(对象)是在所有的编程语言中都十分重要的一个概念,对于事物我们可以把他们看作是一个对象,而每一个事物都有自己的表示的属性和对于某一信息作出的相应的操作.而这些东西就变成了事物的属性和方法. ...

  3. MINA学习汇总

    MINA学习汇总 Apache Mina Server 是一个网络通信应用框架,用于开发高性能和高可用性的网络应用程序.它主要是对基于TCP/IP.UDP/IP协议栈的通信框架(然,也可以提供JAVA ...

  4. openresty 学习笔记小结:综合应用实例

    openresty 学习笔记小结:综合应用实例 这个综合实验实现的功能其实很简单,用户访问一个页面,显示一个默认页面.输入参数(post或者get都可以),如果参数在数据库查询得到并满足一定条件,根据 ...

  5. openresty 学习笔记六:使用session库

    openresty 学习笔记六:使用session库 lua-resty-session 是一个面向 OpenResty 的安全和灵活的 session 库,它实现了 Secure Cookie Pr ...

  6. openresty 学习笔记番外篇:python的一些扩展库

    openresty 学习笔记番外篇:python的一些扩展库 要写一个可以使用的python程序还需要比如日志输出,读取配置文件,作为守护进程运行等 读取配置文件 使用自带的ConfigParser模 ...

  7. openresty 学习笔记番外篇:python访问RabbitMQ消息队列

    openresty 学习笔记番外篇:python访问RabbitMQ消息队列 python使用pika扩展库操作RabbitMQ的流程梳理. 客户端连接到消息队列服务器,打开一个channel. 客户 ...

  8. openresty 学习笔记五:访问RabbitMQ消息队列

    openresty 学习笔记五:访问RabbitMQ消息队列 之前通过比较选择,决定采用RabbitMQ这种消息队列来做中间件,目的舒缓是为了让整个架构的瓶颈环节.这里是做具体实施,用lua访问Rab ...

  9. openresty 学习笔记四:连接mysql和进行相关操作

    openresty 学习笔记四:连接mysql和进行相关操作 毕竟redis是作为缓存,供程序的快速读写,虽然reidis也可以做持久化保存,但还是需要一个做数据存储的数据库.比如首次查询数据在red ...

随机推荐

  1. ios 图片处理( 1.按比例缩放 2.指定宽度按比例缩放

    本文转载至 http://blog.sina.com.cn/s/blog_6f29e81f0101tat6.html //按比例缩放,size 是你要把图显示到 多大区域 CGSizeMake(300 ...

  2. js将字符串转换为数字等类型

    1.js提供了parseInt()和parseFloat()两个转换函数. 2.ECMAScript中可用的3种强制类型转换如下:  Boolean(value)——把给定的值转换成Boolean型: ...

  3. Sencha Cmd创建Ext JS示例项目

    Sencha提供了免费的Cmd工具,可以用来创建Ext JS项目并提供了一些便利的功能. Sencha也在官方文档中提供了一个示例来演示如何创建一个Sample Login App. 本文就介绍一下这 ...

  4. Angular基础---->AngularJS的使用(一)

    AngularJS主要用于构建单页面的Web应用.它通过增加开发人员和常见Web应用开发任务之间的抽象级别,使构建交互式的现代Web应用变得更加简单.今天,我们就开始Angular环境的搭建和第一个实 ...

  5. URLSearchParams 接口定义处理 URL 参数串

    基本使用方法如下 /* * URLSearchParams属性 * @语法:new URLSearchParams(parameter); */ (function(){ var str = &quo ...

  6. Linux系统下Nginx+PHP 环境安装配置

    一.编译安装Nginx 官网:http://wiki.nginx.org/Install 下载:http://nginx.org/en/download.html # tar -zvxf nginx- ...

  7. having使用的时机

    where 子句的作用是在对查询结果进行分组前,将不符合where条件的行去掉,即在分组之前过滤数据,条件中不能包含聚组函数,使用where条件显示特定的行. having 子句的作用是筛选满足条件的 ...

  8. [Android Tips] 30.如何在 Android Studio 中一次性格式化所有代码

    在目录上面右击,有 Reformat Code Ctrl + Alt + L 参考 如何在IntelliJ IDEA或Android Studio中一次性格式化所有代码?

  9. 限制ip ssh远程登录

    有时候为了服务器的安全考虑,我们可以在服务器上做限制,禁止其他ip地址连接服务器. 方法一:修改ssh配置文件 其实做这个操作很简单,只需要改/etc/ssh/sshd_config配置文件,再最后一 ...

  10. sort命令详解及Nginx统计运用

    sort命令是帮我们依据不同的数据类型进行排序,其语法及常用参数格式: sort [-bcfMnrtk][源文件][-o 输出文件] 补充说明:sort可针对文本文件的内容,以行为单位来排序. 参 数 ...