引言

最近有项目上线,虽然PV巨大(1kw/天),但整体复杂度不高,主要还是靠CDN抗流量,但就是这么个项目,遇到了两个意料之外的非程序级问题。
扎心了,扎心了,扎心了;罪魁祸首其实是开发人员都特别容易忽略的DNS

问题描述

  • 微博+微信授权获取个人信息,突然发现都不行了
  • 内网CI系统,发布线上和测试都失败了

说着容易,但实际上当时急着上线,客户着急花钱,几百万银子呀,客户在提修改,兄弟们都奔溃了,实在是不知道啥原因,难道只能认栽吗?
– 以上都是废话。。。。

解决思路

  1. 排查,先排查CI系统,代码上不了服务器,这不要命么,总不能一直手动更新吧,一顿操作,shell、php、python都查了个遍、无问题
  2. 排查,后排查项目程序,客户改的太频繁,负责后端的兄弟都失去自信了,最终一个挨个方法查无问题
  3. 排查,程序没问题,那就是服务器了,看zabbix报警,看网络跑满、看服务器error_log,一顿操作无问题无问题
  4. 客户着急上线、商务催着发版、兄弟们依然崩溃(凌晨1点了呀)
  5. 一顿操作猛如虎,原来是个250呀
    点燃一根烟,冷静、冷静、冷静,程序没错、服务器正常、网络正常,那么CI用域名了,微博用域名了,微信也用域名了,难道DNS出问题了么???
ping: unknown host api.weixin.qq2.com
  1. 原来DNS挂了,那家的机房我就不说了,反正是DNS挂了全完了。

故事还没有结束,
那就换呗,换个好的阿里云的DNS可以了吧,CI/weibo好了,可是微信还是不行,这就让人费解了,DNS好了,也能ping通了,咋回事?

  1. 本地ping 微信域名居然和服务器返回IP不一样,是不是有问题?
  2. 换个腾讯的DNS,所有问题解决。。。。

解决方案

  • 绑定hosts,这是最快的解决方案
  • 换DNS,找个运营商(联通、电视都行)的DNS

写个工具

换DNS的时候发现有的DNS解析特别不稳定,有的时候解析快,有的时候解析慢,怎么解决?写个脚本吧,用数量来衡量质量吧。

# -*- coding: utf-8 -*-
# @Junqiang
import sys
import os
import time
print('start test dns.....')
t_nums  =       10000
timeout =       0
domain  =      "api.weixin.qq.com"
command =       "curl -o /dev/null -s -w %{time_namelookup},%{time_total}"+" "+domain
t_nl_total=0
t_t_total=0
i=0
while (i < t_nums):re_str  =       os.popen(command).read()re_list =       re_str.split(",")t_nl    =       float(re_list[0])t_t     =       float(re_list[1])t_nl_total = float(t_nl_total+t_nl) if t_nl_total>0 else t_nlt_t_total = float(t_t_total+t_t) if t_t_total>0 else t_t#resultsif i==0 :print "-----namelookup over 1s show lists:-----"if t_nl>=1 :print str(t_nl)+"--"+str(t_t)#time.sleep(timeout)i=i+1print "average time_namelookup -- avearge time_total"
print str(t_nl_total/t_nums)+"--"+str(t_t_total/t_nums)#print "test is end"

善意的想法

  • 机房的DNS可能半夜重启或者睡着了,不怪他
  • 阿里云的DNS不是解析不了微信域名,而是人家不让他更新了。。。。。

遇事不要慌,先点一根烟。。。。

