OpenResty 1.27.1.1 已经正式发布

news/2024/11/8 4:24:06 标签: lua, 开发语言

OpenResty 1.27.1.1 已经正式发布,这是一个基于 NGINX 和 LuaJIT 的 web 平台。以下是关于此次发布的一些重点信息和更新内容:

下载与安装

  • 你可以在此处下载最新版本的 OpenResty。
  • 提供了便携式源代码分发、Win32/Win64 二进制分发以及为 Ubuntu、Debian、Fedora、CentOS、RHEL、OpenSUSE、Amazon Linux 预构建的 Linux 二进制包。

版本亮点

Nginx 核心
  • 基于最新的主线 nginx 核心 1.27.1。
  • 官方预构建包中添加了 http_v3_modulehttp_slice_module
OpenSSL
  • 从版本 1.1.1 升级到 3.0.15。
PCRE
  • 从版本 8.45 升级到 10.42。
LuaJIT
  • 更新到 2.1-20240815,包含各种优化和错误修复:
    • 改进了错误处理和栈溢出管理。
    • 增强了跨 32/64 位和确定性字节码生成。
    • 在 OpenResty 分支中禁用了哈希计算优化,因为可能存在严重的性能下降问题(CVE-2024-39702)。这个问题仅存在于 OpenResty 分支(agentzh-v2.1)中,上游 LuaJIT 不存在此问题。感谢 Kong Inc. 的 Zhongwei Yao 报告了这个问题。
核心模块更新
  • 改进了 keepalive 和 balancer 功能。
  • 添加了新的 SSL 相关功能,包括支持客户端验证中的受信任证书。
  • 添加了从 TLS 主密钥派生密钥的支持。
  • 实现了 ngx_http_lua_ffi_ssl_client_random 和相关函数。
第三方库更新
  • lua-resty-websocket 升级到 0.12,新增功能包括:
    • 添加了 send_continue 方法。
    • 支持客户端中的自定义 sec-websocket-key
    • 添加了连接到 unix 套接字的支持。
  • lua-resty-string 升级到 0.16:
    • 在 AES GCM 中添加了 AAD 支持。
    • 默认情况下,random.bytes 现在是密码学安全的。
  • lua-resty-redis 升级到 v0.31,进行了性能优化。
  • lua-cjson 升级到 2.1.0.14,支持 Lua 5.3 和 5.4 的整数。

完整变更日志

  • 自上一个正式版本 1.25.3.2 以来的完整变更日志可以在“Change Log for 1.27.1.x”页面浏览。

测试

  • 在 Amazon EC2 测试集群上进行了广泛的测试,确保所有组件(包括 Nginx 核心)都能良好协作。最新的测试报告可以在此处找到:测试报告链接。
  • 还在自己的全球 CDN 网络(称为“mini CDN”)中运行了基于最新开源版 OpenResty 的 OpenResty Edge 商业软件,为 openresty.org 和 openresty.com 网站提供支持。更多详情请参阅:OpenResty 官网。

社区支持

  • 访问社区页面以获取更多社区支持信息。

商业支持

  • 通过官方的 OpenResty XRay 产品提供商业技术支持和实时非侵入式在线监控及剖析解决方案。

反馈

  • 欢迎对此版本提供反馈。可以通过创建新的 GitHub 问题或向其中一个邮件列表发送电子邮件来提供反馈。

http://www.niftyadmin.cn/n/5743219.html

相关文章

【C】无类型指针及函数指针

一、无类型指针 (1)无类指针只包含内存地址,不知道内存地址从存放数据是什么类型: void *ptrNULL; (2)可以其他类型赋给无类型指针,但是无类型指针赋给有类型指针会警号; …

详解Rust标准库:VecDeque 队列

theme: github highlight: an-old-hope 查看本地官方文档 安装rust后运行 rustup doc查看The Standard Library即可获取标准库内容 std::connections::VecDeque定义 队列是遵循先入先出规则的线性数据结构,在内存中不一定连续 VecDeque定义:可增长…

K8S群集调度二

一、污点(Taint) 和 容忍(Tolerations) 1.1、污点(Taint) 设置在node上是对pod的一种作用 节点的亲和性,是Pod的一种属性(偏好或硬性要求),它使Pod被吸引到一类特定的节点 而Taint 则相反,它使节点能够排斥一类特…

如何编译安装LNMP环境

LNMP 是 Linux、Nginx、MySQL 和 PHP 的组合,是一种流行的 Web 服务环境。以下是如何在一个典型的 Linux 系统(如 Ubuntu 或 CentOS)上编译安装 LNMP 环境的详细步骤: 1. 准备工作 确保你的系统是最新的,并安装一些必…

驱动-----中断底半部

之前处理中断在中断服务程序里面,就是我们自己注册了一个中断服务程序,一产生中断就自动调动这个程序。 但是中断的处理越快越好 同步调用:就是等调用的函数执行完毕然后再返回原来的位置。 异步调用:就是不等调用的函数执行完…

线性数据结构之栈结构

栈(Stack)是一种线性数据结构,遵循“后进先出”(Last In, First Out,LIFO)的原则。栈主要有两种基本操作:push(入栈)和 pop(出栈)。在栈中&#x…

linux驱动-i2c子系统框架学习(1)

可以将整个 I2C 子系统用下面的框图来描述: 可以将上面这一 I2C 子系统划分为三个层次,分别为用户空间、内核空间和硬件层,内核空间就包括 I2C 设备驱动层、I2C 核心层和 I2C 适配器驱动层, 本篇主要内容就是介绍 I2C 子系统框架中…

Linux,shell基础,变量,数值运算

linux 一.shell基础1.什么是shell在linux内核与用户之间的解释器程序,通常指/bin/bash2.shell的使用方式1.交互式2.非交互式3.Bash基本特征1.快捷键2.历史命令3.重定向4.管道5.别名4.shell脚本1.规范脚本构成(1) #!指定解释器(2) # 注释信息(作者信息,步骤,思路,用途,变量等)(3…