gatekeeper学习概述
1、概述
該產(chǎn)品部署在網(wǎng)絡(luò)隔離裝置兩端,以代理程序的身份,完成兩側(cè)設(shè)備連接維護(hù),數(shù)據(jù)轉(zhuǎn)發(fā)的功能。場(chǎng)景簡(jiǎn)化如圖所示:
軟件核心是一個(gè)基于Netty的網(wǎng)絡(luò)應(yīng)用程序,考慮到系統(tǒng)的可維可測(cè)性,集成了web化的配置、監(jiān)控和調(diào)試功能。
2、啟動(dòng)類是GateKeeperWebMain
public static void main(String[] args) throws Exception {startJetty(PORT);}private static void startJetty(int port) throws Exception {LOGGER.debug("Starting server at port {}", port);Server server = new Server(port);Configuration.ClassList classlist = Configuration.ClassList.setServerDefault(server);classlist.clear();classlist.add("org.eclipse.jetty.webapp.WebXmlConfiguration");classlist.add("org.eclipse.jetty.annotations.AnnotationConfiguration");server.setHandler(getServletContextHandler());addRuntimeShutdownHook(server);server.start();LOGGER.info("Server started at port {}", port);server.join();}
3. web容器是jetty,在web服務(wù)啟動(dòng)過(guò)程中,通過(guò)spring初始化后臺(tái)相關(guān)bean,并在初始化完成后啟動(dòng)后臺(tái)監(jiān)聽(tīng)服務(wù)。
4. 發(fā)布維護(hù)過(guò)程中的一些收獲
1、功能的可用性
產(chǎn)品部署在全國(guó)各地多個(gè)地方,生產(chǎn)環(huán)境掉電重啟,網(wǎng)絡(luò)不穩(wěn)定等多種異常情況都會(huì)出現(xiàn)。
-?軟件需要保證掉電重啟自動(dòng)恢復(fù)等。
-?通過(guò)代理程序的心跳機(jī)制及重連機(jī)制,保證網(wǎng)絡(luò)正常或網(wǎng)絡(luò)斷開(kāi)恢復(fù)后能正常提供服務(wù)。
2、服務(wù)的可靠性
- 第三方服務(wù)端處理速度不一定快,如果是同步阻塞的話,就會(huì)加大系統(tǒng)自身負(fù)擔(dān),被外部拖累。
- 設(shè)備不可達(dá)等情況,應(yīng)有快速失敗機(jī)制。(一旦出現(xiàn)一定的超時(shí),如果有多次重試的機(jī)制,可能會(huì)使得網(wǎng)絡(luò)負(fù)擔(dān)更大,造成雪崩效應(yīng)。)
3、系統(tǒng)的維護(hù)性
- 提供版本一鍵安裝升級(jí)工具,操作簡(jiǎn)單快速。
- 提供一鍵日志采集功能。獲取服務(wù)器核心的操作系統(tǒng)日志、業(yè)務(wù)日志,便于有問(wèn)題時(shí)采集分析。
- 現(xiàn)場(chǎng)人員可以通過(guò)web監(jiān)控調(diào)試頁(yè)面,查看當(dāng)前系統(tǒng)狀態(tài)及網(wǎng)絡(luò)情況。便于簡(jiǎn)單問(wèn)題的現(xiàn)場(chǎng)自行處理。
?
轉(zhuǎn)載于:https://www.cnblogs.com/eaglediao/p/7656979.html
總結(jié)
以上是生活随笔為你收集整理的gatekeeper学习概述的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 快速得到栈、队列的最大值
- 下一篇: UIWebView中JS与OC交互 We