最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

SpringBoot多環(huán)境配置完整過程記錄

 更新時間:2026年02月06日 11:00:03   作者:青衫碼上行  
SpringBoot多環(huán)境配置方案SpringBoot是一個基于Java的框架,提供了多環(huán)境配置方案,以便于在不同的環(huán)境中靈活應(yīng)用,這篇文章主要介紹了SpringBoot多環(huán)境配置的相關(guān)資料,需要的朋友可以參考下

多環(huán)境開發(fā)

引入:開一家奶茶店的故事

假如你要開一家網(wǎng)紅奶茶店,從籌備到營業(yè),你會經(jīng)歷這幾個階段:

  1. 工地裝修期(開發(fā)環(huán)境)
     你在毛坯店里敲敲打打、試裝水電、調(diào)整位置。這時候你可以隨意改動,打翻油漆、鉆錯孔都沒關(guān)系,反正還沒客人。
     對應(yīng)到項目里,這就是開發(fā)環(huán)境——你可以隨便改代碼、刪測試數(shù)據(jù)、打印調(diào)試日志,不怕影響用戶

  2. 試營業(yè)樣板間(測試環(huán)境)
     裝修完成后,你邀請親朋好友來試喝:用和正式開業(yè)一樣的設(shè)備、原料、菜單,模擬真實訂單流程,看看奶茶好不好喝、出餐效率夠不夠、收銀系統(tǒng)穩(wěn)不穩(wěn)定。
     對應(yīng)到項目里,這就是測試環(huán)境——用生產(chǎn)脫敏數(shù)據(jù)、接近生產(chǎn)的配置,讓專門的測試人員驗證功能,提前發(fā)現(xiàn)問題

  3. 正式營業(yè)(生產(chǎn)環(huán)境)
     一切準備就緒,開門迎客。這時候你必須保證:原料新鮮、設(shè)備穩(wěn)定、出餐高效,不能再像試營業(yè)時那樣隨便調(diào)整配方,更不能讓客人喝到“調(diào)試版”奶茶。
     對應(yīng)到項目里,這就是生產(chǎn)環(huán)境——面向真實用戶,要求絕對穩(wěn)定、安全,日志只打關(guān)鍵錯誤,功能不能隨意改動。

如果跳過“試營業(yè)”直接開業(yè),你可能會遇到:菜單打印錯誤、收銀系統(tǒng)崩潰、奶茶口味不穩(wěn)定等等一系列本可以輕易排除的問題

一、什么是多環(huán)境?

多環(huán)境 就是為軟件項目在不同階段(開發(fā)、測試、上線)提供獨立的“運行容器”(將所需資源和項目本身部署到不同的機器上),每個容器擁有專屬的配置、數(shù)據(jù)和運行規(guī)則,彼此完全隔離,互不影響

二、為什么要搞多環(huán)境?

1. 隔離風(fēng)險:避免“本地好的,線上炸了”

  • 數(shù)據(jù)隔離:開發(fā)時可以隨意刪改測試數(shù)據(jù),不會影響生產(chǎn)環(huán)境的真實用戶數(shù)據(jù);
  • 配置隔離:開發(fā)環(huán)境開啟調(diào)試日志、熱部署,生產(chǎn)環(huán)境關(guān)閉調(diào)試、開啟性能優(yōu)化,避免配置混亂;
  • 功能隔離:新功能先在開發(fā)/測試環(huán)境驗證,沒問題再上線,避免直接影響用戶。

2. 提升效率

  • 開發(fā):專注功能開發(fā),不用關(guān)心線上配置和數(shù)據(jù);
  • 測試:在接近生產(chǎn)的環(huán)境驗證功能,發(fā)現(xiàn)的Bug更貼近真實場景;
  • 運維:穩(wěn)定部署和維護生產(chǎn)環(huán)境,不用處理開發(fā)/測試環(huán)境的臨時問題。

3. 保障穩(wěn)定:提前發(fā)現(xiàn)生產(chǎn)級問題

  • 測試環(huán)境用生產(chǎn)脫敏數(shù)據(jù)(如10萬條用戶數(shù)據(jù)),可以提前發(fā)現(xiàn)性能問題(如慢SQL、接口超時);
  • 預(yù)發(fā)布環(huán)境1:1復(fù)制生產(chǎn)配置,上線前做最后驗證,避免直接炸生產(chǎn)。

三、多環(huán)境的種類 

基礎(chǔ)三環(huán)境

環(huán)境名稱英文標識奶茶店類比關(guān)鍵特點
開發(fā)環(huán)境dev工地裝修期數(shù)據(jù)可隨意刪改、日志全開、支持熱部署
測試環(huán)境test試營業(yè)樣板間數(shù)據(jù)是脫敏生產(chǎn)副本、配置接近生產(chǎn)、定期重置
生產(chǎn)環(huán)境prod正式營業(yè)數(shù)據(jù)絕對安全、日志極簡、性能優(yōu)先

擴展五環(huán)境(復(fù)雜項目需要)

在三環(huán)境基礎(chǔ)上增加兩個階段,進一步降低風(fēng)險:

  • 預(yù)發(fā)布環(huán)境(pre):正式開業(yè)前的「壓力測試」,用真實設(shè)備和原料模擬高峰時段,驗證出餐效率;
  • 演示環(huán)境(demo):給投資人/加盟商看的「品牌旗艦店」,裝修精美、數(shù)據(jù)美化,功能穩(wěn)定。

四、應(yīng)用:Spring Boot 多環(huán)境配置

1. 配置文件分類

src/main/resources 目錄下創(chuàng)建以下文件,命名遵循 Spring Boot 官方規(guī)范:

  • application.yml:主配置文件(激活環(huán)境、公共配置)
  • application-dev.yml:開發(fā)環(huán)境配置
  • application-test.yml:測試環(huán)境配置
  • application-prod.yml:生產(chǎn)環(huán)境配置

2. 核心配置示例

主配置文件application.yml

spring:
  application:
    name: milk-tea-shop
  profiles:
    active: dev # 默認激活開發(fā)環(huán)境(工地模式)

開發(fā)環(huán)境application-dev.yml

server:
  port: 8080
spring:
  datasource:
    url: jdbc:mysql://localhost:3306/dev_milk_tea
    username: root
    password: root
logging:
  level:
    root: debug # 調(diào)試日志

生產(chǎn)環(huán)境application-prod.yml

server:
  port: 8081
spring:
  datasource:
    url: jdbc:mysql://prod-db:3306/prod_milk_tea
    username: ${DB_USERNAME} # 環(huán)境變量讀取敏感信息
    password: ${DB_PASSWORD}
logging:
  level:
    root: warn # 只打印警告/錯誤

3. 激活環(huán)境的3種方式

  1. 配置文件指定:修改 application.yml 中的 spring.profiles.active=prod
  2. 命令行指定java -jar milk-tea-shop.jar --spring.profiles.active=prod(可以用maven里的package指令打成 jar包 后操作)
  3. IDE指定:在啟動配置的 Program arguments 中添加 --spring.profiles.active=dev

總結(jié)

到此這篇關(guān)于SpringBoot多環(huán)境配置的文章就介紹到這了,更多相關(guān)SpringBoot多環(huán)境配置內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • java中List移除元素的四種方式

    java中List移除元素的四種方式

    本文主要介紹了java中List移除元素的四種方式,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-08-08
  • 關(guān)于SpringBoot改動后0.03秒啟動的問題

    關(guān)于SpringBoot改動后0.03秒啟動的問題

    這篇文章主要介紹了SpringBoot改動后0.03秒啟動,本文結(jié)合示例代碼給大家講解的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-12-12
  • 一步步講解Spring?Boot整合MyBatis與PostgreSQL實戰(zhàn)指南

    一步步講解Spring?Boot整合MyBatis與PostgreSQL實戰(zhàn)指南

    這篇文章主要介紹了如何在SpringBoot環(huán)境中集成MyBatis和PostgreSQL,涵蓋了環(huán)境搭建、項目創(chuàng)建、數(shù)據(jù)源配置、實體類與Mapper接口定義、MapperXML文件編寫、業(yè)務(wù)層與控制層實現(xiàn)以及測試與驗證的全過程,需要的朋友可以參考下
    2025-02-02
  • Java并發(fā)編程深入理解之Synchronized的使用及底層原理詳解 下

    Java并發(fā)編程深入理解之Synchronized的使用及底層原理詳解 下

    在并發(fā)編程中存在線程安全問題,主要原因有:1.存在共享數(shù)據(jù) 2.多線程共同操作共享數(shù)據(jù)。關(guān)鍵字synchronized可以保證在同一時刻,只有一個線程可以執(zhí)行某個方法或某個代碼塊,同時synchronized可以保證一個線程的變化可見(可見性),即可以代替volatile
    2021-09-09
  • Java創(chuàng)建、識別條形碼和二維碼方法示例

    Java創(chuàng)建、識別條形碼和二維碼方法示例

    這篇文章主要給大家介紹了關(guān)于Java創(chuàng)建、識別條形碼和二維碼的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家學(xué)習(xí)或者使用Java具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-09-09
  • Java處理InterruptedException異常的理論與實踐

    Java處理InterruptedException異常的理論與實踐

    在使用Java的過程中,有個情景或許很多人見過,您在編寫一個測試程序,程序需要暫停一段時間,于是調(diào)用 Thread.sleep()。但是編譯器或 IDE 報錯說沒有處理檢查到的 InterruptedException。InterruptedException 是什么呢,為什么必須處理它?下面跟著小編一起來看看。
    2016-08-08
  • 淺談Java 并發(fā)的底層實現(xiàn)

    淺談Java 并發(fā)的底層實現(xiàn)

    這篇文章主要介紹了淺談Java 并發(fā)的底層實現(xiàn),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-12-12
  • Java中的反射機制詳解

    Java中的反射機制詳解

    這篇文章主要介紹了Java中的反射機制詳解的相關(guān)資料,需要的朋友可以參考下
    2017-06-06
  • JAVA中HTTP基本認證(Basic Authentication)實現(xiàn)

    JAVA中HTTP基本認證(Basic Authentication)實現(xiàn)

    HTTP 基本認證是一種簡單的認證方法,本文主要介紹了JAVA中HTTP基本認證(Basic Authentication),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-07-07
  • spring?boot+vue實現(xiàn)JSAPI微信支付的完整步驟

    spring?boot+vue實現(xiàn)JSAPI微信支付的完整步驟

    JSAPI支付是用戶在微信中打開商戶的H5頁面,商戶在H5頁面通過調(diào)用微信支付提供的JSAPI接口調(diào)起微信支付模塊完成支付,下面這篇文章主要給大家介紹了關(guān)于spring?boot+vue實現(xiàn)JSAPI微信支付的相關(guān)資料,需要的朋友可以參考下
    2022-05-05

最新評論

东宁县| 顺平县| 赞皇县| 龙海市| 镇巴县| 肃北| 北海市| 博野县| 大港区| 图木舒克市| 东乌珠穆沁旗| 巍山| 塔河县| 海兴县| 班戈县| 凯里市| 台前县| 友谊县| 景德镇市| 辽阳县| 环江| 镶黄旗| 苍溪县| 仙游县| 克拉玛依市| 洛扎县| 连江县| 久治县| 仁布县| 界首市| 镇原县| 敦化市| 上杭县| 达州市| 中阳县| 新乡市| 明溪县| 崇信县| 铁力市| 山东省| 英德市|