喜欢就关注我们吧!

近日,WordPress 创始人 Matt Mullenweg 与 Netlify 首席执行官 Matt Biilmann 展开了一场口水战,双方就 WordPress 与新兴 WEB 应用架构 JAMStack 孰优孰劣进行了激烈的辩论。

何为 JAMStack?

JAMStack 是一种将 Web 应用部署为静态文件,从 API(如微服务发布的 API)中检索动态内容的架构,其中的 “JAM” 代表 “JavaScript、API 和 Markdown 组成的技术栈”。JAMStack 开发者通常使用静态网站生成器来构建网站,如 Next.js、Gatsby、Hug 或 Jekyll,由于不需要 Web 服务器,所以页面加载时间更快,尤其是在与内容交付网络(CDN)一起使用时。

JAMStack 的拥护者坚信它是 Web 应用的未来。但流行至今的博客和内容管理平台 WordPress 的创建者 Matt Mullenweg 却对此公开表示反对。

事件起因

事情始于今年 8 月,Mullenweg 在接受外媒记者采访时表示:“ JAMStack 对于绝大多数采用它的人来说是一种倒退,它的可用性和功能实际上是降低了。即使是在 JAMStack 中重建网站,也让人想起了 Movable Type 的时代,你的网站越大,重建或更新模板的速度就越慢。”

对于 Mullenweg 的言论,静态站点生成平台 Netlify 首席执行官 Matt Biilmann 在 9 月时作出回击:“ WordPress 的时代已经结束了。” Biilmann 认为如今的 WEB 开发在性能、可扩展性、可维护性、操作性和安全性上缺一不可,而 WordPress 在这些方面表现出来的是“不断增加的负担,而不是合理的权衡 ”。

为了给这两位名字恰巧都叫 Matt 的技术大牛提供一个正面交锋的机会,JAMStack 社区决定在近日邀请 Matt Mullenweg 参加他们的线上会议。两位 Matt 在这次会上进行了公开辩论。这场辩论吸引了很多 WEB 开发者的关注,不仅是因为两位大牛在技术观念上的碰撞,还因为 WordPress 在当今网络上仍然具有主导地位。根据 W3Techs 的统计,目前仍有 63.6% 的网站内容管理系统使用了 WordPress,另外有 38% 的网站本身也在使用 WordPress 。这场辩论也被视为一场新兴架构对老牌应用的挑战。

正式开战

这次的辩论中,Biilmann 谈到了采用 JAMStack 的网站拥有比采用 WordPress 等 “一站式搭建” 应用更强的可靠性。“虽然一些微服务可能会出现故障,但一个静态网站永远不可能真正完全瘫痪。” Biilmann 认为,JAMStack 网站更安全,因为一个错误的插件无法危及整个网站,“ 有了 JAMStack,网站的后台管理部分完全不会暴露在普通用户面前。” 此外,他还指出了 WordPress 的安全性问题:“根据我获得的资料,有大约 90% 出现重大安全事故的网站都采用了 WordPress,这个数据显然不是一件好事。”

在安全方面,Mullenweg 则反驳,问题的关键是如今的产品需要版本更新变得更加频繁和容易。“JAMStack 通常使用几十个 NPM 包来构建网站,每次版本更新同样会遇到你说的插件上的安全问题 ”。Mullenweg 声称,WordPress 内置的自动更新意味着用户可以在几周内让 70% 到 80% 的 WordPress 网站换上最新版本。

Mullenweg 对 WordPress 的安全性依然充满信心,他认为大多数 WordPress 的安全问题都来自一些维护不善的个人网站。“ 每个现代的 WordPress 主机都有办法拒绝运行不受信任的插件并保护人们。如果你看看 WordPress VIP 上的网站,或者你看看 WordPress.com,那里绝对没有安全问题。”

而在性能问题上,Mullenweg 指责 JAMStack “在营销上用力过猛”。他认为 JAMStack 在宣传过程中夸大了服务器端性能在网络性能中的重要性。“性能真正重要的地方是客户端。我认为对于性能来说,你们能做的最好的事情就是完全动态化,但是也要在前面放一个缓存 CDN。你看,Cloudflare 两天前刚刚宣布集成 WordPress 。”

相反,Billmann 则坚持认为 WordPress 已经成为开发者的死穴。“我们看到,在现代前端生态系统中,迭代和创新都非常快,一旦开发者被困在一个单体应用中(指 WordPress),他们必须依赖模板语言,围绕它构建基础设施,这样一来他们就会被切断与其他生态系统的联系,这将会限制他们的发展。”

发现在技术上难以说服对方,Mullenweg 又列举了一组数据:“使用一站式单体应用的开发方式正在获胜,今年拿下 WEB 开发最大市场份额的两个平台是 WordPress 和 Shopify,在全球排名前 1000 万的网站中,WordPress 占有率增加了约 3%,Shopify 增加了约 1.1%。如果你在谷歌上搜索 '用 WordPress 构建网站',你会发现 WordPress 实际上在过去几年中增长速度更快。”

“ 我不认为 WordPress 的时代已经结束了。”Mullenweg 补充道,“ 我认为我们将在未来几年内达到 50% 以上的市场份额。”

……

