据 dfinity.org 报道,WASP 项目已成功在 Internet Computer (ICP) 上部署了完全链上的 WordPress 版本。该版本不再需要外部数据库、链下缓存或代理服务器。
此次部署集成了 PHP 8.5 和 WASQL,使得包括前端和 wp-admin 管理后台在内的整个平台,均能仅通过 Canister(智能合约容器)实现运行。
此前,由于 ICP 存在单条消息指令数限制,开发者面临着巨大的技术障碍。由于单个 WordPress 管理页面往往会超出指令预算,导致系统频繁出现 503 错误。
为了解决这一难题,开发团队并未试图提高协议限制,而是通过重构应用架构来应对。新系统采用了由三个独立 Canister 组成的架构来管理流量与处理过程。
三层 Canister 架构
第一个组件是 Router(路由)Canister,它作为一个内置页面缓存的轻量级入口点。这使得匿名访客可以通过查询调用(query calls)访问缓存页面,开发者称这种方式“几乎是免费且瞬时完成的”。
第二个组件是 Worker(工作)Canister,负责执行 PHP 8.5。该 wasm64 Canister 拥有 8 GB 内存,并具备在达到指令预算时暂停请求、并在下次调用时恢复请求的功能。
第三个组件是 WASQL,这是一个利用稳定内存(stable memory)的专用数据库 Canister。WordPress 通过标准的 mysqli 驱动程序与该数据库进行通信,从而确保现有的插件无需任何修改即可保持兼容。
根据 dfinity.org 的数据,测试结果显示,由于缓存命中率极高,面向公众的网站响应迅速,同时 wp-admin 管理后台也能保持正常运行。
针对现有用户的迁移问题,项目负责人表示:“迁移过程会非常简单,我开发了一个 WordPress Beta 版插件,可以自动将您的网站从原托管服务器迁移到 Canister 中。”
据开发者估算,假设缓存命中率为 80% 且每月访问量约为 2,000 次,一个拥有 10 个页面的网站,每月运行成本可控制在 15 美元以下。
虽然 WordPress 的核心功能目前运行稳定,但开发者也指出,目前运行 WooCommerce 的版本“速度非常慢且资源消耗巨大”,仍需进一步优化。