我的 OpenLiteSpeed 从开始到放弃之经历

昨晚下定决心放弃 OpenLiteSpeed 了,从开始到放弃历时七天。总结下来放弃 OpenLiteSpeed 主要是实在不适合明月当前的需要,用起来不是锦上添花而是个累赘了都,今天明月就给大家总结分享一下这次 OpenLiteSpeed 从开始到放弃的经历。

我的 OpenLiteSpeed 从开始到放弃之经历

一、Nginx 的 Rewrite 规则无法转换兼容

明月对 OpenLiteSpeed 产生兴趣主要听说其优秀的 PHP 执行效率以及应对大流量时候的平稳,从安装开始(可参考【正式在国内阿里云服务器上使用 OpenLiteSpeed 了】一文)就已经体会到 OpenLiteSpeed 的另类之处,在随后加入了 7 个 WordPress 站点(不同内容、不同主题、不同插件)后,就发现了一个“顽疾”问题,基本是无解。那就是一个 Nginx 的 rewrite 规则的转换问题!

我的 OpenLiteSpeed 从开始到放弃之经历

这个 rewrite 规则主要是为了实现 timthumb.php 裁剪的文章缩略图动态链接为静态化的,具体效果大家可以参考本博客首页、文章列表页的文章缩略图片网址即可,这么做的目的就是能更好的利用 CDN 缓存规则优化网站载入速度(实测效果明显提速出众),是 Dragon 主题的特色之一(也是明月一直都在推荐 Dragon 主题的主要原因)。谁能想到就这么一条 Nginx rewrite 规则竟然无法转换到 OpenLiteSpeed 上使用生效:

rewrite ^/timthumb/([0-9A-Za-z]+)/w/([0-9]+)/h/([0-9]+)/q/([0-9]+)/zc/([0-9])/a/([a-z]+)/spm/([0-9A-Za-z]+)\.([0-9a-z]+)$ /wp-content/themes/dragon/functions/timthumb.php?src=$1&w=$2&h=$3&q=$4&zc=$5&a=$6&spm=$7;

明月用了两天时间查阅大量的资料,甚至在 OpenLiteSpeed 社区里求助,都没有找到解决办法,到现在都已经过去四天了,依然是没有看到能解决的希望,OpenLiteSpeed 官方人员也是无能为力,虽然 OpenLiteSpeed 延续的是 Apache 的重写规则,但就这个 rewrite 规则无法兼容和转换成功。这就带来了 SEO 和页面载入速度两个问题,搜索引擎开始不断的回源抓取已经收录的伪静态缩略图链接,都给返回 404 错误了;每次载入页面都只能 timthumb.php 动态请求的方式裁剪图片,造成某些站点首页 Ctrl+F5 强制刷新一次就给服务器上的 OpenLiteSpeed 造成了直接宕机的负载飙升:

我的 OpenLiteSpeed 从开始到放弃之经历

试问有几个国内云服务器经得起这种负载飙升呀?

选择 OpenLiteSpeed 是尽量发挥云服务器性能的,不是来让负载飙升的,更不是来要求升级服务器配置的,为此明月也试图通过调整 OpenLiteSpeed、PHP 配置缓解这种情况,这就引出来了第二个无解的“顽疾”。

二、OpenLiteSpeed 的 LSAPI 调用 PHP 机制

理论上 OpenLiteSpeed 的 LSAPI 运行 PHP 速度会更快,但明月感觉 OpenLiteSpeed 好像忽略了服务器承受能力极限的问题,在配置里设定了 PHP_LSAPI_CHILDREN limit 限制的变量直接被无视了都,依旧会瞬间出现 lsphp 进程执行拥堵的问题,刚开始是 Ctrl+F5 强制刷新造成的,最后竟然直接就是正常载入首页都不行了。

我的 OpenLiteSpeed 从开始到放弃之经历

并且 PHP 明明开启了 OPCache,不是去调用 OPCache 缓存,而是依旧直接调用 lsphp 进程执行 PHP 代码,就算是 WordPress 上已经启用了 LiteSpeed Cache 插件也依旧如故,也不知道给 PHP 开启 OPCache 有啥意义?总不能为了 OpenLiteSpeed 而去刻意精简网站上首页布局吧?

我的 OpenLiteSpeed 从开始到放弃之经历

三、MySQL/MariaDB 数据库缺乏原生支持

