当我谈论高性能时我们谈论什么?

讨论时间,大家自由发挥


  • 机器

  • 语言

  • 架构

    • reactor

    • coroutine

    • cache


学习指南 #1


  • reactor

    • http://blog.csdn.net/u013074465/article/details/46276967


  • coroutine

    • http://blog.csdn.net/wyx819/article/details/45420017


  • Tornado代码阅读笔记 IOLoop

    • http://t.cn/R5XxpMM




同步编程


  • 多线程, 用户态/内核态相互切换

  • 阻塞, 带来线程切换


异步编程


  • 事件驱动

  • 回调

  • 协程


OpenResty


  • Nginx

  • lua-nginx-module

  • lua resty libs

    • https://github.com/iresty/nginx-lua-module-zh-wiki#description


无聊的分割线


  • 基于lua的Nginx开发

  • Nginx的异步机制+lua coroutine

  • 够用的内置lua libs cosocket异步支持

  • 内置cache


ngx_lua模块的原理


  • 每个worker(工作进程)创建一个Lua VM,worker内所有协程共享VM;

  • 将Nginx I/O原语封装后注入 Lua VM,允许Lua代码直接访问;

  • 每个外部请求都由一个Lua协程处理,协程之间数据隔离;

  • Lua代码调用I/O操作等异步接口时,会挂起当前协程(并保护上下文数据),而不阻塞worker;

  • I/O等异步操作完成时还原相关协程上下文数据,并继续运行;


学习指南 #2


  • OpenResty 系列课程

    • http://www.stuq.org/course/1015

  • agentzh 的 Nginx 教程

    • https://openresty.org/download/agentzh-nginx-tutorials-zhcn.html

  • OpenResty 最佳实践

    • https://moonbingbing.gitbooks.io/openresty-best-practices/content/

  • nginx-lua-module-zh-wiki

    • https://github.com/iresty/nginx-lua-module-zh-wiki




API Gateway


  • 微服务

  • 入口

  • 授权、监控、负载均衡、缓存、请求分片和管理、静态响应处理


学习指南 #3


  • 微服务

    • http://blog.csdn.net/wurenhai/article/details/37659335/

  • API Gateway

    • http://dockone.io/article/482


640?wx_fmt=png

Kong


  • 基于Openresty

  • 自带武器库

  • 灵活的插件定制


学习指南 #4


  • Kong源码分析

    • http://cyukang.com/2017/07/02/kong-intro.html

  • 深入理解orange

    • https://github.com/linger1216/understanding-orange


定制需求


  • eebo auth

    • 独立auth模块

    • 灵活配置api是否需要auth

    • Python服务无需关注认证细节

  • eebo limiting

    • 基于内置rate-limiting开发

    • 提供company_id/user_id维度

  • eebo balancer

    • 提供私有服务

    • 强大的分布式分发


自带的插件


  • CORS

    • 用于处理跨域请求

  • IP Restriction

    • IP 黑白名单

  • Correlation ID

    • 为每个请求生成唯一请求id

    • 方便定位, 跟踪日志

  • Syslog

    • 推送日志到Syslog-


出处:https://zhu327.github.io/2017/11/27/openresty与api-gateway/


版权申明:内容来源网络,版权归原创者所有。除非无法确认,我们都会标明作者及出处,如有侵权烦请告知,我们会立即删除并表示歉意。谢谢。


640?wx_fmt=png

架构文摘

ID:ArchDigest

互联网应用架构丨架构技术丨大型网站丨大数据丨机器学习

640?wx_fmt=jpeg

更多精彩文章,请点击下方:阅读原文

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值