有业内人士分析,WordPress 如今依然火爆与架构本身并没有太大关系,而是因为用户喜欢这种一站式的软件即服务,而 JAMStack 包含了更多定制开发的部分,这就需要团队投入更多的开发成本。而目前,在市场上还没有一个与 Shopify、Squarespace 或 Wix 等同的 JAMStack 产品。

也有评论指出,Mullenweg 对 JAMStack 的抵制可能只是不希望 WordPress 用户流失到由 JAMStack 架构驱动的替代品上,但很难不同意 Biilmann 的一些观点,即 WordPress 架构确实存在一些固有的问题。WordPress 借鉴 JAMStack 的一些优势并与之融合,可能是一个更好的出路。

觉得不错,请点个在看呀

WordPress 已过时?创始人与新架构拥护者开战相关推荐

  1. swing程序 过时拉嘛_密码已过时-如何保护您的应用程序和保护用户

    swing程序 过时拉嘛 重点 (Top highlight) I've said this part before, so if you read the previous article, ski ...

  2. 百度云「升级战」:王海峰站台,新架构全面AI化,AI和知识中台登场

    5月18日,"ABC SUMMIT 2020百度夏季云智峰会"在线上召开.刚刚经历了人事变动的百度云迎来重磅升级,大会以"百度智能云加速产业智能化"为主题,百度 ...

  3. 张亚勤:新范式、新架构和新模态突破传统算力,推动物理世界走向数字化

    本文转自联想创投 近日,在联想创投2020 CEO年会上,清华大学讲席教授.智能产业研究院院长.美国艺术与科学院院士.百度前总裁张亚勤先生带来了<未来科技趋势展望>. 张亚勤表示,数字化的 ...

  4. 仍在警告:配置“编译”已过时,并已由“实现”代替

    本文翻译自:Still getting warning : Configuration 'compile' is obsolete and has been replaced with 'implem ...

  5. Spring Boot——WebMvcConfigurerAdapter已过时解决方案

    问题描述 Spring Boot2.0及以上版本,编译器显示WebMvcConfigurerAdapter已过时. 问题分析 暂无. 解决方案 实现WebMvcConfigurer接口 @Config ...

  6. Java 8 Friday:大多数内部DSL已过时

    在Data Geekery ,我们喜欢Java. 而且,由于我们真的很喜欢jOOQ的流畅的API和查询DSL ,我们对Java 8将为我们的生态系统带来什么感到非常兴奋. Java 8星期五 每个星期 ...

  7. openssl不是内部或外部命令_OpenSSL新架构蓝图

    概述 日前OpenSSL官网公布了未来OpenSSL的架构蓝图.作为战略性的架构目标,需要大量的版本迭代本文档概述了OpenSSL战略架构.它需要多个版本的迭代从目前最新的版本1.1开始直到3.0甚至 ...

  8. 揭秘 Flink 1.9 新架构,Blink Planner 你会用了吗?

    本文为 Apache Flink 新版本重大功能特性解读之 Flink SQL 系列文章的开篇,Flink SQL 系列文章由其核心贡献者们分享,涵盖基础知识.实践.调优.内部实现等各个方面,带你由浅 ...

  9. Facebook已经过时,蜂巢新网络崛起

    Facebook已经过时,蜂巢新网络崛起 责任编辑:editor007 作者:boxi |  2016-10-12 21:13:54 本文摘自:36kr 编者按:Arjun Sethi是SocialC ...

最新文章

  1. mysql 5.7 1054_MySQL5.7更改密码时出现ERROR 1054 (42S22)的解决方法
  2. python_2开发简单爬虫
  3. 前端学习路线_前端学习路线图
  4. 用Socket 打造跨语言跨操作系统的网络MORPG游戏(三)
  5. linux 安装库 编译提示-lcrypto 无法链接,缺少 crypto 库
  6. java中VO、PO、DTO 、DO、POJO、BO、TO
  7. Qt Ctreator搭配VS2013调试——整合QML/C++调试需要的从属调试引擎无法被创建
  8. java jtextfield 监听_Java JTextField DocumentListener如何用?
  9. 猿创征文|网络安全的十大经典工具介绍
  10. 即时通讯工具的基本功能和如何做防御
  11. 基于python的简易局域网聊天工具
  12. iOS开发者必备:五大编程类工具
  13. 游戏角色设计有哪些风格类型
  14. centos 6.8 请教笔记本上的虚拟机如何配置无线网络 桥接联网
  15. MYSQL不能远程连接
  16. 数字图像处理实验03——图像几何变换
  17. Java变量概述与使用
  18. M洞察|“MOBA”还是“MMO”?2023上半年热门手游大盘点来了,拯救你的游戏荒
  19. php 直接调用ffmpeg 中加水印,如何使用ffmpeg在视频中心添加透明水印?
  20. XAG一键并轨XRP媒体报道

热门文章

  1. Mathematica修改默认字体
  2. C#网络编程(订立协议和发送文件) - Part.4
  3. 如何做Teams Bot的测试覆盖
  4. 如何在Windows Defender中安排扫描
  5. sizeof string
  6. 数据库分库分表、读写分离的原理和实现,以及使用场景
  7. Spring Cloud Gateway 原生支持接口限流该怎么玩
  8. 新款ATM恶意软件Alice 可对抗动态分析 但目前需要物理接触主机
  9. javascript深拷贝和浅拷贝
  10. java如何进行字符串拼接?