『高階篇』docker之APIGateway(17)
這次說最後一個模組APIGateway,他的功能就是將我們客戶端的請求統一的轉發到使用者和課程的EdgeService上面,ApiGetway我們使用springClud來實現。原始碼:https://github.com/limingios/msA-docker
使用springClud做路由轉發功能
-
新建專案
<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>1.5.3.RELEASE</version> </parent> <modelVersion>4.0.0</modelVersion> <groupId>com.idig8</groupId> <artifactId>api-gateway-zuul</artifactId> <version>1.0-SNAPSHOT</version> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-zuul</artifactId> <version>1.3.5.RELEASE</version> </dependency> </dependencies> </project>
server.port=8080 zuul.routes.course.path=/course/** zuul.routes.course.url=http://127.0.0.1:8081/course/ zuul.routes.user.path=/user/** zuul.routes.user.url=http://127.0.0.1:8082/user/
package com.idig8.zuul; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.cloud.netflix.zuul.EnableZuulProxy; /** * Created by liming */ @SpringBootApplication @EnableZuulProxy public class ServiceApplication { public static void main(String args[]) { SpringApplication.run(ServiceApplication.class, args); } }
梳理思路
所有的業務開發完畢,zuul 就是可以幫助我們做路由和轉發的工作。所有的請求幫你做中轉。雖然業務非常簡單,但是框架都能實現。業務也不是這次學習微服務的重點。在整個開發過程中主要想讓各位老鐵體會到微服務,不同的RPC的通訊方式,沒有使用過dubbo和thrift的可以瞭解下如何的使用。還搞了誇語言的業務通訊,用python寫了一個message訊息服務,用java做客戶端呼叫python,這裡面的java模組我們使用的springboot,來進入一個切入點,能感受到開發和配置模式的統一,最後我們使用zuul作為服務閘道器,完成了服務路由,可以注意到所有服務的開發都是使用了相對簡單的模型和功能,並沒有大而全的角色存在,因為這次主要就是說的針對不太瞭解微服務的老鐵,只為你們開啟一個微服務的大門。
PS:就像跟陌生人交朋友,不可能上來直接詳細的自我介紹,一般都是先聊點其他的,或者從大家都感興趣的一個話題作為切入點,一點點增加彼此的瞭解,其實學習也是一樣的,一個新的功能一定會有新的功能和特性,我們必須從一個點入手,先用起來後,在一點點的瞭解,就像這個zuul,只用到他的服務路由,下次咱們就通過這些微服務為基礎進行docker話,讓老鐵知道一個非docker的專案如何執行在一個docker上面。需要關心的點是什麼上面。然後我們在本地吧這些服務都執行起來。最後我們把他交給服務編排框架,看它是怎麼排程管理容器的。
ofollow,noindex" target="_blank" href="http://zhanzhang.baidu.com/sitesubmit/index?sitename=https://idig8.com/2018/10/17/gaojipiandockerzhiapigateway16/">百度未收錄
>>原創文章,歡迎轉載。轉載請註明:轉載自IT人故事會,謝謝!
>>原文連結地址:上一篇:已是最新文章