BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

您现在处于全屏预览
关闭全屏预览

ngx_lua在又拍云的应用:日志收集、性能调优与服务化
录制于:

| 作者 张聪 关注 0 他的粉丝 发布于 2016年8月8日 | GMTC大前端的下一站,PWA、Web框架、Node等最新最热的大前端话题邀你一起共同探讨。

亲爱的读者:我们最近添加了一些个人消息定制功能,您只需选择感兴趣的技术主题,即可获取重要资讯的邮件和网页通知

45:00

概要
ngx_lua 是一个 NGINX 的第三方扩展模块,它能够将 Lua 代码嵌入到 NGINX 中来执行。UPYUN 的 CDN 大量使用了 NGINX 作为反向代理服务器,并开发了一系列例如流量统计、缓存调度、防盗链等相关的 C 模块,但从 2013 年开始由于业务场景的复杂化,使得用 C 模块来写这些业务逻辑有点力不从心了,对于小团队来说开发和维护负担都很重,因此我们选择了将这部分业务逻辑迁移到 ngx_lua 上,事实表明,这大大提升了我们整个 CDN 层业务功能的迭代速度和最终线上表现。此次主要跟大家分享的就是我们团队在这整个转换过程中的一些心得体会,以及在 NGINX 上基于 ngx_lua 的一些有趣的功能,特别地,会着重介绍下我们是如果利用 ngx_lua 的灵活性来动态收集日志进行数据聚合分析的。

个人简介

张聪,又拍云系统开发工程师,C / Lua 程序员,目前主要负责 UPYUN CDN 相关的设计和开发工作,兼部分 UPYUN 分布式存储系统相关的运维工作;在 NGINX C 模块和 OpenResty / ngx_lua 模块的开发和维护方面有一些经验积累,同时热衷于推动公司内部的测试及运维自动化。偶尔会关注 C, Lua, Python, Erlang 相关的编程语言社区,同时对 Redis, NGINX 源代码研究工作非常感兴趣,崇尚简单实用的工程实践,希望自己以后成为优秀程序员的同时也是一位很好的实践者,用程序去创造东西,用程序去解决问题。

全球架构师峰会(International Architect Summit,下简称ArchSummit)是由InfoQ中文站主办的一次全球性架构师峰会。ArchSummit专门针对架构师人群,讲述与架构和架构师相关的各方面趋势、技术和案例。这也是继QCon之后,InfoQ中文站主办的又一次高端技术盛会。

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT