ITPub博客

首页 > 数据库 > 数据库开发技术 > 网关,三两谈

网关,三两谈

原创 数据库开发技术 作者:皇子谈技术 时间:2024-03-30 23:59:35 0 删除 编辑

网址:https://itgogogo.cn

大家好,我是皇子。

网关在网络层以上实现网络互连,主要用于两个高层协议不同的网络之间的互连,既可以用于广域网互连,也可以用于局域网互连。

它可以在使用不同的通信协议、数据格式或语言,甚至体系结构完全不同的两种系统时,作为翻译器,对收到的信息进行重新打包,以适应目的系统的需求。

此外,网关还提供请求转发、安全认证(身份/权限认证)、流量控制、负载均衡、降级熔断、日志、监控、参数校验、协议转换等功能。

如果确定要使用 Nginx 作为网关服务,要实现网关多功能的扩展,我们通常使用一个基于 Nginx 与 LuaJIT 的高性能 Web 平台,即OpenResty。

OpenResty 是通过结合 Nginx 的稳定性和 Lua 的灵活性,可以高效地实现这一系列高级网关功能。

其中 OpenResty 能实现如此多样化的高级功能,我认为有三点:

1、Nginx 模块化设计:Nginx 采用模块化架构,每个功能(如HTTP处理、负载均衡、SSL/TLS加密等)由独立的模块提供,使得系统结构清晰、易于扩展和维护。

2、lua轻量级嵌入:Lua 语言设计之初就考虑到与宿主程序的紧密集成,其小巧的体积、低内存占用和高效的解释器使其非常适合嵌入到其他应用程序中。在 OpenResty 中,Lua 脚本可以直接在 Nginx 工作进程中运行,无需额外的进程间通信开销。

3、Lua-nginx-module 的深度API集成:lua-nginx-module 提供了一套完整的 Lua API,允许直接操作 Nginx 的各种内部对象和状态,如请求、响应、连接、缓存、变量等。这些 API 使得 Lua 脚本能够参与到 Nginx 请求处理的各个阶段,实现细粒度的控制。

推荐阅读

有点意思,她腾讯一面就过了!

阿里面试体验,贼舒服

小米有点意思,选择不躺平,冲!

刚刚决定!放弃飞书,冲京东

任选一种签名方式,提高接口安全性

觉得有用,点个赞、在看或者转发 再走呀

关注公众号,后台发送【简历】,领取简历摸板





原文作者:皇子谈技术;如有侵权,请联系管理员删除。

请登录后发表评论 登录
全部评论

注册时间:2023-12-21

  • 博文量
    113
  • 访问量
    56518