中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

beego高級編程---->grace模塊熱重啟導致舊

發布時間:2020-06-23 02:22:22 來源:網絡 閱讀:7365 作者:asd1123509133 欄目:開發技術

背景:

        熱升級是什么呢?了解nginx的同學都知道,nginx是支持熱升級的,可以用老進程服務先前鏈接的鏈接,使用新進程服務新的鏈接,即在不停止服務的情況下完成系統的升級與運行參數修改。

環境:

beego高級編程---->grace模塊熱重啟導致舊


原因:

        沿著beego官方文檔開啟Graceful后, 運行kill -HUP pid重啟進程的時候, 舊連接其實并沒有繼續處理, 而是直接關閉了隨著舊進程,導致請求返回504 


解決:

        看了代碼是在grace/server.go中process.Kill()的時候把新進程的父進程直接殺死, 發送的是SIGKILL信號,進程不會處理,直接被殺死,其實在handleSignals函數里面也確實沒有處理這種信號。所以,代碼改為如下:
文件:grace/server.go, 函數ListenAndServe()以及 ListenAndServeTLS()

    //err = process.Kill()
     err = process.Signal(os.Interrupt)


最后:

        經過測試可以正常處理完未完成的連接。



以需求驅動技術,技術本身沒有優略之分,只有業務之分。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

马尔康县| 项城市| 临漳县| 陆川县| 桓台县| 建昌县| 长泰县| 年辖:市辖区| 汉川市| 乃东县| 都昌县| 泾川县| 兴城市| 开化县| 平果县| 新郑市| 佛山市| 津市市| 册亨县| 策勒县| 平凉市| 夹江县| 巩义市| 南通市| 资讯| 鲜城| 三台县| 淳安县| 水富县| 巩义市| 日喀则市| 陆丰市| 大同县| 赤水市| 中阳县| 惠州市| 合作市| 神农架林区| 泾源县| 武安市| 达尔|