是閘道器嗎 為什麼微服務一定要有閘道器

2021-10-16 06:04:51 字數 632 閱讀 1291

服務閘道器 = 路由** + 過濾器
1、路由**:接收一切外界請求,**到後端的微服務上去;

2、過濾器:在服務網關中可以完成一系列的橫切功能,例如許可權校驗、限流以及監控等,這些都可以通過過濾器完成(其實路由**也是通過過濾器實現的)。

上述所說的橫切功能(以許可權校驗為例)可以寫在三個位置:

第一種,缺點太明顯,基本不用;第二種,相較於第一點好很多,**開發不會冗餘,但是有兩個缺點:

而服務閘道器恰好可以解決這樣的問題:

所以,需要服務閘道器!!!

引入服務閘道器後的微服務架構如上,總體包含三部分:服務閘道器、open-service和service。

許可權校驗:只校驗使用者向open-service服務的請求,不校驗服務內部的請求。服務內部的請求有必要校驗嗎?

api監控:只監控經過閘道器的請求,以及閘道器本身的一些效能指標(例如,gc等);

限流:與監控配合,進行限流操作;

。。。後續補充

上述功能是閘道器的基本功能,閘道器還可以實現以下功能:

筆者準備自建乙個輕量級的服務閘道器,技術選型如下:

閘道器是什麼 為什麼微服務一定要有閘道器

服務閘道器 路由 過濾器1 路由 接收一切外界請求,到後端的微服務上去 2 過濾器 在服務網關中可以完成一系列的橫切功能,例如許可權校驗 限流以及監控等,這些都可以通過過濾器完成 其實路由 也是通過過濾器實現的 上述所說的橫切功能 以許可權校驗為例 可以寫在三個位置 第一種,缺點太明顯,基本不用 第...

原創 微服務為什麼一定要用docker

早在2013年的時候,docker就已經發行,然而那會還是很少人了解docker。一直到2014年,martin fowler提出了微服務的概念,兩個不相干的技術終於走在了一起,創造了今天的輝煌!近幾年來,很多網際網路關係開始跟風,構建docker 微服務的架構體系。然而,根據筆者觀察發現,有些童鞋...

為什麼分布式一定要有Redis?

redis 常見問題做乙個總結,希望能夠彌補大家的知識盲點。使用 redis 有什麼缺點 單執行緒的 redis 為什麼這麼快 redis 的資料型別,以及每種資料型別的使用場景 redis 的過期策略以及記憶體淘汰機制 redis 和資料庫雙寫一致性問題 如何應對快取穿透和快取雪崩問題 如何解決 ...