开篇词 | OpenResty,为你打开高性能开发的大门
该思维导图由 AI 生成,仅供参考
为什么学习 OpenResty
我与 OpenResty 的渊源
学习这个专栏需要什么基础?
从实战中来,到实战中去
- 深入了解
- 翻译
- 解释
- 总结
OpenResty,为你打开高性能开发的大门。本文由OpenResty软件基金会主席温铭撰写,介绍了OpenResty的特点、作者与OpenResty的渊源、学习OpenResty的基础要求以及实战中的应用。OpenResty是一个兼具开发效率和性能的服务端开发平台,基于NGINX实现,适用范围远超反向代理和负载均衡。通过Lua语言进行字符串和数值运算、查询数据库、发送HTTP请求等,满足服务端开发需求。作者介绍了自己与OpenResty的结缘经历,以及在技术交流群中工程师对OpenResty学习的困惑。学习OpenResty需要基础的NGINX和LuaJIT知识,但只需很少的NGINX知识即可开始学习OpenResty。专栏形式更偏重于实战,引用实际案例和视频课程,最后将实战融入完整的知识体系,带领读者从零搭建一个微服务API网关。文章内容丰富,深入浅出,适合想要快速了解OpenResty的读者。
2019-05-2220人觉得很赞给文章提建议
《OpenResty 从入门到实战》,新⼈⾸单¥59
全部留言(50)
- 最新
- 精选
- NEVER SETTLE目前负责广告引擎系统的API网关,就是用Openresty搭建的,Lua语言开发起来很方便,让人欲罢不能的感觉,再加上Nginx高性能和高并发,后端负载均衡,感觉两者结合就是绝配。1、一个值得赞的是,上线时候直接reload一下就可以,根本不会出现停服那种情况。2、现在用Lua写代码习惯了,偶尔用下C++,感觉写起来太费劲了,比如json序列化与反序列化,Lua直接cjson.decode和cjson.encode,结果用C++我就不多说了,尤其json结构复杂,嵌套很深那种,真的有点费劲。3、共享字典sharedict用起来真的很方便,所有worker进程共享,自带锁机制,不用担心竞争的情况。4、Lua虽然用起来方便,但不注意真的会踩很多坑,之前有段时间流量同期没有什么增长,但是CPU利用率涨了10%,后来我们reload一下,结果就正常了。过段时间,问题复现了,我用perf工具查了下,发现一个字符串操作的函数占用率很高,后来查了下,是用字符串连接符..调用的,后来结合当时上线的代码,发现添加了许多业务日志,而日志里面字段都是用连接符..连接的,后来改成concat了,目前问题没发生过了。5、请问温老师,openresty现在用可靠的protobuf库吗,之前对接外部模块,api是protobuf协议,当时需求急,没有咋调研,我直接用最粗爆方式,用ffi方式调用C++,Lua给C++传json,C++json解码之后,把参数配成pb,返给Lua,反之亦然,感觉有点麻烦,请温铭老师指点迷津。
作者回复: Lua 性能相关的坑不少,后面会专门介绍。 据我说知,Lua 中 protobuf 的库都是基于 FFI 来做的,OpenResty 并没有专门的这方面的库。
2019-05-2230 - 咆哮用了openresty两年,陆陆续续给公司做了两个版本的waf、api网关,希望学习提升自己
作者回复: waf 和 api 网关都是 OpenResty 擅长的方向。技术选型不错:)
2019-05-227 - 业余草OpenResty 借助 Lua 语言,插上翅膀。OpenResty 为什么不借助其他脚本语言呢?比如 Shell 等。我通篇文章看下来一直在说 OpenResty 的优势,但是没有比较,只能脑补。很空洞。就我一个有这样的感觉吗?
作者回复: OpenResty 的第一个版本是把 perl 嵌入了 NGINX,但性能很差。NGINX 官方把 js 嵌入进来,也有一些开源项目把 php 嵌入 NGINX。
2019-05-276 - 冯思鸣现在的KONG API 网关就是基于openresty+ lua去开发的吧?基于KONG做扩展是否会更方便,毕竟它提供了很多现成的扩展。
作者回复: 是的,Kong 就是基于 OpenResty 的。基于 Kong 做插件也是 OK 的,如果你的需求是做网关的话。
2019-05-293 - 吃草🐴~说来惭愧,我是从买这门课起开始接触 OpenResty 的,哈哈。目前工作中还用不到这个,是兴趣驱动学习。希望学完课程后,能运用到工作中~😃
作者回复: 可以在新项目中试试,或者替代现有的 NGINX 服务也是不错的。
2019-05-282 - geraltlaush老师,我们有个音视频后台服务没有过载保护,可以使用openrestry来开发网关ma
作者回复: OpenResty 很适合限流限速的场景,可以针对不同的请求,来动态控制。后面也会有章节讲到。
2019-05-272 - 冰河时代老师,最近在学习Spring Cloud,用Zuul做服务网关和OpenResty该怎么选择,或者他们的应用场景有什么不同吗?
作者回复: Zuul 我不懂,现在更流行的是 Kong。你可以找找对比他们两个的文章。
2019-05-271 - Mr. Ren期待后续课程,听了下感觉挺好,实战很重要
作者回复: 学以致用最有效果
2019-05-261 - xfan工作中刚刚用到kong,还不错
作者回复: Kong 是基于 OpenResty 最成功的项目了
2019-05-231 - 普罗米修斯今年搞区块链项目用到了……老师带我超神
作者回复: 区块链是用在哪里呢?API 网关?
2019-05-231