无码人妻丰满熟妇奶水区码,成年高潮网址,观看免费干B,欧美日韩深喉

微服務(wù)開發(fā),這10個點你要知道(微服務(wù) 開發(fā))

微服務(wù)架構(gòu)是一種軟件開發(fā)模式,它將一個復(fù)雜的應(yīng)用程序拆分為多個個獨立的、小型的、可復(fù)用的服務(wù),每個服務(wù)負責(zé)一個特定的業(yè)務(wù)功能。

微服務(wù)架構(gòu)有許多優(yōu)點,例如提高系統(tǒng)的可擴展性、可維護性、可測試性和故障容忍性。

但是,微服務(wù)架構(gòu)也有很多問題需要注意,例如如何設(shè)計合理的劃分服務(wù)接口、如何在服務(wù)間實現(xiàn)高效通信、如何保證數(shù)據(jù)一致性等。因此要想成功地使用微服務(wù)架構(gòu),我們需要遵循一些最佳實踐。

以下是一些微服務(wù)架構(gòu)的最佳實踐,我將盡我所了解的知識給大家進行講解。本文大綱如下,

微服務(wù)開發(fā),這10個點你要知道(微服務(wù) 開發(fā))

1. 不使用微服務(wù)架構(gòu)

沒錯,我們應(yīng)該盡量避免使用微服務(wù)架構(gòu)。

認真地說,使用微服務(wù)架構(gòu)只能被視為最后的選擇。從項目實際應(yīng)用場景開發(fā),少看一些網(wǎng)上關(guān)于微服務(wù)的吹捧。務(wù)實一點,根據(jù)項目體量、業(yè)務(wù)復(fù)雜度選擇一個適合當(dāng)前項目的架構(gòu)。

首先嘗試構(gòu)建一個單體的模塊化架構(gòu),而不是一上來就搞微服務(wù)架構(gòu)。

2. 針對失敗場景進行處理

在任何使用微服務(wù)的分布式系統(tǒng)里面,總是有調(diào)用失敗的可能,比如網(wǎng)絡(luò)分區(qū)、某個服務(wù)宕機不可用等。

所以我們在系統(tǒng)調(diào)用層面針對失敗場景的處理,應(yīng)該設(shè)計得越早越好。

故障設(shè)計最好三個級別,

  • 基礎(chǔ)設(shè)施級別
  • 數(shù)據(jù)庫級別和
  • 單個微服務(wù)級別

實際的針對失敗場景處理,可以使用斷路器、服務(wù)降級和 "隔板模式"。

隔板模式在分布式系統(tǒng)中就是指資源隔離,在分布式系統(tǒng)里,資源隔離通常按業(yè)務(wù)分為進程級別的隔離和線程級別的隔離,某些簡單的服務(wù)質(zhì)量要求不高的業(yè)務(wù)場景下實現(xiàn)進程級別的隔離就夠了,但是在某些對服務(wù)質(zhì)量要求較高的分布式場景下需要線程級別的細粒度隔離。

3. 構(gòu)建小型服務(wù)

微服務(wù)架構(gòu)中,每個服務(wù)應(yīng)該都按單一職責(zé)進行設(shè)計。

每個微服務(wù)應(yīng)該只負責(zé)一個業(yè)務(wù)領(lǐng)域,并且盡量避免涉及其他領(lǐng)域。

這樣可以提高代碼的可讀性、可測試性和可維護性,也可以降低系統(tǒng)的復(fù)雜度和耦合度。

4. 使用輕量級通信協(xié)議

微服務(wù)架構(gòu)中,服務(wù)之間的通信協(xié)議時非常重要的。因為在一些對性能要求較高的場景里,選擇一個輕量級協(xié)議所能帶來的 QPS 提升,也是非??陀^的。

比如服務(wù)間可以使用 REST、GRPC 或消息隊列等通信協(xié)議,這樣可以盡可能減少服務(wù)通信帶來的開銷并提升性能。

5. 服務(wù)發(fā)現(xiàn)

微服務(wù)架構(gòu)下,服務(wù)實例的網(wǎng)絡(luò)地址是動態(tài)分配和變化的,因此需要一種機制,能夠及時獲取服務(wù)實例的最新的網(wǎng)絡(luò)地址,以便進行服務(wù)間通信。

并且服務(wù)實例的數(shù)量和狀態(tài)都是隨著業(yè)務(wù)需求和故障情況而變化的,還需要有能夠及時感知服務(wù)實例的上線、下線、故障等情況的能力。

因此我們需要使用服務(wù)發(fā)現(xiàn)組件,它負責(zé)自動發(fā)現(xiàn)服務(wù)實例,負載均衡和故障轉(zhuǎn)移。

服務(wù)發(fā)現(xiàn)組件有 Eureka 、Consul、Nacos 等,國內(nèi)的話,推薦大家使用 Nacos。

6. 數(shù)據(jù)庫隔離

微服務(wù)架構(gòu)下,每個服務(wù)的數(shù)據(jù)庫應(yīng)該都是單獨部署的,它們之間相互隔離。

一個服務(wù)要操作另一個服務(wù)數(shù)據(jù)庫中的數(shù)據(jù)時,都應(yīng)該只能通過調(diào)用另一個服務(wù)的接口來實現(xiàn),而不是粗暴的直接訪問其他服務(wù)的數(shù)據(jù)庫進行讀寫。

數(shù)據(jù)庫隔離的最終目標就是為了減少服務(wù)之間的耦合,使它們能夠獨立發(fā)展。

7. 實施彈性模式

為了提高微服務(wù)架構(gòu)中各個服務(wù)的彈性,我們應(yīng)該盡量使用彈性模式。

所謂彈性,其實就是服務(wù)的可用性,專業(yè)一點的話說就是從某些類型的故障中恢復(fù)并保持自身服務(wù)的能力。

那么,我們應(yīng)該如何實施實施彈性模式嘞?

其實很簡單,我給大家分成兩個部分進行講解,一個是服務(wù)內(nèi),另一個是服務(wù)外。

服務(wù)內(nèi)指的是別人調(diào)用我們的服務(wù)時,需要注意的點有,

  • 添加緩存
  • 資源隔離
  • 接口限速

服務(wù)外指的是我們調(diào)用別人的服務(wù)時,需要注意的點有,

  • 調(diào)用超時
  • 請求重試
  • 斷路器應(yīng)用

8. 服務(wù)監(jiān)控于鏈路追蹤

有句話說得好,"在任何分布式系統(tǒng)中,會宕機的服務(wù)最終都會宕機"。

特別是在微服務(wù)系統(tǒng),系統(tǒng)間的服務(wù)調(diào)用鏈路越長,發(fā)生異常時的排查難度就越大。

所以為了跟上微服務(wù)的步伐,我們需要發(fā)現(xiàn)各個服務(wù)中存在的問題。進一步也就需要針對微服務(wù)的性能、狀態(tài)、異常等指標進行收集、分析、展示和告警。這有助于提高系統(tǒng)的可觀察性、可運維性和可靠性。

鏈路追蹤是一種技術(shù),用于監(jiān)控和分析分布式系統(tǒng)中的請求流程,以及各個服務(wù)之間的調(diào)用情況。

在分布式系統(tǒng)中,鏈路追蹤就是為每個請求分配一個全局唯一的標識(TraceId),并在請求在各個服務(wù)之間傳遞時,記錄每個服務(wù)的調(diào)用信息(SpanId),包括調(diào)用時間、耗時、狀態(tài)等。通過收集、存儲、展示和分析這些信息,就可以還原出請求的完整鏈路,以及各個服務(wù)的性能表現(xiàn)。

在如今流行云原生的潮流下,推薦使用 Prometheus、Grafana 為微服務(wù)構(gòu)建全面的監(jiān)控能力,使用 Skywalking 為微服務(wù)構(gòu)建一套性能分析以及鏈路追蹤平臺。

9. 服務(wù)的安全性

微服務(wù)架構(gòu)中,各個服務(wù)的安全性設(shè)計也非常重要。

常見的有如下幾種安全性設(shè)計的舉措,

  • API 網(wǎng)關(guān):使用 API 網(wǎng)關(guān)作為服務(wù)的統(tǒng)一入口,對所有進入和離開的請求進行鑒權(quán)、路由、負載均衡、限流、緩存等功能,提高服務(wù)的可用性和性能,同時也增加了服務(wù)的安全性,防止內(nèi)部服務(wù)被直接訪問或攻擊。
  • 令牌安全:使用 JWT、OAuth 2.0 等標準化的令牌格式和協(xié)議來實現(xiàn)服務(wù)之間或服務(wù)與客戶端之間的身份驗證和授權(quán),防止服務(wù)被冒充或濫用。
  • 請求過濾:對 API 網(wǎng)關(guān)所接收到的所有請求數(shù)據(jù),進行 SQL 注入攻擊、XSS 攻擊和 CORS 攻擊過濾攔截處理。
  • 風(fēng)控報警:在 API 網(wǎng)關(guān)添加風(fēng)控措施,針對發(fā)起惡意請求的用戶做黑名單風(fēng)控處理,針對服務(wù)內(nèi)部的非業(yè)務(wù)異常進行報警通知。

10. 統(tǒng)一日志采集

分布式系統(tǒng)中,各個服務(wù)的日志都位于不同的機器上,因此機器越多,日志統(tǒng)一采集的需求就越強烈。

