1 月 12 日,由又拍云、OpenResty 中国社区主办的 OpenResty × Open Talk 全国巡回沙龙 | 深圳站拉开帷幕,这是巡回沙龙的首站。OpenResty × Open Talk 全国巡回沙龙旨在促进 OpenResty 在技术圈的发展,增进 OpenResty 使用者的交流与学习。在活动现场,4 位技术大咖分享了自己专业的观点和经验,让大家感受 OpenResty 技术带来的强悍性能、运行稳定和高度的可拓展性。

众所周知,OpenResty 是一个基于 Nginx 与 Lua 的高性能 Web 平台,其内部集成了大量精良的 Lua 库、第三方模块以及大多数的依赖项。用于方便地搭建能够处理超高并发、扩展性极高的动态 Web 应用、Web 服务和动态网关。不管你是关注 OpenResty,还是 Nginx、微服务、网关、Kubernetes 等技术领域,我们都诚挚地邀请你加入我们,了解 OpenResty,与社区共同成长进步。

image.png

OpenResty × Open Talk 全国巡回沙龙 | 深圳站邀请了 OpenResty 中国社区创始人、又拍云、虎牙、京东等公司在 OpenResty 和 Nginx 领域具有丰富经验的技术专家,内容涵盖内存对象缓存系统、动态流控、流量防刷容灾以及 Nginx 日志挖掘等,为近 200 名现场和数千线上观众提供了一场技术的饕餮大餐。

使用 OpenResty 实现 memcached server

OpenResty 软件基金会主席、OpenResty 中国社区创始人温铭做了开场演讲,分享了对OpenResty 社区未来的思考和展望,并介绍了如何用 OpenResty 实现 memcached server。

image.png

温铭提到希望真正实现 Comnunity Over Code,2019 年能有更多的机会和开发者、使用者一起,了解用户真正在用的时候 OpenResty 是怎样用的,用户有什么样的需求,社区能够怎样去开发一些大家经常用到,呼声比较高的功能,以便推动整个社区健康发展,正所谓“独行者速,众行者远”。

温铭举例介绍了用 OpenResty 实现一个简单的 memcached server 端,来给大家展示如何用 OpenResty 来处理四层的请求,并分享了在具体开发过程中团队的思路与技术方案。

OpenResty 动态流控的几种姿势

张聪担任又拍云首席架构师,主导又拍云 CDN 技术平台的建设和发展,是国内 OpenResty 技术早期推广者之一。他在活动上介绍了经典的 Nginx 速率控制和流量控制的指令和方法,并分享了如何利用 OpenResty 实现动态流量控制及又拍云的实践。

image.png

张聪认为:通常意义下流控是通过一些合理的技术手段,对入口请求或流量进行有效地疏导和控制,从而使得有限资源的上游服务和整个系统能始终在健康的设计负荷下工作,同时在不影响绝大多数用户体验的情况下确保“利益”最大化。流控有时候也是在考虑安全和成本时的一个手段。

 

张聪讲到又拍云在很早的时候跟 OpenResty 就有接触,又拍云的整个 CDN 系统,包括 API 系统,还有数据中心的网关系统,甚至分布式零存储的代理层、逻辑层,全部都进行了深度的改造。又拍云内部很多团队在 OpenResty 技术栈上都有很多年自己的实践。又拍云开放了一个 upyun-resty 的仓库,将又拍云内部孵化出来适合开源的一些项目与技术,及对社区的普通修复,在仓库链接出来。

节约百万成本的 Nginx 日志

虎牙直播运维研发架构师张波,目前主要负责虎牙直播运维体系的建设,主要针对 web 和后台类程序的发布、监控、运维自动化相关的运维系统的设计和开发。张波在活动上从数据挖掘层面跟大家探讨了 Nginx 日志的价值。

image.png


Nginx 是现在最流行的负载均衡和反向代理服务器之一,仅 Nginx 每天就会产生上百 M 甚至数以十 G 的日志文件。一个普通的 Nginx 日志有用户 IP、来源 IP,后端 stream IP、请求时间、状态码等一些信息。将这些信息指数做成一个故障定位页面,再将数据都收集然后统一展示,可以在各层实现快速定位。即使是一个客服,也可以定位到原因到底产生在哪里,大幅缩短排查时间与难度。

 

张波讲到利用 Nginx 日志数据每年为虎牙减少了数百万,乃至数千万的成本,并且给大家分享了 ELK、Druid.io、Kylin、Storm、Spark 等开源分析工具。

基于 OpenResty 流量的防刷及容灾

陈乾龙负责京东微信、手 Q 抢购后台,以及 OpenResty 入口流量的网关,本次分享介绍了基于 OpenResty 搭建流量网关的实践以及开发过程中碰到的问题及优化。

 image.png

陈乾龙讲到从最初做抢购防刷接触到 OpenResty,并利用 OpenResty 对刷子的请求做了识别以后进行导流与拦截。同时刷子带来的巨额流量对后端造成了巨大压力,介绍了如何在 OpenResty 层配置策略去产生容灾文件。

陈乾龙最后分享了在实际部署场景遇到的安全、Lua 调用 so 动态库,导致的阻塞降低 Nginx 的并发处理能力、Redis 的频率控制超时错误等问题以及解决方法。

 

OpenResty × Open Talk 全国巡回沙龙 |深圳站上,几位具备丰富经验的讲师通过分享自身的经验,令现场和直播观众收获匪浅。本次活动各位讲师的分享内容将陆续更新,请大家关注 Open Talk 官网(https://opentalk.upyun.com)或又拍云微信公众号(微信 ID:upaiyun)。

 

又拍云联合 OpenResty 中国社区,举办 OpenResty × Open Talk 全国巡回沙龙,2019 年将陆续在深圳、北京、上海、广州、杭州、成都等地举行,邀请业内资深的技术专家,分享 OpenResty 实战经验,推动 OpenResty 开源项目的发展,促进互联网技术的交流。

 

来源:网易 http://dy.163.com/v2/article/detail/E5J477JC05119HKN.html