华人澳洲中文论坛

热图推荐

    使用 WordPress 做纯后端和办理界面,完成网站飞速关上

    [复制链接]

    2022-10-2 18:17:03 57 0

    WordPress 除了做博客以外,其实还能够做成纯后端办事和办理界面(Admin UI),前真个模板能够不需求使用 WordPress 模板。
    举个例子:我的博客「WordPress果酱」是否十分快,其实这个博客不是经过 WordPress 模板引擎渲染的博客了。


    当初看到的页面其实是经过读取 WordPress 提供的接口,而后使用 PHP 模板渲染出来的。为了减速,PHP 每次读取接口的内容之后,把内容存储到 Memcached 中,第二次间接从内存中获得,所以速度十分的快。
    WordPress 作为纯后真个具体步骤
    1. 把「WordPress果酱」博客的后端放到此外一个域名上面或者目录上面,好比:http://wpjam.纯后真个域名.com/,而后经过拜候 /wp-admin/ 目录登录后盾进行更新的。
    2. 更新好内容之后,咱们就能提供 Rest API,WordPress 原生曾经反对了 Rest API,大家能够间接使用,我是使用本人写的一套,由于很早就写好了。好比好比文章列表的 API 接口:http://wpjam.纯后真个域名.com/api/post/list.json。
    3. 「WordPress果酱」的前端是使用 PHP+Memcached 写的一个内容缓存顺序,该顺序抓取 WordPress 的 Rest API 接口外面的内容,并使用 Memcached 缓存到内存,而后写个 PHP 模板渲染出来,简略能够说用 PHP 写个客户真个意思。
    WordPress 做纯后真个益处
    这样做,初步看起来,有点很繁琐,然而益处十分大:
    1. 速度快:由于是纯 PHP 写的,并且使用了 Memcached 进行缓存,所以「WordPress果酱」速度特别快,能够看到页面生成的时间都是 0.001 秒多一点,就是千分之一秒多一点。
    2. 可以扛大流量:由于「WordPress果酱」和它的办理后盾在两个办事器下面,不会由于前台拜候太猛,而形成后盾也挂了!而且前台的内容只是一个 Memcached 缓存,结合阿里云 OSS做了动态资源的 CDN,能够扛十分大十分大的流量。
    3. 办理便利:「WordPress果酱」办理后盾是搭建在此外一台办事器的 WordPress 多站点上,这样我一切的站点均可以在一个 WordPress 多站点上进行办理和内容更新,办理的任务就升高了十分多。
    4. 适配一切客户端:由于使用 Rest API 接口完成了先后端完全别离,所以假如当前要做 iPhone 和安卓客户端,或者小顺序,都会十分便利,一套接口能够适配一切客户端。「WordPress果酱」的小顺序很快会上线。
    5. 无需 WordPress 模板:咱们只需求解析 REST API,而后用 PHP 去写模板,不必再记各种 WordPress 模板函数了,假如不斟酌 SEO,乃至能够不必 PHP,间接让前端用 VUE 或者 React 做 Web APP。
    彻底的先后端别离
    这样做的益处就是彻底的先后端别离,页面的渲染均可以交给前端或者中台去处置,后端只需求去处置业务逻辑就行-了,固然博客对比简略没有甚么繁杂的业务逻辑。然而好比花生小店这样电商平台使用这样的计划的时分,开发就便利了得多,花生小店当前可能还会进化到微办事计划。
    目前还有一些细节需求特别优化以及需求讨论之处:
    1. 更新通知:就是在后盾更新了内容,怎么通知前端更新内容。目前我在前端 PHP 模板留了更新接口,在后盾写了一个更新通知插件,假如其余客户端,就无奈通知,可能就是需求前端就是实时抓取后端接口,不克不及缓存。
    2. 评论处置:评论我临时还没处置,由于我的博客没有开启评论,然而我感觉完成评论问题不大,在前端,能够简略了解为一个 PHP 客户端,那末重点问题就是怎么在客户端更新缓存,只有后端提供评论接口,前端收到评论胜利的信息之后,刷新一下详情页便可。
    3. 整站配置接口:一些基于评论和阅读排序的文章列表,更新不是特别的实时,目前这一块我的设法是经过做一个整站的配相信息接口来处置,把一些侧边栏的内容和底部内容这些都放到这个整站的配置接口外面,而且整站的通用接口缓存的时间能够短一些,这样经过折衷的形式来处置。

    发表回复

    您需要登录后才可以回帖 登录 | 立即注册

    返回列表 本版积分规则

    :
    中级会员
    :
    论坛短信
    :
    未填写
    :
    未填写
    :
    未填写

    主题36

    帖子43

    积分202

    图文推荐