05 架构高可用
【今日推荐】:为什么一到面试就懵逼!>>> process available 99.9% (1 - 网站不可用时间/年度总时间)* 100% 分层 不同层,关注点不一样 服务层 / 应用层: 集群, 解决高并发问题 数据层: 数据的安全, 数据不丢失, 数据访问服务不中断. 数据备份 失效转移 失效转移:若 数据服务器 集群中任何一台服务器宕机,那么应用程序针对这台服务器的所有读写操作都需要重新路由到其他服务器,保证数据访问不失败. 失效转移步骤: 失效确认,访问转移,数据恢复. 实际上现在很多数据库有相关的保护机制. 发布 网站发布,同时还在运行. 自动化测试 自动化测试工具 Selenium. 预发布验收 大型网站并非直接发布到生产(因为开发环境和生产环境不同),而是先发布到验收服务器,看情况,没问题再发布到正式服务器。 当然,现在有 docker 和 K8S 相对好一些了。 代码控制 SVN / GitHub 目前有两种方式: 主干开发,分支发布:代码修改都在主干上, 需要发布时,从主干上拉出一个分支发布, 该分支即成为一个发布版本,如果发现bug,继续在该分支上修改,并将修改合并回主干,直到下次主干发布。 分支开发,主干发布:任何修改都不在主干上进行,需要开发新功能或修复Bug时,从主干拉一个分支进行开发,开发完测试通过后,合并回主干,然后从主干发布