Fizz Gateway 的多種架構方案

Fizz的設計基礎

Fizz以微服務框架做爲設計基礎,支持集羣化架構,可以與多種流量網關服務器一同使用的,提高的微服務架構的管控力度。另外考慮的不少企業的特殊狀況:有多少種服務形式對外提供,有舊有的Stardalone單機服務,可能以webservice的形式對外提供,或者已經升級了一部分微服務,有的以數據提供對外服務,有的已經升級了微服務,可是有一部分用http接口,有的使用註冊中心進行調用的,受權也各式各樣。由於Fizz自己就是基於這種狀況下設計。因此在此提供一些方案以供你們參考。git

集羣架構方案

集羣架構拓撲圖

在上圖中,以Nginx做爲外網的接入口,Fizz做爲API網關放置於Nginx以後。在這裏Nginx能夠也使用如今OpenResty產品替代,如Kong,或者APISIX。可能有一些企業運維這一塊會有使用Kong+Nginx,那麼在研發這一端,這裏就可使用Fizz做爲微服務的網關配合做爲應用網關。github

單機架構方案

Fizz 單機拓撲.png

若是是中小企業,服務器資源有限,那麼Fizz能夠直接替代Nginx的功能,解決以前多種系統的並行的問題。以後隨着業務的壯大,逐步升級的加入的微服務架構便可。也能夠用來解決團隊存在多種編程語言的問題:如團隊以前有PHP,有NodeJS,受權不一致,那麼能夠經過Fizz進行轉發提供對外一致的接口請求訪問體驗。web

Web服務器方案

Fizz Web服務器拓撲.png

Fizz是一個高性能的網關,也不妨礙Fizz做爲Web服務器的選擇,做爲聚合服務和少許的Web的服務編程,使用Javascript或者Groove語言的工程師甚至能夠把它當作online編程的Web服務器,聚合各類接口,存儲數據,調用緩存,統統不在話下。編程

介紹

做者:linwaiwai緩存

Fizz Gateway開源地址:github.com/wehotel/fiz…服務器

官方技術交流羣

Fizz官方技術交流①羣(已滿)markdown

Fizz官方技術交流②羣(已滿)架構

Fizz官方技術交流③羣:512164278框架