專案上預發後閘道器,非常不穩定,經常超時。影響測試測
測試給了預發url 乙個需要token和乙個不需要
使用bash指令碼 ping 網域名稱(如果ip網不正常,會大量丟包)
使用bash指令碼curl請求閘道器(如果連線正常,返回200)
# --connect-timeout為連線超時,http請求tcp無法握手
watch -n 2 'curl --connect-timeout 2 ***url ; echo "`
date
` result: [$?]" >> r1.txt'
ping 結果沒有任何丟包
curl結果
# 第一行成功數 第二行失敗數(curl 28errorcode為連線超時)
wc -l r.txt ;
fgrep
'[28]' r.txt |
wc -l
495 r.txt
76
失敗率
76/(76+495)=13.3%
聯絡運維,排查發現是k8s內部dns解析問題,第二天在使用指令碼檢測
import datetime
import time
import requests
import schedule
url_ok_failed_dict =
defjob()
: p_str =
''for pre_url, ok_failed in url_ok_failed_dict.items():
try:
resp = requests.get(pre_url,
# connect 和 read timeout 秒
timeout=
(2.0
,5.0))
print
(resp.text[:20
])ok_failed[0]
+=1except exception as e:
ok_failed[1]
+=1print
(e) p_str += f' url: ok: failed: ' \
f'failed percent: '
print
(str
(datetime.datetime.now())
+ p_str)
schedule.every(2)
.seconds.do(job)
if __name__ ==
'__main__'
:while
true
: schedule.run_pending(
) time.sleep(
0.5)
穩定與不穩定
1 氣泡排序 氣泡排序就是把小的元素往前調或者把大的元素往後調。比較是相鄰的兩個元素比較,交換也發生在這兩個元素之間。所以,如果兩個元素相等,我想你是不會再無聊地把他們倆交換一下的 如果兩個相等的元素沒有相鄰,那麼即使通過前面的兩兩交換把兩個相鄰起來,這時候也不會交換,所以相同元素的前後順序並沒有改...
穩定與不穩定排序
首先,排序演算法的穩定性大家應該都知道,通俗地講就是能保證排序前2個相等的數其在序列的前後位置順序和排序後它們兩個的前後位置順序相同。在簡單形式化一下,如果ai aj,ai原來在位置前,排序後ai還是要在aj位置前。其次,說一下穩定性的好處。排序演算法如果是穩定的,那麼從乙個鍵上排序,然後再從另乙個...
網路不穩定 網路不穩定,天氣來背鍋
王者上星 深夜吃雞,那些影響你上分的因素,除了不靠譜的隊友外,你可曾知道 天氣也在偷偷影響你?不知道大家有沒有這樣一種感覺,一到下雨天,家裡wifi的網速就明顯變慢!是的,這不是你的錯覺。空氣濕度對wifi訊號有很大的影響,水分子對2.45g頻段電磁波的吸收加熱作用尤為明顯,而家用微波爐和wifi用...