微服務(wù)架構(gòu)中SpringCloud基礎(chǔ)組件應(yīng)用設(shè)計(jì)的示例分析

這篇文章主要介紹了微服務(wù)架構(gòu)中SpringCloud基礎(chǔ)組件應(yīng)用設(shè)計(jì)的示例分析,具有一定借鑒價(jià)值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

創(chuàng)新互聯(lián)公司主要從事做網(wǎng)站、成都網(wǎng)站設(shè)計(jì)、網(wǎng)頁設(shè)計(jì)、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)永勝,10多年網(wǎng)站建設(shè)經(jīng)驗(yàn),價(jià)格優(yōu)惠、服務(wù)專業(yè),歡迎來電咨詢建站服務(wù):18982081108

一、組件應(yīng)用規(guī)劃

微服務(wù)架構(gòu)中SpringCloud基礎(chǔ)組件應(yīng)用設(shè)計(jì)的示例分析

1、注冊中心

Eureka 組件是 Netflix 開發(fā)的,用于定位服務(wù),基于RESTFul方式實(shí)現(xiàn)服務(wù)注冊與發(fā)現(xiàn)。包括一個(gè)EurekaServer服務(wù)端(通常是指微服務(wù)中的注冊中心) 和EurekaClient客戶端(通常指微服務(wù)中的業(yè)務(wù)服務(wù))。Eureka支持高可用的配置,當(dāng)注冊中心發(fā)現(xiàn)有故障的服務(wù)時(shí),Eureka就會轉(zhuǎn)入自動保護(hù)模式,故障時(shí)不影響服務(wù)的發(fā)現(xiàn)和注冊,當(dāng)故障恢復(fù)正常時(shí),注冊中心的服務(wù)會進(jìn)行狀態(tài)同步,繼續(xù)提供服務(wù)。

2、服務(wù)調(diào)用

Feign 組件是一個(gè)聲明式的 WebService客戶端。在Eureka注冊的服務(wù)中,可以使用Feign接口的形式來進(jìn)行相關(guān)服務(wù)間的請求調(diào)用,并提供超時(shí)回退,快速熔斷的相關(guān)特性。Feign是一個(gè)便利的RestFul框架,簡化調(diào)用,通過ribbon在注冊服務(wù)器中找到服務(wù)實(shí)例,然后對請求進(jìn)行服務(wù)分配,實(shí)現(xiàn)了負(fù)載均衡的效果,默認(rèn)采用輪詢算法。

3、服務(wù)網(wǎng)關(guān)

GateWay網(wǎng)關(guān),可以讓所有客戶端請求先通過微服務(wù)網(wǎng)關(guān),跟網(wǎng)關(guān)進(jìn)行交互,由網(wǎng)關(guān)進(jìn)行各個(gè)微服務(wù)的請求轉(zhuǎn)發(fā),客戶端(前端)對多服務(wù)架構(gòu)無感知。降低客戶端與微服務(wù)之間的交互耦合度;便于監(jiān)控,可在網(wǎng)關(guān)中監(jiān)控?cái)?shù)據(jù);在網(wǎng)關(guān)層統(tǒng)一處理認(rèn)證,規(guī)劃切面編程;也就是說與業(yè)務(wù)本身功能無關(guān)的公共邏輯可以在網(wǎng)關(guān)層統(tǒng)一封裝實(shí)現(xiàn),類似設(shè)計(jì)模式中的門面模式。

二、注冊中心

微服務(wù)架構(gòu)中SpringCloud基礎(chǔ)組件應(yīng)用設(shè)計(jì)的示例分析

1、服務(wù)端配置

eureka:
  server:
    enable-self-preservation: false
    eviction-interval-timer-in-ms: 15000
  instance:
    prefer-ip-address: true
  client:
      register-with-eureka: false
      fetch-registry: false
      service-url:
        defaultZone: http://127.0.0.1:5001/eureka/

2、客戶端配置

eureka:
  instance:
    prefer-ip-address: true
  client:
      service-url:
        defaultZone: http://127.0.0.1:5001/eureka/

三、Feign組件

1、Feign接口

@FeignClient("MOPSZ-SOFT-ROCKET")
public interface UserSearchFeign {
    @GetMapping("/mq/user/search/sendBookSearch")
    void sendBookSearch (@RequestParam("msgContent") String msgContent) ;
}

2、Feign接口實(shí)現(xiàn)

@RestController
public class UserSearchController implements UserSearchFeign {
    @Override
    public void sendBookSearch(String msgContent) {
    }
}

3、接口配置

該配置文件在實(shí)現(xiàn)Feign接口的項(xiàng)目中配置就好,也可針對特定方法配置。

feign:
  hystrix:
    enabled: true
  client:
    config:
      feignName:
        connectTimeout: 60000
        readTimeout: 60000

4、Feign接口調(diào)用

@Resource
private UserSearchFeign userSearchFeign ;
userSearchFeign.sendBookSearch("");

四、服務(wù)網(wǎng)關(guān)

1、網(wǎng)關(guān)組件配置

zuul:
  # 前綴,可以用來做版本控制
  prefix: /v1
  # 禁用默認(rèn)路由,執(zhí)行配置的路由
  ignored-services: "*"
  routes:
    # 配置 Token 服務(wù)
    pro6601:
      serviceId: mopsz-basis-token
      path: /api/6601/**
    # 配置 UserClient 服務(wù)
    pro6102:
      serviceId: mopsz-user-client
      path: /api/6102/**
  • 配置FilterConfig進(jìn)行用戶Token認(rèn)證攔截;

  • 配置FallBackConfig進(jìn)行服務(wù)降級響應(yīng)管理;

2、項(xiàng)目部署

在項(xiàng)目上線后,對外暴露一個(gè)網(wǎng)關(guān)服務(wù)端口,其他服務(wù)端口不對外暴露,所有的請求都必須通過網(wǎng)關(guān)攔截或者轉(zhuǎn)發(fā),這就是微服務(wù)提供服務(wù)的一種常見方式。

感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享的“微服務(wù)架構(gòu)中SpringCloud基礎(chǔ)組件應(yīng)用設(shè)計(jì)的示例分析”這篇文章對大家有幫助,同時(shí)也希望大家多多支持創(chuàng)新互聯(lián),關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,更多相關(guān)知識等著你來學(xué)習(xí)!

分享標(biāo)題:微服務(wù)架構(gòu)中SpringCloud基礎(chǔ)組件應(yīng)用設(shè)計(jì)的示例分析
分享URL:http://www.muchs.cn/article16/jpjegg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供企業(yè)建站品牌網(wǎng)站建設(shè)網(wǎng)頁設(shè)計(jì)公司、面包屑導(dǎo)航、移動網(wǎng)站建設(shè)、企業(yè)網(wǎng)站制作

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

營銷型網(wǎng)站建設(shè)