最近公司的新需求中要增長活動營銷,整個組的人都被安排去研究某成熟產品的實現。我也認真地在看webService部分的實現,發現了一個詭異的10614端口的請求。linux
代碼以下圖:nginx
這是一段服務端發請求驗證登陸的代碼,看上去是請求本地10614端口的一個web接口。因而我開始去nginx的配置查找這個host的信息,最終也沒找到。心裏的想法是:什麼鬼啊?web
我身旁的同事也找了好久,都以爲莫名其妙的一個請求,居然不知道接收方所在位置。apache
因爲服務器是windows的,長期混跡於centos,ubuntu等linux server的我也感到有點生疏感。按照慣性思惟都是先去查nginx或apache配置,但冷靜想一想應該從端口號爲起點去查出對應的應用。ubuntu
假設回到咱們熟悉的linux環境,一樣的問題轉變爲:windows
已知某端口號,求該進程是什麼。centos
命令以下:服務器
ps aux | grep 10614測試
直接就能夠查到進程執行的命令。debug
難道大名鼎鼎(惡名昭著)的windows沒有辦法根據端口號查進程的嗎?
bing了一下,解決方法以下:
先查出pid,而後根據pid到tasklist中查到對應進程。可見並非一個website請求,而是去調用一個打包的exe文件作處理。
從此次debug中,我感受人的慣性思惟很強,老是腦補一些細節和證據,每每走偏路線。要理性分析,從本質上出發,實際上就是找進程罷了。一樣的事情發生在各類測試中,工程師最愛說的就是:爲何本地能夠啊,放到服務器上就不行了?捫心自問:本身的環境真的和服務器高度一致嗎?對比過配置文件的diff?
打破慣性思惟,少一點腦補。