当前位置: 首页 > news >正文

各大网站创始人百度seo搜索排名

各大网站创始人,百度seo搜索排名,济南网页制作案例,南昌seo网站管理本文博主给大家分享线上多域名实战#xff0c;当线上主域名不可用的情况下#xff0c;启用备用域名完成网站高可用保障。 网站的高可用性一直是网站运维的重中之重。一旦网站宕机#xff0c;不仅会造成巨大的经济损失#xff0c;也会严重影响用户体验。备份域名就是一种实现…本文博主给大家分享线上多域名实战当线上主域名不可用的情况下启用备用域名完成网站高可用保障。 网站的高可用性一直是网站运维的重中之重。一旦网站宕机不仅会造成巨大的经济损失也会严重影响用户体验。备份域名就是一种实现网站高可用的重要手段。通过备份域名可以在主域名不可访问时快速切换域名保证网站正常运行。 一、前情回顾 博主上个星期线上项目突然出现了少量用户无法打开项目网站技术支持联系技术人员也就是博主我在用户电脑上复现了这一情况。 经过博主排查发现在客户电脑访问主域名时会出现连接超时通过 curl 进一步分析连接详情举例如下 C:\Users\16697curl -v www.wayn.com* Uses proxy env variable http_proxy http://11.22.11.22:4780 * Trying 11.22.11.22:4780...发现线上主域名在用户电脑上返回的 CDN 节点 11.22.11.22 存在访问不通的情况。博主便跟运维沟通 CDN 节点不通的问题运维回复是 CDN 节点不通是无法避免的要看 CDN 厂商对于用户的覆盖情况建议线上项目使用多域名并且每个域名使用不同的 CDN 厂商最大限度避免主备域名都不可用。 OK得到的运维的意见我们开始着手做多域名实现方案。 二、购买备用域名 实现域名高可用解决方案首先需要准备一到两条与主域名功能和形式相似的备份域名。如下 主域名 www.wayn.com备用域名一 bak1.wayn.com备用域名二 bak2.wayn.com购买备份域名后需要注意一下两点 需要在域名服务商那设置DNS记录将主域名和备份域名指向同一个IP地址。同时也需要为两个域名设置相同的CDN加速和安全证书保证用户访问体验一致。将备份域名的网站配置nginx配置文件与主域名保持一致。确保使用备份域名也可以访问我们的网站。 三、主备域名切换实战 这里我们介绍一下通过 JavaScript 代码来实现网站的主备域名如何进行切换。 JavaScript 实现域名切换的流程如下: 在页面启动时首先发起对主域名的请求判断其是否能够正常响应。如果启动时主域名不可访问就会访问备份域名。针对每个备用域名每隔一秒发送三次请求如果都能访问成功则认为备用域名可用。代码如下 // ES6 的模块引入方式 import fetch from node-fetchconst domain https://www.wayn111.com const bakDomains [http://bak1.wayn.com, http://baidu.com]masterDomainCheck()// 主域名检测如果不可用会检查备用域名是否可用 async function masterDomainCheck() {try {await fetch(domain)console.log(主域名启用成功)} catch (e) {// console.log(e)try {await getBakDomain()console.log(备用域名可用)} catch (e) {console.log(备用域名也不可用)}} }// 访问备用域名返回其中可用的一个域名 async function getBakDomain() {const apiPromiseList []for (let i 0; i bakDomains.length; i) {apiPromiseList.push(new Promise((resolve, reject) {bakDomainCheck(bakDomains[i], 3, resolve, reject)}))}return await Promise.any([...apiPromiseList]) }// 域名检测逻辑 async function bakDomainCheck(url, count, resolve, reject) {console.log(count)if (count 0) {try {await fetch(url)bakDomainCheck(url, --count, resolve, reject)} catch (e) {console.log(e)reject(e)}} else {console.log(bak domain${url} access success)resolve({ url, count })} }以上代码经过博主实测大家感兴趣可以将代码拷贝在本地跑一遍。 如果主域名启动时正常则开始定时监测主域名的可访问性。每30秒发起一次请求判断主域名的HTTP状态码是否为200。 // 主域名正常,开始定时监测 setInterval(() {fetch(https://www.wayn111.com).then(res {if (res.status ! 200) {switchDomain() }}) }, 30000)一旦监测到主域名故障开始调用 JavaScript 函数找到页面所有包含主域名的链接并将其替换为备份域名。 // 开始替换页面内域名为备份域名 function switchDomain() {let links document.querySelectorAll(a)for (let i0; ilinks.length; i) {if (links[i].href.indexOf(https://www.wayn111.com) -1) {links[i].href links[i].href.replace(https://www.wayn111.com, https://bak1.wayn.com)}} }继续定时监测主域名在主域名恢复正常时调用 JavaScript 函数将备份域名的链接替换回主域名。 // 定时检查主域名故障恢复,一旦恢复再切回主域名 setInterval(() {fetch(https://www.wayn111.com).then(res {if (res.status 200) { switchDomainBack()}}) }, 5000)function switchDomainBack() {let links document.querySelectorAll(a)for (let i0; ilinks.length; i) {if (links[i].href.indexOf(https://bak1.wayn.com) -1) {links[i].href links[i].href.replace(https://bak1.wayn.com, https://www.wayn111.com)}} }这样通过 JavaScript 检测域名状态与自动切换可以最大限度减少域名切换造成的访问中断时间确保网站高可用。  希望大家通过这个案例能对线上用多域名来实现高可用网站有一个较为全面的认知。网站过于依赖某单一域名存在潜在风险备份域名的引入主要是解决少数场景下用户访问不通我们网站的问题。
http://www.dnsts.com.cn/news/112430.html

相关文章:

  • 网站推广经验做电容元器件的网站有哪些
  • 广西城乡和建设厅网站p2p网站如何做推广
  • 莱阳有网站建设推广的吗什么是网络营销取得成功的基础
  • 个人做的网站不能做淘客建做网站
  • 免费flash网站模板带后台wordpress php 7.0
  • 做精彩网站分析的方向是鹿泉外贸网站建设
  • 青州网站谷歌优化seo
  • 站长工具seo综合查询网四川建设厅官方网站
  • 网站的制作建站人班级网站的规划与建设
  • 网站由哪些部分组成部分组成wordpress怎么让图全屏显示
  • 网站建设需要那些人才网络营销专业好就业吗
  • 网站建设情况的汇报建立网站后怎么维护
  • php网站开发实例电子版建网站相关知识
  • 成都私人做公司网站的哪个网站帮别人做ppt
  • 炫酷网站首页网页设计代码为什么没有颜色
  • 公司做网站需要给百度交钱吗北京网络安全大会
  • 丹东商城网站建设企业门户网站作用
  • 杭州网站制作公司网站邯郸做网站推广多少钱
  • 网站两侧广告代码箱包 东莞网站建设
  • 学校网站建设合同网站 建设 方案
  • 网站的数据库在哪里品牌建设
  • 查看网站国际联网备案号建设一个网站需要什么技术人员
  • 郑州贸网站建设公司wordpress twenty twelve修改
  • 网站设计风格分类永嘉网站建设工作室
  • 乐都网站建设哪家好网站集约化建设讲话稿
  • 静态网页有哪些网站wordpress建立数据库连接时出错
  • 立方米网站泰安房价网二手房出售信息
  • 网站怎么做显得简洁美观wordpress 调用tag标签云
  • 公司网站设计广州创业计划书
  • 网站建设课程设计百度文库800元五合一建站