摘要:綜述經(jīng)調(diào)研,使用解決方案的占多數(shù),已經(jīng)能滿足絕大多數(shù)公司需求。但除了一些超級公司外,比如阿里,京東,他們是自己擼的一套網(wǎng)關(guān)。
綜述
經(jīng)調(diào)研,使用Spring Cloud Zuul解決方案的占多數(shù),已經(jīng)能滿足絕大多數(shù)公司需求。但除了一些超級公司外,比如阿里,京東,他們是自己擼的一套網(wǎng)關(guān)。此外,點(diǎn)評直接采用的nginx負(fù)載均衡前置網(wǎng)關(guān),而沒用第七層網(wǎng)關(guān),原因據(jù)說是七層網(wǎng)關(guān)會(huì)影響性能,但由于對其架構(gòu)不甚了解,所以也不得而知。
一 各企業(yè)網(wǎng)關(guān)調(diào)研 1 京東: tomcat sevelet ,基于netty自研京東商API網(wǎng)關(guān)實(shí)踐
目前大部分服務(wù)位于tomcat,但由于tomcat只能同步,所以正在向netty一步步遷移
2 蘇寧: netty 3 點(diǎn)融:基于zuul定制基于框架:https://github.com/venus-boot...,saluki is a microservice framework rely on grpc-java,可能是結(jié)合Spring cloud的東西做了一些定制化開發(fā),加入比如rpc的一些東西。
saluki gateway是以zuul、saluki、oauth2為基礎(chǔ)構(gòu)建的網(wǎng)關(guān)系統(tǒng),主要功能如下
api限流,利用令牌桶機(jī)制進(jìn)行限流操作
授權(quán),oauth2進(jìn)行api的授權(quán)
協(xié)議轉(zhuǎn)化,將http的請求轉(zhuǎn)化為grpc的服務(wù)請求
saluki框架在Spring Cloud基礎(chǔ)上進(jìn)行了進(jìn)一步封裝,提供了對rpc的支持、用戶權(quán)限等等
4 美團(tuán)點(diǎn)評貌似沒有第七層網(wǎng)關(guān),只有nginx+lua,基于tengine定制
咨詢過美團(tuán)的童鞋,他說網(wǎng)關(guān)會(huì)增加機(jī)器負(fù)擔(dān),而且有可能成為系統(tǒng)瓶頸。因此將統(tǒng)一的鑒權(quán)、日志都打成統(tǒng)一的jar包,讓各個(gè)微服務(wù)自己去做,但具體系統(tǒng)的具體結(jié)構(gòu)不得而知,可能存在一定的合理性,對于日活上億體量的系統(tǒng),或許網(wǎng)關(guān)確實(shí)有可能成為瓶頸,因?yàn)榧尤虢y(tǒng)一網(wǎng)關(guān)意味著機(jī)器數(shù)量增加一倍,
5 攜程:zuul基于zuul的一套API網(wǎng)關(guān),
還有megaease這家公司,是IT骨灰級程序員兼網(wǎng)紅陳皓所創(chuàng)建,他認(rèn)為一個(gè)好的gateway需要具備如下關(guān)鍵技術(shù)
高性能。必須使用高性能的技術(shù),而且需要高性能的語言(比如他所推崇的go)
抗流量。集群技術(shù)
業(yè)務(wù)邏輯。要能夠支持簡單的業(yè)務(wù)邏輯
服務(wù)化??梢圆煌C(jī)的修改管理配置
所以,他們自己用go開發(fā)了一套easegateway
產(chǎn)品說明:http://megaease.com/docs/gate...
其架構(gòu)說明圖如下
網(wǎng)關(guān)(API Gateway)技術(shù)選型
zuul
kong
nginx+lua(nginx+openresty )
自己擼:難度大
網(wǎng)關(guān)(API Gateway)的設(shè)計(jì)要素
限流:實(shí)現(xiàn)微服務(wù)訪問流量計(jì)算,基于流量計(jì)算分析進(jìn)行限流,可以定義多種限流規(guī)則。
緩存:數(shù)據(jù)緩存。
日志:日志記錄。
監(jiān)控:記錄請求響應(yīng)數(shù)據(jù),api耗時(shí)分析,性能監(jiān)控。
鑒權(quán):權(quán)限身份認(rèn)證。
灰度:線上灰度部署,可以減小風(fēng)險(xiǎn)。
路由:路由是API網(wǎng)關(guān)很核心的模塊功能,此模塊實(shí)現(xiàn)根據(jù)請求,鎖定目標(biāo)微服務(wù)并將請求進(jìn)行轉(zhuǎn)發(fā)。
三 基于Zuul的網(wǎng)關(guān)設(shè)計(jì)Spring Cloud生態(tài)中,標(biāo)準(zhǔn)配置是基于Zuul的網(wǎng)關(guān),而且,已經(jīng)有多加大型互聯(lián)網(wǎng)公司是基于Zuul來實(shí)現(xiàn),比如攜程、點(diǎn)融,所以,我們不妨用Zuul網(wǎng)關(guān)來首先搭建網(wǎng)關(guān),已經(jīng)能滿足大部分企業(yè)的需求了
四 探索,阿里無線: ACCS網(wǎng)關(guān)方案阿里粑粑當(dāng)然財(cái)大氣粗,自己擼一個(gè)唄
在線集群用于實(shí)時(shí)消息,而離線集群用于諸如營銷信息推廣等允許很高延時(shí)等的的請求
以及兩個(gè)優(yōu)化點(diǎn)
用ECDH機(jī)密代替RSA。帶來加密效率的巨大提升,以及SPDY協(xié)議
用類似tcp-fast-open的技術(shù),在握手時(shí)直接帶數(shù)據(jù)包
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://m.hztianpu.com/yun/68238.html
摘要:可簡單地認(rèn)為它是的擴(kuò)展,負(fù)載均衡自然成為不可或缺的特性。是基于開發(fā)的服務(wù)代理組件,在使用場景中,它與和整合,打造具備服務(wù)動(dòng)態(tài)更新和負(fù)載均衡能力的服務(wù)網(wǎng)關(guān)。類似的特性在項(xiàng)目也有體現(xiàn),它是另一種高性能代理的方案,提供服務(wù)發(fā)現(xiàn)健康和負(fù)載均衡。 摘要: Cloud Native 應(yīng)用架構(gòu)隨著云技術(shù)的發(fā)展受到業(yè)界特別重視和關(guān)注,尤其是 CNCF(Cloud Native Computing Fo...
摘要:一方面,網(wǎng)關(guān)是個(gè)推微服務(wù)體系對外的唯一入口另一方面,網(wǎng)關(guān)中實(shí)現(xiàn)了很多后端服務(wù)的共性需求,避免了重復(fù)建設(shè)。個(gè)推微服務(wù)網(wǎng)關(guān)的設(shè)計(jì)與實(shí)現(xiàn)個(gè)推微服務(wù)主要是基于和進(jìn)行實(shí)踐的。下圖是個(gè)推微服務(wù)體系的架構(gòu)圖。 作者:個(gè)推應(yīng)用平臺(tái)基礎(chǔ)架構(gòu)高級研發(fā)工程師 阿飛 在微服務(wù)架構(gòu)中,不同的微服務(wù)可以有不同的網(wǎng)絡(luò)地址,各個(gè)微服務(wù)之間通過互相調(diào)用完成用戶請求,客戶端可能通過調(diào)用N個(gè)微服務(wù)的接口完成一個(gè)用戶請求。因...
摘要:應(yīng)用的研發(fā)上線運(yùn)維運(yùn)營形成閉環(huán),順利完成從對內(nèi)服務(wù)到公共平臺(tái)的升級。從功能角度,只能支持靜態(tài)方式設(shè)置反向代理,然后,而平臺(tái)有服務(wù)對應(yīng)的后端服務(wù)和端口是有動(dòng)態(tài)調(diào)整需求。架構(gòu)上是基礎(chǔ)組件需要進(jìn)行升級,數(shù)據(jù)訪問層日志監(jiān)控系統(tǒng)等。 介紹 ? ? ? ?MaxLeap早期是一家研發(fā)、運(yùn)營移動(dòng)應(yīng)用和手機(jī)游戲公司,發(fā)展過程中積累了很多通用組件。這些組件很大程度幫公司在移動(dòng)研發(fā)過程中節(jié)省了時(shí)間和成本,...
摘要:而當(dāng)企業(yè)只是將系統(tǒng)與系統(tǒng)之間的調(diào)用使用的方式進(jìn)行訪問時(shí)使用網(wǎng)關(guān)對調(diào)用進(jìn)行管理,那么網(wǎng)關(guān)起到的就是服務(wù)治理的作用。另外很多企業(yè)因?yàn)樽陨硇畔踩脑?,不能使用外網(wǎng)公有網(wǎng)的網(wǎng)關(guān)服務(wù),這樣就只有選擇私有云的方案了。 showImg(https://segmentfault.com/img/bVbsVBA?w=255&h=255); 前言 「 API網(wǎng)關(guān) 」是任何微服務(wù)架構(gòu)的重要組成部分。有了...
摘要:可簡單地認(rèn)為它是的擴(kuò)展,負(fù)載均衡自然成為不可或缺的特性。類似的特性在項(xiàng)目也有體現(xiàn),它是另一種高性能代理的方案,提供服務(wù)發(fā)現(xiàn)健康和負(fù)載均衡。 Dubbo Cloud Native 實(shí)踐與思考 分享簡介 Cloud Native 應(yīng)用架構(gòu)隨著云技術(shù)的發(fā)展受到業(yè)界特別重視和關(guān)注,尤其是 CNCF(Cloud Native Computing Foundation)項(xiàng)目蓬勃發(fā)展之際。Dubbo...
閱讀 2789·2021-10-12 10:12
閱讀 2397·2021-09-02 15:41
閱讀 2631·2019-08-30 15:55
閱讀 1473·2019-08-30 13:05
閱讀 2539·2019-08-29 11:21
閱讀 3602·2019-08-28 17:53
閱讀 3106·2019-08-26 13:39
閱讀 850·2019-08-26 11:50