安装过 OpenLiteSpeed 的都知道,OpenLiteSpeed 环境下数据库是需要独立安装和配置的,OpenLiteSpeed 面板上也没有管理数据库的接口基本算是两个独立的 Linux 应用,这样的逻辑下自然也没有针对性的数据库配置了,使用过 LNMP 的都知道,每次安装部署完数据库的配置都已经默认配置好了,虽然部分配置参数需要根据具体硬件配置进行调整,但也总比配置一片空白,完全需要自己手动一个一个参数加入高效了。

我的 OpenLiteSpeed 从开始到放弃之经历

OpenLiteSpeed 里就是这么尴尬,并且官方文档里也没有建议的数据库配置参考,社区里官方人员都是以及数据库不属于 OpenLiteSpeed 组件为由拒绝回答帮助。这样的情况明月只能自己配置数据库参数了,而参考 LNMP 环境的数据库配置,运行起来极不稳定,刚开始的三天数据库进程几乎每天都会莫名其妙的死掉,还大部分都是凌晨至早上这个时间段,每次看到网站数据库连接报错给人的感觉非常的不好,虽然最后给数据库加入了自动重启算是勉强解决了,但这样的运维环境真的是让人放心不下。

我的 OpenLiteSpeed 从开始到放弃之经历

还是这个负载看着舒服!

四、总结

综上所述,无论是 OpenLiteSpeed 稳定版还是预览版目前都不适合明月的运维需求,勉强用下去几乎也就没有什么用户体验之说了,rewrite 规则不仅仅带来的是速度下降的问题,还会有安全上的隐患,随便一个 CC 攻击利用一下都可以几分钟内轻松让服务器挂掉。PHP 的问题更是头疼,但凡稍微布局复杂一些、内容多一些的首页都有可能造成可怕的负载飙升。数据库的不稳定,连定时自动备份都受到影响了,这就真的是不能接受了,总不能天天盯着服务器吧?所以,昨天明月果断放弃了 OpenLiteSpeed,重新用回纯净的 LNMP 环境,上述所有的问题麻烦都没有了!

明月感觉 OpenLiteSpeed 可能在某些简单的应用场景表现优秀,比如:1-2 个网站、配置上没有特殊需求的用起来还是很不错的,但并不适用明月,还好明月专门抽出时间在阿里云服务器上测试这一周,要不还真的是发现不了这些“顽疾”。这里建议大家还是要遵循“实践才是检验真理的唯一标准”这句至理名言,不要盲目跟从。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/620807.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

为什么大家都说it行业要死了?

年后开始找工作开始还不敢投简历怕准备不充分。怕错过了心仪的公司。 花了2周自己死磕了一下自我介绍,和工作经历。然后信心满满就开始投了,结果发现一堆人打招呼一阵欣喜的。可是一查全是外包公司。于是开始了自我怀疑。难道是我能力不行?难…

反转链表(C语言)———链表经典算法题

题目描述​​​​​​206. 反转链表 - 力扣(LeetCode): 答案展示: 迭代: 递归: /*** Definition for singly-linked list.* struct ListNode {* int val;* struct ListNode *next;* };*/ struct ListNode* rev…

等保测评技术方案(五)

(八)漏洞扫描方案 1.参与人员 乙方工程师:谭 然、张 剑等。 范围经过双方确认,此次评估的对象包括: 2.网络设备 IP 地址 设备型号 备注 / / / / / / 以现场测评实际数据为准 3.应用系统 地址 …

Python从0到POC编写-魔法方法

name __name__ 是系统定义的内部函数, 它的作用是识别模块。 通常我们看到这样一句话: if __name__ __main____name__ 的值有两种情况,那么挨个来说下。 如果模块是被直接执行的 ,那么 __name__ 的值 为 __main__ 例如&…

GBPC2510-ASEMI工业电源专用GBPC2510

编辑:ll GBPC2510-ASEMI工业电源专用GBPC2510 型号:GBPC2510 品牌:ASEMI 封装:GBPC-4 最大重复峰值反向电压:1000V 最大正向平均整流电流(Vdss):25A 功率(Pd):中小功率 芯片个数&#x…

汇聚荣科技:拼多多开店时后期押金可以退吗?

在电商领域,拼多多以其独特的团购模式迅速崛起,吸引了众多商家入驻。对于这些商家而言,了解平台的各项费用政策尤为重要,其中押金的退还问题是大家关注的焦点之一。那么,拼多多开店时后期押金可以退吗?答案是肯定的。…

要不还是别搞Google Play了

​好消息:误导性条款合规了 坏消息: 应用被暂停了,太难玩了 5.13日收到邮件,被告知应用因为应用内体验问题被暂停上架了 邮件大意是由于违反执行流程政策(Violation of Enforcement Process policy)。 这个政策主要是讲Google Play会对账户/…

