起航天空博客经验分享
时间追溯到2018年01月23日,我注册了www.qhjack.cn的域名,当时我还只是在阿里云的虚拟主机中建站,部署了最基础的服务,我选择并开始熟悉使用Wordpress来进行建站选择了Nisarg主题,形成了最基础的配置。
后来,可能是由于虚拟主机环境的原因,我的网站被感染了病毒,但我却一直没管,直到后来决定启动ecs迁移计划,从虚拟主机迁移到ECS,在这段时间类,我创建了名为起航天空的子主题,继承于nisarg,决定执行个性化魔改。我编写了以下处理程序,首先完成URL重写。
当然,这个代码要生效,是需要从wp-admin的后台通过设置->固定链接页面进行刷新才能生效的。
在到后来以此实现了以下功能魔改:
- 登录表单
- 极验
- 启动懒加载技术
这还只是模板的魔改,为了提高访问速度和优化速度,我开始配置对象缓存系统,我选择使用redis作为对象缓存系统。使用方法如下:
- 安装redis服务器
- 安装redis-object-cache插件
- 启动对象缓存系统链接
对象缓存系统链接失败会导致网页异常
说真的,我一直希望能有机会着手开始接触HA集群部署,而就在这时,我遇到了XieBruce,它推荐我使用国外的服务器,一开始其实我有点犹豫,后面就在他的帮助下,开始着手使用国外的服务器,以至于后面绳子拥有了4台服务器,服务器功能分布:
服务器 | 角色 |
---|---|
service1 | BIND、OpenLDAP node、glusterfs node、mariadb galera node、phpfpm、nginx、redis-node |
service2 | BIND、OpenLDAP node、glusterfs node、mariadb galera node、phpfpm、nginx、redis-node |
service3 | BIND、OpenLDAP node、glusterfs node、mariadb galera node、phpfpm、nginx、redis-node |
service4 | nginx proxy、maxscale |
当然,我从一开始购买ECS的时候就开始玩自建DNS,但那时候自建DNS不能算真正的自建,因为要先报到上级DNS至少要具备1主1从。
到了这一步,网站对象缓存系统也开始以集群方式链接,同时增加了如下功能:
- 阅读量计算
- 订阅和反订阅
- 邮件发送和订阅功能
- 加载进度条
- js特效
- SEO
- 启动http2服务器推送优化
- 启动灯箱
- 实现多级的缓存加速机制
- 通过编译nginx打开AIO和线程池支持
在本文不描述如何部署,有兴趣的可见起航天空部署实战。
如今,起航天空已经走过了2年118天,真心不易,也希望大家多多支持。