阿里腾讯神仙打架之要命DNS(草泥马飘过)相关推荐

  1. 一场云端的“神仙打架”:BAT加华为的影响未来之争

    作者|震霆 出品|新芒X        公众号|GOwithAI Up in the Air ! 这是2009年上映的一部经典的电影名称,翻译成中文叫<在云端>,想必有不少人看过. 男主角 ...

  2. “神仙”打架,“凡人”遭殃

    神仙是啥?古时神话时代举手翻江倒海的人物啊,那神仙打架是啥后果,相信大家心里都有个底吧.那现代社会的"神仙"是啥?那就是有钱有权的大人物或者商家,那真是让咱仰望的对象啊~      ...

  3. 2022前端秋招面试题总结 阿里 腾讯 字节 百度 网易 京东 小红书 快手面试记录

    2022前端秋招面试题总结 阿里 腾讯 字节 百度 网易 京东 小红书 快手面试记录 等了百度三个月,终于发offer了,白菜价,92大佬们拒的薪资,我知足了. 排序挂了狠多,快手,蚂蚁,- 很绝望 ...

  4. “守、攻、抢”配送机器人市场的“神仙打架”

    文|佘凯文 来源|智能相对论(ID:aixdlun) 近几日,随着北方天气转凉,网络上一则关于"关怀外卖小哥"的话题再次被谈起.更是发起了一个"恶劣天气,到底要不要点外卖 ...

  5. 2022年神仙打架,各家主机PC游戏厂商都拿出了招牌菜

    此前,游戏新知曾报道过2022年值得关注的手游作品,有不少读者在文章评论区提出,2022年PC与主机上的新作品同样值得期待,因此游戏新知也对未来一年的PC与主机游戏作品做了盘点. 需要注意的是,这份名 ...

  6. 神仙打架?细数玩刺激战场中被检测的几种情况:你中招了吗?

    玩刺激战场被封号了怎么办?不少人玩刺激战场的时候会跳出各种弹框,基本分为几种:模拟器玩家.模拟器过检测玩家.WG玩家,还有人在问为什么会别检测甚至封号,讲真的,什么原因你心里没点13数吗?一起来看看各 ...

  7. “神仙打架”的预制菜赛道,国联水产携手盒马能否“C”位出道?

    2022年,刚刚开始两个星期,预制菜概念板块以一己之力"炒热"了整个资本市场. "预制菜概念"更是在A股市场掀起一阵风潮.二级市场上,包括国联水产.福成股份.得 ...

  8. 【求锤得锤的故事】Redis锁从面试连环炮聊到神仙打架。

    来自:why技术 又到了一周一次的分享时间啦,老规矩,还是先荒腔走板的聊聊生活. 有上面的图是读大学的时候,一次自行车骑行途中队友抓拍的我的照片.拍照的地方,名字叫做牛背山,一个名字很 low,实际很 ...

  9. 阿里腾讯裁员冲上热搜,消息称最高涉及30%,官方未回应

    阿里腾讯裁员冲上热搜,消息称最高涉及30%,官方未回应 3月13日,阿里裁员.腾讯裁员的消息集体冲上微博热搜.目前话题阅读量分别为9789万和9520.6万.话题词显示,有消息称腾讯阿里等会在未来几周 ...

最新文章

  1. framework7使用笔记
  2. Python第二周 str的方法
  3. html一个div浮动在另一div上,css – 在另一个DIV的顶部浮动DIV
  4. NoSQL数据库之Redis数据库:Redis的介绍与安装部署(redis-2.8.19/3.2.5)
  5. Java方法中的参数太多,第4部分:重载
  6. 什么样的项目经历会让面试官眼前一亮
  7. 全球仅3000人通过的TensorFlow开发人员认证到底有多香!
  8. angular4-http
  9. java ad 证书_你好,请教一个java与AD域SSL(636端口)通讯问题
  10. nginx rwrite及增加不记录特定状态日志nginx模块
  11. RK3288_Android7.1写一个GPIO驱动控制LED灯亮灭
  12. vba随机抽取人名不重复_用vb编写个随机滚动抽取人名的抽奖系统,怎么样做到不重复并添加一个记录显示已抽到的人名...
  13. java 实现宠物领养_基于JavaEE的宠物领养系统的设计与实现任务书
  14. 热点的ap频段哪个快_热点ap频段有什么区别
  15. 优动漫PAINT新建文件
  16. 【stm32f407】硬件介绍
  17. FileWriter和BufferedWriter用处,区别
  18. 常用软件(Android)
  19. iOS - 中获取各种文件的目录路径的方法
  20. 手机室内地磁定位软件_首款手机室内地磁定位导航系统问世 无需WIFI

热门文章

  1. 如何设计用户体验测试用例
  2. 进入Ubuntu的命令行模式
  3. 声网如何处理直播 SEI 相关问题?
  4. amp;#9733;平衡法则在生活中的应用
  5. 01 words sentences BYOD
  6. OpenAPI EAI API
  7. 和 谐 文 化 简 介
  8. 高级工程师面试 - MySQL
  9. android中64位手机,我们需要64位Android手机吗?
  10. Geogebra 教程之 04 Geogebra 小程序