統(tǒng)一日志采集是微服務(wù)架構(gòu)中的一個重要的運維需求,它負責(zé)收集和管理分布式系統(tǒng)中的各種日志,如運行日志、訪問日志、錯誤日志等,以便于進行問題排查、性能分析、數(shù)據(jù)挖掘等。

推薦使用 ELK 或者 Graylog 搭建一套統(tǒng)一日志采集平臺。

因為我使用 Graylog 比較多,所以這里給大家推薦了解一波 Graylog 這個統(tǒng)一日志采集平臺。

Graylog 是一個開源的集中式日志管理系統(tǒng),它可以收集、存儲、分析、展示和告警各種機器數(shù)據(jù),為開發(fā)團隊提供安全、應(yīng)用和 IT 基礎(chǔ)設(shè)施方面的問題的答案。

微服務(wù)開發(fā),這10個點你要知道(微服務(wù) 開發(fā))

Graylog 可以讓我們在一個美觀的 web ui 界面上組合、關(guān)聯(lián)、查詢所有的日志數(shù)據(jù)。

微服務(wù)開發(fā),這10個點你要知道(微服務(wù) 開發(fā))

Graylog 具有以下特點和優(yōu)勢:

  • 高性能:Graylog 可以處理每秒數(shù)百萬條日志,支持多節(jié)點集群,實現(xiàn)水平擴展和負載均衡。
  • 易用性:Graylog 提供了一個友好的 Web 界面,讓您可以輕松地構(gòu)建復(fù)雜的查詢,創(chuàng)建自定義的儀表盤,設(shè)置靈活的告警規(guī)則,生成定期的報告等。
  • 靈活性:Graylog 支持多種日志來源,如文件、網(wǎng)絡(luò)、數(shù)據(jù)庫、應(yīng)用程序等,可以通過插件和 API 進行擴展和集成,滿足不同的業(yè)務(wù)需求和場景。
  • 安全性:Graylog 支持使用 HTTPS、SSL/TLS 等加密技術(shù)來保護日志數(shù)據(jù)的傳輸和存儲,同時也支持使用 LDAP、OAuth 2.0 等認證和授權(quán)機制來控制用戶的訪問權(quán)限。

Graylog 使用教程:https://learn.microsoft.com/zh-cn/azure/network-watcher/network-watcher-analyze-nsg-flow-logs-graylog

最后聊兩句

本文為大家介紹了微服務(wù)架構(gòu)中的 10 個最佳實踐。包含 1. 不使用微服務(wù)架構(gòu)、2. 針對失敗場景進行處理、3. 構(gòu)建小型服務(wù)、4. 使用輕量級通信協(xié)議、5. 服務(wù)發(fā)現(xiàn)、6. 數(shù)據(jù)庫隔離、7. 實施彈性模式、8. 服務(wù)監(jiān)控以及鏈路追蹤、9. 服務(wù)安全性、10.統(tǒng)一日志采集。

說了這么多,其實還是希望大家結(jié)合自身項目背景,多多思考,不要為了使用微服務(wù)而去使用微服務(wù),在已經(jīng)使用了微服務(wù)架構(gòu)中項目,能夠結(jié)合上述最佳實踐,加上自己對各個服務(wù)以及業(yè)務(wù)上的思考,去解決哪些已存在的問題。這樣才算是真正學(xué)會了微服務(wù)。

關(guān)注我每周分享技術(shù)干貨、開源項目、實戰(zhàn)經(jīng)驗、國外優(yōu)質(zhì)文章翻譯等,您的關(guān)注將是我的更新動力!

版權(quán)聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻,該文觀點僅代表作者本人。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如發(fā)現(xiàn)本站有涉嫌抄襲侵權(quán)/違法違規(guī)的內(nèi)容, 請發(fā)送郵件至 舉報,一經(jīng)查實,本站將立刻刪除。

(0)
上一篇 2024年5月9日 下午4:33
下一篇 2024年5月9日 下午4:45

