WordPress的性能团队贡献者已经合并了一个新的实验性的SQLite集成模块,该模块有望被纳入即将到来的1.8.0版本的Performance Lab插件。(这是一个包含有性能相关模块的功能插件集合的插件,团队希望能在WordPress核心中登陆)。这个新的模块允许冒险者测试新的SQLite实现,但要明白整体的用户体验仍将是粗糙的。
![图片[1]-Performance Lab插件将在1.8.0版本中增加新的实验性SQLite集成模块-搬主题](https://cdn.banzhuti.com/2022/12/20221209221352479.jpg)
在一份题为《让WordPress正式支持SQLite》的提案中,Yoast赞助的核心贡献者Ari Stathopoulos争辩说,不太复杂的网站(小型到中型网站和博客)不一定会从使用WordPress的标准MySQL数据库的要求中受益。
在低端领域,有一些小型和简单的网站。这些网站数量众多,包括所有的博客、公司网页,以及没有成千上万的用户或成千上万的帖子的网站等。这些网站并不总是需要复杂的MySQL/MariaDB数据库。对专用MySQL服务器的要求增加了他们的主机成本和安装的复杂性。在低端服务器上,它还会降低性能,因为同一个 “盒子”需要同时满足PHP和MySQL/MariaDB服务器。
在一个理想的世界里,用户可以在安装时选择他们的数据库类型。Stathopoulos说,这将要求WordPress有一个数据库抽象层,其他平台如Drupal已经有10多年的历史了。
他说:”为WordPress建立一个数据库抽象层将是一个巨大的任务–尽管这可能是一个在未来的某个时刻,我们可能不得不承担的任务,以确保项目的持续发展和寿命。
作为替代方案,Stathopoulos认为SQLite是一个 “完美的选择”,并列举了对小型网站使用它的好处。
- 它是全球使用最广泛的数据库
- 它是跨平台的,可以在任何设备上运行
- 它默认包含在所有的PHP安装中(除非明确禁止)。
- WordPress的最低要求是一个简单的PHP服务器,不需要一个单独的数据库服务器。
- 支持SQLite可以降低主机成本,减少能源消耗,并降低低端服务器的性能成本。
这个新的SQLite集成模块是基于wp-db-sqlite插件,这是一个SQLite数据库驱动drop-in,也被WordPress Sandbox项目使用,因为WASM不支持MySQL。wp-db-sqlite插件是基于小岛俊安在他的八年前的SQLite集成插件中的原始工作,该插件已经不能在WordPress.org上下载了。Stathopoulos说,这些解决方案经过多年的发展,已经被彻底测试,并被证明可以无缝工作,尽管它们在用户中并不出名。
Matt Mullenweg评论说支持该提案,因此,进入Performance Lab插件的实施可能会有一个体面的机会,在未来的某一天落入核心。大多数参与讨论的人都支持这个想法,但也讨论了一些潜在的缺点。这些缺点包括对多作者编辑和搜索等方面的支持较差。
Stathopoulos说:”MySQL现在是而且应该继续是默认的,因为如果你有志于成为下一个大事件,那么MySQL可以更好地扩展”。另一方面,如果你只是想要一个博客,一个有关于你的页面和联系表格的公司网站,或者任何类型的小网站(这可以说是WordPress上的大多数网站),那么SQLite就是你所需要的,它的性能会好很多”。
一些参与讨论的人也对SQLite对其贡献者持有的有争议的、宗教性的道德准则感到不满。Stathopoulos认为这不是问题,因为该项目是开源的,而且该技术被广泛使用。
“它的受欢迎程度充分说明了它能做什么,能在什么地方使用,”他在回应关于把WordPress和一个有令人反感的道德准则的项目联系起来的想法的批评时说。
如果你从早期就使用WordPress,你已经见证了它多年来变得越来越复杂。围绕着 “WordPress Lite “的想法的讨论每隔几年就会出现一次,但该平台的特定功能选择似乎一直是WordPress为43%的网络提供动力的主要因素(根据W3Techs)。NerdPress的创始人Andrew Wilder建议,一个SQLite的实施可能会从被打上 “WordPress Lite “的烙印中受益。
Wilder说:”看了上面的评论和潜在的问题,如果这确实在向前推进,也许以一种对用户有意义的方式来实施它的方法是同时把它打造成’WordPress Lite’。”因此,如果一个网站使用的是SQLite,可能会有一些功能根本无法使用(比如多作者,或者也许有某些数据库要求的插件无法安装)。”
那些对测试新的SQLite集成模块感兴趣的人,应该可以在下周试运行。谷歌赞助的性能团队贡献者Felix Arntz在昨天的团队会议上给出了一些关于测试的说明。
对于SQLite的实现,除了SQLite DB本身工作正常外,另一个需要测试的关键方面是模块激活时的用户体验。你会得到一个全新的数据库,但我们已经添加了一些逻辑,以使过渡尽可能的无缝。在一个典型的WordPress设置中,当你启用模块时,你不应该需要自己重新安装WordPress,你甚至不应该需要再次登录。
基本上,PR有逻辑在新的数据库中自动安装WordPress,使用与常规数据库中相同的基本设置数据。
请记住,这决不是迁移。这只是你将得到的安装;没有内容会被迁移。
Performance Lab插件的1.8.0版本预计将于12月19日星期一发布,并将包括新模块。
























暂无评论内容