欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Springcloud微服務(wù)架構(gòu)基礎(chǔ)知識(shí)解析

 更新時(shí)間:2020年04月20日 11:16:53   作者:知識(shí)追尋者  
這篇文章主要介紹了Springcloud微服務(wù)架構(gòu)基礎(chǔ)知識(shí)解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下

一 前言

學(xué)習(xí)微服務(wù)要從基礎(chǔ)的架構(gòu)學(xué)起,首先你要有個(gè)微服務(wù)的概念才能學(xué)習(xí)對(duì)吧??!如果你都不知道啥是微服務(wù),就一頭扎進(jìn)去學(xué)習(xí),你自己也覺得自己也學(xué)不會(huì)對(duì)吧。本篇文章主要讓大家快速了解基礎(chǔ)的架構(gòu)分格,以便于微服務(wù)入門。

二 單體架構(gòu)

單體架構(gòu)是傳統(tǒng)架構(gòu),其發(fā)展了幾十年,我們今天任然還在用單體架構(gòu)開發(fā),存在即合理;單體架構(gòu)也就是通常的表現(xiàn)層跟UI界面交互,業(yè)務(wù)層寫業(yè)務(wù)邏輯,數(shù)據(jù)DAO層訪問數(shù)據(jù)庫。其部署方式也很簡(jiǎn)單,直接將項(xiàng)目打包成war包放進(jìn)web服務(wù)器(如tomcat,jetty)中運(yùn)行; 其優(yōu)點(diǎn)如下:

易于開發(fā),架構(gòu)單一,很容易上手,一站式到底;

易于部署,直接放進(jìn)web服務(wù)器即可運(yùn)行;

其缺點(diǎn)如下:

維護(hù)困難,每次進(jìn)行代碼維護(hù),往往修改都是從上而下改動(dòng),需將整個(gè)程序部署才能看見修改結(jié)果;

二次開發(fā)難度大,都要讀懂大量代碼,業(yè)務(wù)邏輯復(fù)雜;

測(cè)試難度大,隨著業(yè)務(wù)越多,測(cè)試的難度會(huì)越大;

分布式架構(gòu)

分布式架構(gòu)簡(jiǎn)單的可以理解為由多個(gè)單體結(jié)構(gòu)組成,但是它們都是通過發(fā)布的服務(wù)相互調(diào)用;

分布式服務(wù)架構(gòu)中比較出門的就是面向服務(wù)的SOA(Service-Oriented Architecture)架構(gòu),服務(wù)之間通過通信協(xié)議進(jìn)行相互通信;比較出名的服務(wù)治理框架也就是阿里開源的Dubbo框架,目前在Apache旗下,服務(wù)之間通過遠(yuǎn)程過程調(diào)用(RPC),主要角色如下;

注冊(cè)中心:服務(wù)的注冊(cè)與發(fā)現(xiàn);

提供者:提供服務(wù)

消費(fèi)者:消費(fèi)服務(wù)

監(jiān)控中心:監(jiān)控服務(wù)之間的日志和健康;

四 微服務(wù)架構(gòu)

到目前為止其實(shí)關(guān)于微服務(wù)架構(gòu)還是沒有一個(gè)精確的定義;2014 年 Martin Fowler 在 《Microservices》 一文中提出了微服務(wù)的概念,大體的我們可以總結(jié)為如下幾點(diǎn):

一個(gè)單體應(yīng)用開發(fā)成多個(gè)微小服務(wù);

微小服務(wù)間通常通過HTTP協(xié)議或者restful風(fēng)格調(diào)用;

每個(gè)微小服務(wù)圍繞業(yè)務(wù)邏輯構(gòu)建,獨(dú)立自動(dòng)部署;

In short, the microservice architectural style [1] is an approach to developing a single application as a suite of small services, each running in its own process and communicating with lightweight mechanisms, often an HTTP resource API. These services are built around business capabilities and independently deployable by fully automated deployment machinery. There is a bare minimum of centralized management of these services, which may be written in different programming languages and use different data storage technologies.