相關(guān)推薦

  • 省部級科研項目從哪里查

    省部級科研項目從哪里查 隨著科技的不斷發(fā)展,省部級科研項目的申報變得越來越困難。如果想找到一些有關(guān)省部級科研項目的信息,可以參考以下途徑: 1. 政府部門網(wǎng)站:可以通過訪問各級政府…

    科研百科 2025年5月21日
    1
  • 科研項目人員資質(zhì)要求

    科研項目人員資質(zhì)要求 科研項目是科學(xué)技術(shù)發(fā)展的重要基礎(chǔ),需要一支具備高素質(zhì)和專業(yè)能力的科研團隊來支撐。為了確??蒲许椖康捻樌M行和研究成果的有效實現(xiàn),科研項目人員資質(zhì)要求是非常重要…

    科研百科 2025年4月13日
    6
  • 《國鐵企業(yè)黨支部建設(shè)工作細則》

    國鐵企業(yè)黨支部建設(shè)工作細則 為加強國鐵企業(yè)黨支部建設(shè),提高黨支部的凝聚力和戰(zhàn)斗力,根據(jù)《中國共產(chǎn)黨章程》和《中國共產(chǎn)黨支部工作條例》等規(guī)定,我部制定了國鐵企業(yè)黨支部建設(shè)工作細則。 …

    科研百科 2024年10月16日
    105
  • 標書與科研項目基金

    標書與科研項目基金 隨著科技的不斷進步,科研項目基金得到了廣泛的應(yīng)用。科研項目基金是指為了支持科學(xué)研究而設(shè)立的資金項目,其目的是為科學(xué)家提供資金,讓他們開展研究,為科學(xué)技術(shù)的發(fā)展做…

    科研百科 2025年2月26日
    2
  • 適合編寫C語言代碼的編程軟件有哪些?大學(xué)生趕緊行動起來(能編寫c語言的軟件)

    C語言基本上是大學(xué)計算機及其相關(guān)專業(yè)在大一上學(xué)期就會開的一門課程,但是很多學(xué)生就是在大一上學(xué)期期末的時候很著急,因為自己完全沒有學(xué)好C語言,感覺一學(xué)期白學(xué)了,其實究其主要原因,還是…

    科研百科 2023年5月21日
    295
  • 實驗室項目管理

    實驗室項目管理 實驗室項目管理是指在實驗室內(nèi)進行的一系列的有計劃、有組織、有目標的管理和協(xié)調(diào)活動,以確保實驗室項目按時完成,達到預(yù)期的成果和目標。 實驗室項目管理需要考慮多個方面,…

    科研百科 2024年5月24日
    50
  • 電腦軟件:推薦一款本地文檔搜索神器,趕快下載試試吧(電腦本地文件搜索軟件)

    1、前言 大家在日常辦公的時候,經(jīng)常會涉及各種各樣的文檔,時間久了文件會越來越多,有時候需要快速找到一個半年前文檔可能會耗費你的大量時間,畢竟每個人的大腦記憶都是有限的,不可能每個…

    2022年10月5日
    529
  • 白盒測試

    白盒測試是一種測試軟件代碼內(nèi)部結(jié)構(gòu)和邏輯的方法,不考慮軟件的實現(xiàn),而是著重于測試代碼的算法和數(shù)據(jù)結(jié)構(gòu)。白盒測試的目的是驗證代碼的正確性,可以發(fā)現(xiàn)潛在的錯誤和漏洞。 白盒測試可以分為…

    科研百科 2024年10月25日
    2
  • 科研項目中在

    在科研項目中,我們每天都在面對各種各樣的挑戰(zhàn)。有時候,我們需要在極端條件下工作,例如高溫或低溫、高壓力和高海拔等。在這些條件下,我們需要具備特殊的技能和知識才能完成任務(wù)。 作為科研…

    科研百科 2025年2月14日
    2
  • 推進黨建與稅收業(yè)務(wù)融合發(fā)展——臨夏州稅務(wù)局以高質(zhì)量黨建促進稅收工作見聞

    來源:【新甘肅】 推進黨建與稅收業(yè)務(wù)融合發(fā)展 ——臨夏州稅務(wù)局以高質(zhì)量黨建促進稅收工作見聞 新甘肅·甘肅日報記者 王 虎 近年來,臨夏州稅務(wù)局圍繞“抓好黨務(wù)、干好稅務(wù)、帶好隊伍”新…

    科研百科 2023年3月8日
    274
婷婷久久社区综合一区二区三区| 亚洲图片视频一区二区二区三区| 亚洲大片免费看| 黄色国产熟女| 又黄又大又色又粗| 国内外在线播放你懂得| 福利美女视频在线| 人妻制服第一页| 国产成人亚洲日韩爽爽| 综合色拍| 大大香蕉伊人| 在线观看免费日本久久视频| 超黄黄色特黄av| 久久系列国产精品喷水| 久久性高潮精品免费| 一本大道久久综合精品88影视| 亚洲色www.| 日韩无码精彩| 日产久久高清免费| 色婷婷ye中文字幕| 天天免费看黄视频一二三四五区| 久久免费操| 久久久伊人综合| 亚洲美女Av网| 日韩亚洲色欲在线| 啊啊啊好爽好舒服在线观看| 99九九久久无毛| 欧美+国产+午码+麻豆| 偷拍自拍亚洲第一页| 精品国产乱码久久久久久密臀麻豆| 扒丝袜一区二区三区国产午夜福利| 亚州日日干| 无码屋无码中文| 中文字幕韩,一区二区三区| 国产黄片88.av| 日韩精品原创av| 午夜国内黄片二三区| 无一区二区日| 色呦呦影院中文字幕| 亚洲伦乱| 久久日本黄色免费片|