简述RocketMQ系统架构及其相关概念

一、概述 RocketMQ是一款高性能、高吞吐量的分布式消息队列系统,它采用了分布式架构,支持多生产者和消费者并发读写,具有高可用性、高吞吐量、低延迟等特点。本文将对RocketMQ的系统架构进行详细解析。 二、架构设计 RocketMQ采用了分布式架…

深度学习知识点全面总结

ChatGPT 深度学习是一种使用神经网络来模拟人脑处理数据和创建模式的机器学习方法。下面是深度学习的一些主要知识点的总结: 1. 神经网络基础: - 神经元:基本的计算单元,模拟人脑神经元。 - 激活函数:用于增加神…

通过任意文件读取获取weblogic账号密码

对于weblogic获取到账号密码的前提是有任意文件读取存在,当任意文件读取存在时是可以读取配置文件来对账号密码进行解密。weblogic密码使用AES(老版本3DES)加密,对称加密可解密,只需要找到用户的密文与加密时的密钥即可…

Docker基础学习

目录 初始docker 安装docker docker架构 配置docker镜像加速器 docker进程相关命令 docker镜像相关命令 docker容器相关命令 docker容器的数据卷 初始docker 我们写代码会接触好几个环境,如开发环境、测试环境、生产环境。代码从开发环境打包到测试环境&am…

中医揿针的注意事项

点击文末领取揿针的视频教程跟直播讲解 关于揿针的注意事项,我们可以从以下几个方面进行探讨: 01操作前准备 1. 确保针具的清洁和无菌状态,以避免感染。 2. 了解患者的身体状况,如是否有特殊疾病或过敏史,以便选择…

如何使用Shortemall自动扫描URL短链接中的隐藏内容

关于Shortemall Shortemall是一款针对URL地址安全与Web内容安全的强大工具,该工具基于纯Python开发,专为Web安全方向设计,可以帮助广大研究人员以自动化的形式扫描URL短链接中的隐藏内容。 Shortemall的全名为ShortEm All,该工具…

前端框架 Vue 主要用来做什么的?

Vue.js 是一个流行的前端框架,主要用于构建交互式的用户界面。它的设计目标是通过简单的 API 提供高效的数据驱动视图层。Vue 具有响应式数据绑定和组件化的特性,使得开发者可以轻松地构建复杂的单页面应用 (SPA) 和动态网页。 1. 数据驱动视图 Vue 的…

百亿补贴为什么用 H5?H5 未来会如何发展?

百亿补贴为什么用 H5?H5 未来会如何发展? 本人有一些分析预测。当然,这些分析预测只是个人观点,如果你有不同的意见,欢迎在评论区讨论交流。 百亿补贴为什么用 H5 我们先看两张图,在 Android 手机开发者…

Spring简介IOCDI

文章目录 Spring简介Spring课程介绍为什么要学学什么怎么学 初识SpringSpring家族Spring发展史 Spring体系结构Spring核心概念目前代码存在的问题核心概念 IOC和DI入门案例IOC入门案例入门案例分析实现步骤实现代码 DI入门案例DI入门案例分析实现步骤实现代码图解演示 Bean的基…

美业收银系统源码-App/iPad/PC管理系统常见问题讲解(1)

博弈美业管理系统源码 连锁多门店美业收银系统源码 多门店管理 / 会员管理 / 预约管理 / 排班管理 / 商品管理 / 促销活动 PC管理后台、手机APP、iPad APP、微信小程序 1、平板iPad的评论内容,是从哪里评论的呢? 顾客在接受服务后,可以到…

这些小众软件让你秒变职场高手

工作繁忙,效率不高?别急,今天就要给你种草几款超实用的小众工作软件,让你的办公桌面焕然一新,效率翻倍!👀 1️⃣《亿可达》 🖥️ 它是一款自动化工具,相当于国内版免费…

Pytorch如何计算网络参数

方法一. 利用pytorch自身 PyTorch是一个流行的深度学习框架,它允许研究人员和开发者快速构建和训练神经网络。计算一个PyTorch网络的参数量通常涉及两个步骤:确定网络中每个层的参数数量,并将它们加起来得到总数。 以下是在PyTorch中计算网…

Secnet-智能路由系统 actpt_5g.data 信息泄露漏洞复现

0x01 产品简介 Secnet安网智能AC管理系统是广州安网通信技术有限公司(简称“安网通信”)的无线AP管理系统。 0x02 漏洞概述 Secnet-智能路由系统 actpt_5g.data 接口存在信息泄露漏洞,未经身份验证的远程攻击者可以利用此漏洞获取系统账户…