微服務(wù)的優(yōu)點(diǎn)如下:

  • 獨(dú)立部署,易于開發(fā)維護(hù)
  • 服務(wù)拆分,業(yè)務(wù)邏輯清晰,
  • 服務(wù)間通過HTTP通信,耦合度低
  • 微服務(wù)缺點(diǎn)如下:
  • 部署難度大,目前有docker等容器化技術(shù)相對(duì)好點(diǎn);
  • 分布式事物問題突出;

五參考文檔

dubbo官方文檔

miroservice

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Springboot實(shí)現(xiàn)XSS漏洞過濾的示例代碼

    Springboot實(shí)現(xiàn)XSS漏洞過濾的示例代碼

    這篇文章主要介紹了Springboot實(shí)現(xiàn)XSS漏洞過濾的示例代碼,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-01-01
  • Maven在Windows中的配置以及IDE中的項(xiàng)目創(chuàng)建實(shí)例

    Maven在Windows中的配置以及IDE中的項(xiàng)目創(chuàng)建實(shí)例

    下面小編就為大家?guī)硪黄狹aven在Windows中的配置以及IDE中的項(xiàng)目創(chuàng)建實(shí)例。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-09-09
  • 通過Spring自定義NamespaceHandler實(shí)現(xiàn)命名空間解析(推薦)

    通過Spring自定義NamespaceHandler實(shí)現(xiàn)命名空間解析(推薦)

    這篇文章主要介紹了通過Spring自定義NamespaceHandler實(shí)現(xiàn)命名空間解析,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-04-04
  • Java?EasyExcel實(shí)現(xiàn)合并相同內(nèi)容單元格與動(dòng)態(tài)標(biāo)題功能

    Java?EasyExcel實(shí)現(xiàn)合并相同內(nèi)容單元格與動(dòng)態(tài)標(biāo)題功能

    這篇文章主要為大家詳細(xì)介紹了Java?EasyExcel如何實(shí)現(xiàn)合并相同內(nèi)容單元格與動(dòng)態(tài)標(biāo)題功能,文中的示例代碼講解詳細(xì),有需要的小伙伴可以參考下
    2023-12-12
  • kafka消費(fèi)不到數(shù)據(jù)的排查過程

    kafka消費(fèi)不到數(shù)據(jù)的排查過程

    這篇文章主要介紹了kafka消費(fèi)不到數(shù)據(jù)的排查過程,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-02-02
  • java 創(chuàng)建線程的四種方式

    java 創(chuàng)建線程的四種方式

    這篇文章主要介紹了java 創(chuàng)建線程的四種方式,幫助大家更好的理解和使用Java,感興趣的朋友可以了解下
    2020-11-11
  • Mybatis如何實(shí)現(xiàn)延遲加載及緩存

    Mybatis如何實(shí)現(xiàn)延遲加載及緩存

    這篇文章主要介紹了Mybatis如何實(shí)現(xiàn)延遲加載及緩存,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-10-10
  • java中如何獲取時(shí)間戳的方法實(shí)例

    java中如何獲取時(shí)間戳的方法實(shí)例

    時(shí)間戳通常是一個(gè)字符序列,唯一地標(biāo)識(shí)某一刻的時(shí)間,所以下面這篇文章主要給大家介紹了關(guān)于java中如何獲取時(shí)間戳的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考借鑒,下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。
    2017-11-11
  • 解讀@SelectProvider的使用方法

    解讀@SelectProvider的使用方法

    這篇文章主要介紹了@SelectProvider的使用方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-08-08
  • Java實(shí)現(xiàn)鎖定某個(gè)變量的幾種方式示例詳解

    Java實(shí)現(xiàn)鎖定某個(gè)變量的幾種方式示例詳解

    這篇文章主要為大家介紹了Java實(shí)現(xiàn)鎖某個(gè)變量的幾種方式示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-09-09

最新評(píng)論