又拍云Open Talk:OpenResty最佳实践

  • 时间:
  • 浏览:2
  • 来源:湖北快3_湖北快3网投平台_湖北快3投注平台_湖北快3娱乐平台

8 月 31 日,由又拍云、OpenResty 社区主办的 OpenResty × Open Talk 全国巡回沙龙·成都站在言几又·成都凯德店顺利落幕,这是系列活动的第五站。OpenResty × Open Talk 全国巡回沙龙旨在

       8 月 31 日,由又拍云、OpenResty 社区主办的 OpenResty × Open Talk 全国巡回沙龙·成都站在言几又·成都凯德店顺利落幕,这是系列活动的第五站。OpenResty × Open Talk 全国巡回沙龙旨在能够 OpenResty 在技术圈的发展,增进 OpenResty 使用者的交流与学习。在成都站活动现场,五位嘉宾分享了每人个 专业的观点和经验,让到场的开发者受益匪浅。

  成都站活动现场合影

  OpenResty × Open Talk 全国巡回沙龙成都站邀请了 OpenResty 软件基金会发起人温铭、王院生、又拍云系统开发高级工程师黄励博、原贝壳找房基础架构部工程师尹吉峰、奇安信工程师艾菲,分享了包括高性能 API 网关、云存储网关、高性能 Web 应用等 OpenResty 相关技术应用,为近百位现场观众和数千线上观众提供了一场技术盛宴。

  言几又·成都凯德店

  说起成都大伙儿的第一反应肯定是天府之国、美食之都、火锅二巨头之一,总而言之吃就完事了!然而本次活动的一大亮点只是在千丈口水中硬生生开出一片书香墨意,你是什么独具特色的活动场地——言几又·成都凯德店,为技术分享增添了一丝艺术气息,此处书成墙壁,纸建空间,字画风情,讲师们分享的内容化为有血有肉的实体,让每另另3个 多人到场者都被知识所包围。

  怎样做 API 网关的选型、测试和持续集成

  OpenResty 软件基金会发起人温铭做了开场分享,他是开源微服务 API 网关 APISIX 作者,《OpenResty 从入门到实战》专栏作者,他以开源微服务 API 网关 APISIX 为例,完整性介绍了 API 网关的选型和持续集成实践。

  OpenResty 软件基金会发起人温铭

  APISIX 是另另3个 多云原生、高性能、可扩展的微服务 API 网关,基于 OpenResty 和 etcd 实现,和传统 API 网关相比,APISIX 增加了包括支持多云和混合云、无状况、随意扩容和缩容等在内的诸多功能,还还还还后能 更为妥帖的满足企业个性需求的开发。

  温铭介绍了 API 网关的核心组件包括路由、插件、schema 和存储等,他通过对着3个组件的合理选取,使 APISIX 具有了后来 独有的功能;测试方面,APISIX 遵循着测试驱动开发的原则,通过单元测试、代码风格测试和代码覆盖率的检测,使 APISIX 达到了超高性能;持续集成方面,APISIX 强依赖 GitHub 和 travis CI,以及 coveralls.io。

  温铭总结到, APISIX 项目在设计与实现过程中,面临着资源少的那此的疑问,后来 通过对现有组件的合理使用,APISIX 的选型、测试和 CI 都找到了“取巧”和自动化的最好的辦法 ,大大提升了项目完成的时延和项目的性能,GitHub 和 SaaS 能提供的,绝对并不每人个 造轮子。

  又拍云基于 OpenResty 实现的云存储网关

  又拍云系统开发高级工程师黄励博,在又拍云主要负责私有容器平台、云存储、云处理相关的下发和开发工作,熟悉 Python/Lua/Go 等语言,在 Docker 容器方面拥有富足的实践经验,在 ngx_lua 和 OpenResty 方面有着富足的模块开发和维护经验。他在现场介绍了又拍云基于 OpenResty 实现的云存储网关,设计索引、存储、分块、负载均衡、流量控制等功能的实现与使用最好的辦法 。

  又拍云系统开发高级工程师黄励博

  黄励博从数据拆分、路由配置、存储常用的增删查改和扩容3个方面,完整性介绍了 OpenResty 在又拍云存储中的实际应用。

  黄励博讲到,又拍云存储是分布式存储,而分布式存储的优势为高可用、易扩展和易维护。而又拍数据的拆分是由 OpenResty 来进行的三次拆分,拆分后又将 OpenResty 作为路由层并详述了路由的配置规则。后来 介绍了又拍云存储系统中,以 OpenResty 的限制模块为基础开发的 token bucket 的最好的辦法 ,向大伙儿完整性的分享又拍云存储体系。

  一阵一阵地,又拍云作为时延应用 OpenResty 的企业,正在不断为 OpenResty 社区输出开源能力,目前后来 开源了以下项目:

  [1] upyun/slardar (https://github.com/upyun/slardar)

  [2] upyun/lua-resty-checkups (https://github.com/upyun/lua-resty-checkups)

  [3] upyun/lua-resty-limit-rate (https://github.com/upyun/lua-resty-limit-rate)

  怎样使用 OpenResty 搭建高性能 Web 应用

  原贝壳找房基础架构部工程师尹吉峰,多语言爱好者,偏向异步和函数式编程,酷爱原型搭建,先后在贝壳使用 OpenResty 搭建了 WebBeacon、图片处理、短连接服务等。他在现场介绍了怎样使用 OpenResty 做內部框架写服务,否是两种比较小众的用法。

  原贝壳找房基础架构部工程师尹吉峰

  尹吉峰认为过早优化是万恶之源,另另3个 多好的服务绝对有的是优化出来的,架构决定了另另3个 多服务的基准。有后来 Web 服务实际上是不适合做水平伸缩的,后来 也要高性能。他介绍 Web 应用绝大多数有的是 IO 密集型,通过异步编程、事件驱动的最好的辦法 还还还还后能 提高性能。

  尹吉峰提到,OpenResty 是 Nginx 和 Lua 的有机完美结合,Nginx 是一流的反向代理服务器,在一线的互联网公司后来 是另另3个 多标配,后来 在引入 OpenResty 风险很低;而 Lua 是小巧灵活的编程语言,支持 Coroutine,LuaJIT 性能强大,支持 FFI。日后,他完整性介绍了过去使用 OpenResty 构建高性能 Web 应用服务的实践。

  那此你后来 告诉我的 OpenResty 形态

  奇安信服务端开发艾菲,网名河马大侠,《 OpenResty 最佳实践 》贡献者,前 OpenResty 软件基金会成员。2013 年加入奇虎 360 ,擅长使用 OpenResty 完成各种网关和缓存行为。他在现场介绍了 OpenResty 中具有重要意义的后来 模块、命令、API 和框架等。

  奇安信工程师艾菲

  艾菲首先介绍了 OpenResty 作为 Web 服务器,提供了富足的 Lua API,包括 ngx.say、ngx.resp.get_header、body_filter_by_*、ngx.exit() 等,让大伙儿还还还还后能 去操纵 HTTP 的 request和 response 等基本元素,从而灵活控制整个 HTTP 的请求和响应体。后来 遇到业务代码,还还还还后能 用 Lua 的最好的辦法 编辑,开发时延是无可移就的。

  艾菲介绍了定时器 ngx.timer.at 用法,还还还还后能 实现延迟运行的任务逻辑,甚至于通过后来 特殊的调用最好的辦法 实现定时任务的功能,你是什么 API 还另另3个 多多“非凡”意义,还还还还后能 实现跨作用域。他在分享最后介绍了后来 HTTPS 的性能那此的疑问以及处理的最好的辦法 。

  高性能 API 网关实践

  OpenResty 软件基金会发起人王院生,《OpenResty 最佳实践》作者,开源微服务 API 网关 APISIX 作者,在 OpenResty x Open Talk 上海站的活动上,他完整性介绍了 APISIX 怎样做到高性能及实现的技巧,本次分享,他介绍即将发布的APISIX 0.7 版本路由后来 支持插件化,并肩后来 超 60 % 的代码覆盖率。

  OpenResty 软件基金会发起人王院生

  王院生在现场分享了后来 通用的 OpenResty 编程技巧,他将 radixtree 和 r3 做了对比解释了 APISIX 选取 radixtree 的原因分析,匹配模式简单、高效,支持遍历、回调等;ngx.var 能使项目性能提速,最简单的最好的辦法 是用 iresty/lua-var-nginx-module 的仓库,还还还还后能 有 5% 的性能提升;当遇到 fail to json encode 的状况时,他的做法是强制对 cdata、userdata 等进⾏编码,在有循环嵌套时依然还还还还后能 打印。

  除此之外,王院生还向在场的开发者推荐了他每人个 写的静态代码检查工具,能帮助处理后来 代码风格的那此的疑问。apisix/core 也是另另3个 多非常值得学习的基础库,帮助大伙儿了解后来 非常实用的库的实现。

(本内容属于网络转载,文中涉及图片等内容如有侵权,请联系编辑删除)