虛幻引擎5-Unreal Engine筆記之什么時候新建GameMode,什么時候新建關卡?

虛幻引擎5-Unreal Engine筆記之什么時候新建GameMode,什么時候新建關卡?

在這里插入圖片描述
code review!

參考筆記:
1.虛幻引擎5-Unreal Engine筆記之GameMode關卡(Level)關卡藍圖(Level Blueprint)的關系
2.虛幻引擎5-Unreal Engine筆記之什么時候新建GameMode,什么時候新建關卡?

目錄

  • 虛幻引擎5-Unreal Engine筆記之什么時候新建GameMode,什么時候新建關卡?
    • 目錄
    • 1.什么時候新建GameModeBase,什么時候新建關卡?
      • 1. 什么時候新建基于 GameModeBaseGameMode 的藍圖?
        • 場景與用途
        • 操作步驟
        • 示例場景
        • 時機
      • 2. 什么時候新建關卡(Level)?
        • 場景與用途
        • 操作步驟
        • 示例場景
        • 時機
        • 注意事項
      • 3. 什么時候新建關卡藍圖(Level Blueprint)?
        • 場景與用途
        • 操作步驟
        • 示例場景
        • 時機
        • 注意事項
      • 4. 三者的關系與職責劃分
        • 協作關系
      • 5. 實際應用示例
        • 示例 1:射擊游戲開發
        • 示例 2:冒險游戲開發
        • 示例 3:測試環境
      • 6. 常見問題與解決方法
      • 總結
    • 順序是先新建關卡,再新建GameMode藍圖?還是新建GameMode藍圖,再新建關卡?
      • 1. 先新建關卡,再新建 GameMode 藍圖
        • 適用場景
        • 優點
        • 操作流程
        • 示例場景
        • 時機
      • 2. 先新建 GameMode 藍圖,再新建關卡
        • 適用場景
        • 優點
        • 操作流程
        • 示例場景
        • 時機
      • 3. 兩種順序的對比
      • 4. 實際建議:哪種順序更常見?
        • 推薦流程(適用于大多數項目)
      • 5. 實際應用示例
        • 示例 1:射擊游戲(先 GameMode 藍圖,再關卡)
        • 示例 2:冒險游戲(先關卡,再 GameMode 藍圖)
      • 6. 常見問題與解決方法
      • 總結

1.什么時候新建GameModeBase,什么時候新建關卡?

1. 什么時候新建基于 GameModeBaseGameMode 的藍圖?

場景與用途
  • 定義游戲核心規則和全局邏輯:當需要定義游戲的全局規則、機制或狀態管理邏輯時,應該創建一個基于 GameModeBaseGameMode 的藍圖。GameMode 負責管理游戲的整體行為,例如玩家生成、計分規則、游戲勝負條件、關卡切換等。
  • 跨關卡復用:如果希望某些邏輯可以在多個關卡中復用(例如相同的計分系統或游戲模式),GameMode 藍圖是合適的,因為它可以在項目設置或 World Settings 中應用到不同關卡。
  • 多人游戲邏輯:在多人游戲中,GameMode 負責服務器端的邏輯,并通過 GameState 同步數據到客戶端,因此需要創建一個 GameMode 藍圖來管理這些核心邏輯。
  • 選擇 GameModeBase 還是 GameMode
    • GameModeBase:這是一個輕量級的基類,適合簡單的游戲或自定義需求較少的場景。它不包含一些默認功能(例如默認的玩家重生邏輯),更靈活,適合從頭開始自定義。
    • GameMode:這是一個更完整的基類,繼承自 GameModeBase,包含了一些內置功能(例如默認的玩家重生、比賽開始/結束邏輯),適合需要快速開發的場景,尤其是射擊游戲或競技類游戲。
操作步驟
  • 右鍵點擊內容瀏覽器,選擇"Blueprint Class",基類選擇 GameModeBaseGameMode
  • 通常在項目初期或需要定義游戲核心機制時執行這一操作。
示例場景
  • 正在開發一個射擊游戲,需要定義玩家得分達到一定值時結束游戲的規則。可以創建一個基于 GameModeBase 的藍圖(如 MyGameMode),設置默認 Pawn 和 PlayerController,并編寫計分邏輯。
  • 正在開發一個多人游戲,需要管理玩家登錄、退出和狀態同步。這時需要創建一個基于 GameMode 的藍圖,利用其內置的多人游戲支持功能。
時機
  • 在項目初期,確定游戲類型和核心規則時。
  • 需要為游戲添加新的模式或規則時(例如從單人模式擴展到多人模式)。
  • 需要管理全局游戲狀態或玩家行為時。

2. 什么時候新建關卡(Level)?

場景與用途
  • 創建游戲中的一個獨立場景或區域:當需要為游戲添加一個新的游戲環境、地圖或場景時,應該新建一個關卡(Level)。關卡是 UE5 中用于組織游戲世界的容器,包含地形、靜態網格體、燈光、觸發器等內容。
  • 不同游戲階段或模式:如果需要為游戲的不同部分創建獨立的場景(例如主菜單關卡、第一章關卡、競技場關卡),每個場景都可以是一個單獨的關卡。
  • 測試特定功能:在開發過程中,可能需要一個獨立的測試關卡來測試某個機制或功能。
操作步驟
  • 在內容瀏覽器中右鍵,選擇"Level",或者通過菜單欄的"File > New Level"創建。
  • 通常會選擇一個模板(例如 Default、Empty Level、VR-Basic 等)來快速搭建基礎環境。
示例場景
  • 正在開發一個冒險游戲,需要創建不同的章節地圖(例如森林關卡、沙漠關卡)。每個地圖都可以是一個獨立的關卡。
  • 需要一個主菜單界面作為一個單獨的關卡,用于游戲啟動時顯示選項。
時機
  • 項目初期,搭建游戲世界或地圖時。
  • 游戲開發過程中,需要添加新的場景或地圖時。
  • 需要測試特定功能或內容時,創建一個臨時測試關卡。
注意事項
  • 每個關卡可以關聯一個特定的 GameMode(通過 World Settings 設置),也可以使用項目默認的 GameMode。
  • UE5 支持世界分區(World Partition),可以在一個關卡中管理大型開放世界,但對于較小的獨立場景,通常還是會創建多個關卡。

3. 什么時候新建關卡藍圖(Level Blueprint)?

場景與用途
  • 處理特定關卡的本地邏輯:當需要為某個特定關卡添加獨特的邏輯或行為時,可以使用關卡藍圖。關卡藍圖是嵌入在特定關卡中的腳本,用于控制該關卡中的對象或事件。
  • 與關卡中特定Actor交互:如果需要控制關卡中的特定對象(例如開關門、觸發陷阱、播放劇情動畫),關卡藍圖是合適的工具,因為它可以直接訪問和操作關卡中的 Actor。
  • 關卡特定事件響應:例如玩家進入某個區域時觸發特定效果,或者關卡加載時執行某些初始化操作。
操作步驟
  • 關卡藍圖不需要手動"新建":每個關卡都會自動關聯一個關卡藍圖。可以在關卡編輯器的工具欄中點擊"Blueprints > Open Level Blueprint"來打開和編輯當前關卡的關卡藍圖。
  • 如果新建了一個關卡,它會自動生成一個對應的關卡藍圖,只需要打開并編輯即可。
示例場景
  • 在一個關卡中設計了一個機關,當玩家靠近時觸發陷阱。可以在關卡藍圖中編寫邏輯,監聽玩家位置并觸發陷阱效果。
  • 在一個關卡中需要播放開場動畫,并在動畫結束后通知 GameMode 更新游戲狀態。可以在關卡藍圖中實現動畫播放,并通過 Get Game Mode 調用 GameMode 的函數。
時機
  • 在某個關卡已經創建并需要添加特定邏輯時。
  • 需要處理關卡中特定對象或事件的行為時。
  • 關卡設計完成后,需要添加交互或動態效果時。
注意事項
  • 關卡藍圖的作用范圍僅限于當前關卡,無法直接復用到其他關卡。
  • 如果邏輯可能在多個關卡中復用,建議將其放入 GameMode 或創建可復用的藍圖組件,而不是寫在關卡藍圖中。
  • 在多人游戲中,關卡藍圖的邏輯可能僅在客戶端運行,容易導致同步問題,關鍵邏輯應盡量放在 GameMode 中。

4. 三者的關系與職責劃分

類型用途與職責創建時機操作方式
GameMode 藍圖定義游戲核心規則、全局邏輯、跨關卡復用項目初期或需要新游戲模式時右鍵內容瀏覽器,選擇"Blueprint Class",基類選 GameModeBaseGameMode
關卡 (Level)創建游戲場景、地圖或獨立環境需要新場景或測試環境時右鍵內容瀏覽器,選擇"Level",或"File > New Level"
關卡藍圖 (Level Blueprint)處理特定關卡的本地邏輯、對象交互、事件響應關卡創建后需要添加特定邏輯時通過關卡編輯器工具欄"Blueprints > Open Level Blueprint"編輯
協作關系
  • GameMode 藍圖 提供游戲的全局框架和規則,適用于所有關卡或特定關卡(通過 World Settings 指定)。
  • 關卡 (Level) 是游戲世界的容器,包含具體的場景內容,并可以關聯特定的 GameMode。
  • 關卡藍圖 是特定關卡的腳本,處理本地邏輯,可以通過 Get Game Mode 與 GameMode 交互,例如調用 GameMode 的函數或訪問其變量。

5. 實際應用示例

示例 1:射擊游戲開發
  • 新建 GameMode 藍圖:在項目初期,創建一個基于 GameModeBaseMyGameMode 藍圖,設置默認 Pawn 和 PlayerController,定義計分規則和游戲結束邏輯。
  • 新建關卡:創建多個關卡,例如 ArenaLevel1ArenaLevel2,分別代表不同的競技場地圖。
  • 編輯關卡藍圖:在 ArenaLevel1 的關卡藍圖中,編寫邏輯以檢測玩家進入特定區域時生成敵人,并通過 MyGameMode 更新得分。
示例 2:冒險游戲開發
  • 新建 GameMode 藍圖:創建一個基于 GameModeAdventureGameMode 藍圖,管理任務進度和玩家狀態。
  • 新建關卡:創建多個關卡,例如 ForestLevelCaveLevel,分別代表冒險的不同區域。
  • 編輯關卡藍圖:在 ForestLevel 的關卡藍圖中,編寫邏輯以觸發特定劇情動畫,并通過 AdventureGameMode 更新任務狀態。
示例 3:測試環境
  • 新建關卡:創建一個臨時測試關卡 TestLevel,用于測試某個角色或機制。
  • 新建 GameMode 藍圖:如果測試需要特定的游戲模式,可以創建一個臨時的 TestGameMode 藍圖,并通過 World Settings 應用到 TestLevel
  • 編輯關卡藍圖:在 TestLevel 的關卡藍圖中,添加測試相關的邏輯,例如生成測試對象或記錄測試數據。

6. 常見問題與解決方法

  • 問題:不知道是該用 GameMode 還是關卡藍圖?
    • 解決:如果邏輯是全局的或需要在多個關卡復用,使用 GameMode 藍圖;如果邏輯是特定于某個關卡的本地行為,使用關卡藍圖。
  • 問題:新建關卡后找不到關卡藍圖?
    • 解決:每個關卡自動關聯一個關卡藍圖,通過關卡編輯器的"Blueprints > Open Level Blueprint"可以找到并編輯。
  • 問題:GameMode 藍圖未生效?
    • 解決:確保在 Project Settings 或 World Settings 中正確設置了 GameMode,并檢查藍圖是否已編譯和保存。

總結

  • 新建 GameMode 藍圖:當需要定義游戲核心規則、全局邏輯或跨關卡復用的機制時,右鍵內容瀏覽器選擇"Blueprint Class",基類選 GameModeBaseGameMode
  • 新建關卡:當需要創建新的游戲場景、地圖或測試環境時,通過內容瀏覽器或"File > New Level"創建。
  • 編輯關卡藍圖:當需要為特定關卡添加本地邏輯或對象交互時,通過關卡編輯器打開并編輯關卡藍圖。

2.順序是先新建關卡,再新建GameMode藍圖?還是新建GameMode藍圖,再新建關卡?

在 Unreal Engine 5 (UE5) 中,新建關卡(Level)和新建 GameMode 藍圖的順序取決于項目開發流程、具體需求以及工作習慣。通常情況下,這兩者的創建順序并沒有嚴格的限制,因為它們是相對獨立的:關卡是游戲世界的容器,而 GameMode 藍圖定義游戲規則,可以在任何時候創建并關聯到關卡。然而,根據開發階段和邏輯依賴關系,某些情況下一種順序可能更自然或更高效。

下面將詳細分析在什么情況下應該先新建關卡再新建 GameMode 藍圖,或者先新建 GameMode 藍圖再新建關卡,并提供建議和實際應用場景。

1. 先新建關卡,再新建 GameMode 藍圖

適用場景
  • 關卡驅動的開發流程:如果在項目初期更關注游戲場景或地圖的設計,希望先搭建關卡環境,然后再根據關卡的具體需求定義游戲規則,這種順序更適合。例如,可能先設計了一個競技場關卡,然后根據競技場的特點(例如地圖大小、玩家數量)決定 GameMode 的具體邏輯(如計分規則、玩家重生點)。
  • 測試特定關卡需求:如果已經創建了一個關卡,并發現默認的 GameMode 無法滿足該關卡的特殊需求,可以針對性地創建一個新的 GameMode 藍圖。例如,一個關卡需要獨特的游戲模式(如生存模式),而其他關卡使用默認的 GameMode。
  • 迭代開發:在項目中后期,可能需要為一個新關卡添加特定的游戲規則,這時會先創建新關卡,然后根據需求創建對應的 GameMode 藍圖。
優點
  • 基于關卡需求定制 GameMode:先有關卡,可以更直觀地了解關卡的特點和需求,從而設計更貼合關卡的 GameMode 邏輯。例如,關卡中有特定的觸發區域或對象,可能需要 GameMode 提供相應的支持。
  • 避免過早定義規則:如果 GameMode 規則尚未明確,先創建關卡可以讓開發者先專注于場景設計,避免過早鎖定游戲機制。
操作流程
  1. 新建關卡:在內容瀏覽器中右鍵選擇"Level",或通過"File > New Level"創建一個新關卡。
  2. 設計關卡內容:添加地形、靜態網格體、燈光等,初步構建游戲環境。
  3. 新建 GameMode 藍圖:根據關卡需求,右鍵內容瀏覽器選擇"Blueprint Class",基類選擇 GameModeBaseGameMode,創建自定義 GameMode 藍圖。
  4. 關聯 GameMode:在關卡的 World Settings 中,將 GameMode Override 設置為新建的 GameMode 藍圖。
示例場景
  • 開發一個射擊游戲,先創建了一個競技場關卡 ArenaLevel,發現需要一個特殊的 GameMode 來支持"奪旗模式"。于是針對這個關卡需求創建了一個 CaptureFlagGameMode 藍圖,并在 ArenaLevel 的 World Settings 中應用它。
  • 開發一個冒險游戲,先創建了一個關卡 PuzzleLevel,其中包含復雜的謎題機制。之后創建了一個 PuzzleGameMode 藍圖,專門管理謎題進度和玩家狀態。
時機
  • 項目初期,優先關注場景設計時。
  • 為特定關卡添加獨特游戲規則時。
  • 已有多個關卡,需要為新關卡創建專屬 GameMode 時。

2. 先新建 GameMode 藍圖,再新建關卡

適用場景
  • 規則驅動的開發流程:如果在項目初期更關注游戲的核心機制和規則,希望先定義游戲玩法,然后再根據規則設計關卡,這種順序更適合。例如,可能先設計了一個 GameMode 來支持"團隊死亡競賽"模式,然后根據該模式的需求設計合適的競技場關卡。
  • 全局規則優先:如果希望所有關卡或大部分關卡共享相同的游戲規則,可以先創建 GameMode 藍圖,并在項目設置中將其設為默認 GameMode,之后創建的關卡都會自動應用該 GameMode。
  • 快速原型開發:在快速迭代或測試游戲機制時,可以先創建一個簡單的 GameMode 藍圖,定義基本規則,然后創建簡單的測試關卡來驗證規則是否有效。
優點
  • 統一游戲規則:先定義 GameMode 可以確保游戲的核心機制在所有關卡中一致,避免因關卡設計不同而導致規則沖突。
  • 指導關卡設計:GameMode 的規則可以為關卡設計提供方向。例如,GameMode 定義了玩家重生點數量,關卡設計時就可以根據這一規則布置重生位置。
  • 便于測試:先有 GameMode,可以快速創建多個測試關卡來驗證不同場景下規則的表現。
操作流程
  1. 新建 GameMode 藍圖:右鍵內容瀏覽器選擇"Blueprint Class",基類選擇 GameModeBaseGameMode,創建自定義 GameMode 藍圖。
  2. 設置默認 GameMode:在 Project Settings 的"Maps & Modes"中,將默認 GameMode 設置為新建的 GameMode 藍圖(可選,也可以稍后在 World Settings 中為特定關卡覆蓋)。
  3. 新建關卡:在內容瀏覽器中右鍵選擇"Level",或通過"File > New Level"創建一個新關卡。
  4. 驗證或調整:根據需要,在新關卡的 World Settings 中確認或調整 GameMode 設置。
示例場景
  • 開發一個賽車游戲,先創建了一個 RacingGameMode 藍圖,定義了比賽規則(例如圈數、計時、勝負條件)。然后根據這些規則創建多個賽道關卡(如 Track1Track2),確保關卡設計符合 GameMode 的需求。
  • 在項目初期創建了一個 SurvivalGameMode 藍圖,定義了生存模式的核心機制(例如資源管理、敵人生成)。之后創建多個測試關卡,驗證該 GameMode 在不同環境下的表現。
時機
  • 項目初期,優先定義游戲核心機制時。
  • 游戲規則明確,且希望所有關卡共享相同規則時。
  • 需要快速測試游戲機制時。

3. 兩種順序的對比

順序適用場景優點缺點
先新建關卡,再新建 GameMode 藍圖關卡驅動開發、特定關卡獨特需求、迭代開發基于關卡需求定制 GameMode,避免過早鎖定規則可能導致規則不統一,需后期調整
先新建 GameMode 藍圖,再新建關卡規則驅動開發、全局規則優先、快速原型統一游戲規則,指導關卡設計,便于測試可能因規則限制關卡設計,需后期修改規則

4. 實際建議:哪種順序更常見?

  • 沒有固定順序,取決于開發流程:UE5 并不強制要求特定的創建順序,GameMode 藍圖和關卡的創建是獨立的。可以根據團隊習慣或項目需求選擇任意順序。
  • 常見做法:先 GameMode 藍圖,再關卡:在許多項目中,開發者傾向于先定義 GameMode 藍圖,因為游戲規則和機制通常是項目的基礎,先明確規則可以為關卡設計提供清晰的方向。此外,先創建 GameMode 藍圖并在 Project Settings 中設為默認,可以讓后續創建的關卡自動應用該 GameMode,減少手動配置的工作量。
  • 靈活調整:在實際開發中,GameMode 和關卡的創建往往是迭代的。可能先創建一個簡單的 GameMode 和測試關卡,然后隨著項目進展不斷添加新的關卡和 GameMode 藍圖。
推薦流程(適用于大多數項目)
  1. 項目初期:先創建一個基礎的 GameMode 藍圖,定義游戲的核心規則,并將其設為默認 GameMode(在 Project Settings 中)。
  2. 創建初始關卡:創建一個或多個測試關卡,驗證 GameMode 的邏輯是否符合預期。
  3. 迭代開發:根據需求創建更多關卡,并為特定關卡創建新的 GameMode 藍圖(如果需要),通過 World Settings 覆蓋默認 GameMode。

5. 實際應用示例

示例 1:射擊游戲(先 GameMode 藍圖,再關卡)
  • 背景:開發一個射擊游戲,核心機制是團隊死亡競賽。
  • 步驟
    1. 先創建 TeamDeathMatchGameMode 藍圖,定義團隊計分、玩家重生、游戲結束條件等規則。
    2. 在 Project Settings 中將 TeamDeathMatchGameMode 設為默認 GameMode。
    3. 創建多個競技場關卡(如 Arena1Arena2),自動應用該 GameMode。
    4. 如果某個關卡需要特殊模式(例如"奪旗"),再為該關卡創建新的 GameMode 藍圖并在 World Settings 中覆蓋。
示例 2:冒險游戲(先關卡,再 GameMode 藍圖)
  • 背景:開發一個冒險游戲,關卡設計先行。
  • 步驟
    1. 先創建關卡 ForestLevel,設計森林環境和謎題機關。
    2. 發現需要特定的游戲規則來管理謎題進度,于是創建 PuzzleGameMode 藍圖,定義謎題狀態和玩家交互邏輯。
    3. ForestLevel 的 World Settings 中將 GameMode 設置為 PuzzleGameMode
    4. 后續創建其他關卡時,可以復用 PuzzleGameMode,或根據需要創建新的 GameMode 藍圖。

6. 常見問題與解決方法

  • 問題:不確定先創建哪個?
    • 解決:如果項目重點是游戲機制,先創建 GameMode 藍圖;如果重點是場景設計,先創建關卡。初期可以先創建簡單的 GameMode 和測試關卡,之后再調整。
  • 問題:創建順序影響開發嗎?
    • 解決:通常不會影響,因為 GameMode 和關卡可以隨時關聯(通過 Project Settings 或 World Settings)。只需確保在測試或運行關卡時,正確的 GameMode 已關聯。
  • 問題:GameMode 未應用到關卡?
    • 解決:檢查 Project Settings 中的默認 GameMode,或關卡的 World Settings 中的 GameMode Override 是否正確設置。

總結

  • 先新建關卡,再新建 GameMode 藍圖:適用于關卡驅動的開發流程,或為特定關卡定制 GameMode 時。優點是 GameMode 可基于關卡需求設計,但可能導致規則不統一。
  • 先新建 GameMode 藍圖,再新建關卡:適用于規則驅動的開發流程,或希望統一游戲機制時。優點是規則先行,指導關卡設計,便于測試和復用。
  • 推薦:通常先創建 GameMode 藍圖并設為默認,再創建關卡,這樣可以減少配置工作量并確保規則一致。但具體順序可以根據項目需求和團隊習慣靈活調整。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/83781.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/83781.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/83781.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

開源模型應用落地-模型上下文協議(MCP)-Resource Template-資源模板的使用邏輯(六)

一、前言 在數字化進程加速的今天,如何高效管理動態資源已成為開發者們的核心課題。Resource Template(資源模板)作為Model Context Protocol(MCP)中的關鍵機制,正通過參數化設計重新定義資源調用的邊界——它不僅是靜態數據的容器,更是動態上下文生成的引擎。與傳統的R…

uniapp小程序獲取手機設備安全距離

utils.js let systemInfo null;export const getSystemInfo () > {if (!systemInfo) {systemInfo uni.getSystemInfoSync();// 補充安全區域默認值systemInfo.safeAreaInsets systemInfo.safeAreaInsets || {top: 0,bottom: 0,left: 0,right: 0};// 確保statusBarHei…

【線下沙龍】NineData x Apache Doris x 阿里云聯合舉辦數據庫技術Meetup,5月24日深圳見!

5月24日下午,NineData 將聯合 Apache Doris、阿里云一起,在深圳舉辦數據庫技術Meetup。本次技術沙龍聚焦「數據實時分析」與「數據同步遷移」 兩大核心領域,針對企業數據戰略中的痛點,特邀行業資深技術大咖,結合多年技…

企業網站架構部署與優化 --web技術與nginx網站環境部署

一、Web 基礎 本節將介紹Web 基礎知識,包括域名的概念、DNS 原理、靜態網頁和動態網頁的 相關知識。 1、域名和DNS 1.1、域名的概念 網絡是基于TCP/IP 協議進行通信和連接的,每一臺主機都有一個唯一的標識(固定的IP 地址),用以區別在網絡上成千上萬個用戶和計算機。…

java實現poi-ooxml導出Excel的功能

文章目錄 1. 添加poi-ooxml依賴2. Excel導出工具類3.核心邏輯說明4.擴展建議5.HSSF、XSSF、SXSSF 的核心原則和場景建議,幫助你在不同需求下快速決策: 以下是一個基于 Apache POI 實現的簡單、通用的Java導出Excel工具類,代碼邏輯清晰且注釋詳…

Nginx端口telnet不通排查指南

nginx已經配置server及端口20002,telnet不通:telnet 127.0.0.1 20002 Trying 127.0.0.1... telnet: connect to address 127.0.0.1: Connection refused 一、檢查 systemctl status nginx.service nginx: [emerg] bind() to 0.0.0.0:20002 failed (13…

【RabbitMQ】消息丟失問題排查與解決

RabbitMQ 消息丟失是一個常見的問題,可能發生在消息的生產、傳輸、消費或 Broker 端等多個環節。消息丟失的常見原因及對應的解決方案: 一、消息丟失的常見原因 1. 生產端(Producer)原因 (1) 消息未持久化 原因:生產…

docker默認存儲遷移

在容器化場景下默認存儲路徑為(/var/lib/docker)大多數平臺根目錄不支持系統盤擴容,會有空間不足風險隱患,因未配置持久化存儲導致容器數據丟失。以遷移Docker存儲路徑至大容量/data目錄說明 一、停止容器 systemctl stop docke…

【Golang筆記02】函數、方法、泛型、接口學習筆記

Golang筆記02:函數、方法、泛型、接口學習筆記 一、進階學習 1.1、函數 go中的函數使用func關鍵字進行定義,go程序的入口函數叫做:main,并且必須是屬于main包里面。 1.1.1、定義函數 (1)普通函數 go中…

LLM筆記(九)KV緩存調研

KV 緩存 (Key-Value Cache) 技術詳解 KV 緩存(Key-Value Cache)是在 Transformer 模型(尤其是 Decoder-Only 架構或 Encoder-Decoder 架構的 Decoder 部分)進行自回歸 (auto-regressive) 推理生成序列時,一種至關重要…

【Boost搜索引擎】構建Boost站內搜索引擎實踐

目錄 1. 搜索引擎的相關宏觀原理 2. 正排索引 vs 倒排索引 - 搜索引擎具體原理 3. 編寫數據去標簽與數據清洗的模塊 Parser 去標簽 編寫parser 用boost枚舉文件名 解析html 提取title ?編輯 去標簽 構建URL 將解析內容寫入文件中 4. 編寫建立索引的模塊 Index 建…

LeetCode 熱題 100 1.兩數之和

目錄 題目: 題目描述: 題目鏈接: 思路: 思路一暴力遍歷: 代碼: 暴力遍歷Java代碼: 題目: 題目描述: 題目鏈接: 1. 兩數之和 - 力扣(LeetC…

基于LSTM-GARCH混合模型的黃金價格波動率預測:信用降級事件沖擊評估

摘要:本文構建多維度量化分析框架,對近期黃金市場波動進行技術解構。通過主權信用評級調整、地緣風險及宏觀經濟數據等公開信息源,運用統計學習模型解析市場驅動因素,避免主觀預判。文中所有技術分析均基于歷史數據回測&#xff0…

分布式與集群:概念、區別與協同

分布式與集群:概念、區別與協同 在分布式系統與云計算領域,分布式(Distributed)和集群(Cluster)是兩個高頻出現的核心概念。它們常被混淆,但本質上屬于不同維度的設計思想。本文將從定義、分類、實際應用及協同關系四個層面,結合 Dubbo、Git、Hadoop 等典型案例,系統…

Prometheus實戰教程:k8s平臺-Mysql監控案例

配置文件優化后的 Prometheus 自動發現 MySQL 實例的完整 YAML 文件。該配置包括: MySQL Exporter 部署:使用 ConfigMap 提供 MySQL 連接信息。Prometheus 自動發現:通過 Kubernetes 服務發現自動抓取 MySQL 實例。 1、mysql 配置文件 &…

基于區塊鏈技術的智能汽車診斷與性能分析

我是穿拖鞋的漢子,魔都中堅持長期主義的汽車電子工程師。 老規矩,分享一段喜歡的文字,避免自己成為高知識低文化的工程師: 鈍感力的“鈍”,不是木訥、遲鈍,而是直面困境的韌勁和耐力,是面對外界…

文字溢出省略號顯示

一、 單行文字溢出、省略號顯示 二、 多行文字溢出,省略號顯示 有較大的兼容性問題,適用于Webkit為內核的瀏覽器軟件,或者移動端的(大部分也是webkit) 此效果建議后端人員開發 三、圖片底側空白縫隙的修復技巧&#…

JavaScript 中使用 Elasticsearch 的正確方式,第一部分

作者:來自 Elastic Jeffrey Rengifo 講解如何用 JavaScript 創建一個可用于生產環境的 Elasticsearch 后端。 想獲得 Elastic 認證?看看下一期 Elasticsearch 工程師培訓什么時候開始吧! Elasticsearch 擁有大量新功能,能幫助你…

RAG-MCP:突破大模型工具調用瓶頸,告別Prompt膨脹

大語言模型(LLM)的浪潮正席卷全球,其強大的自然語言理解、生成和推理能力,為各行各業帶來了前所未有的機遇。然而,正如我們在之前的探討中多次提及,LLM并非萬能。它們受限于訓練數據的時效性和范圍&#xf…

鴻蒙OSUniApp制作一個小巧的圖片瀏覽器#三方框架 #Uniapp

利用UniApp制作一個小巧的圖片瀏覽器 最近接了個需求,要求做一個輕量級的圖片瀏覽工具,考慮到多端適配的問題,果斷選擇了UniApp作為開發框架。本文記錄了我從0到1的開發過程,希望能給有類似需求的小伙伴一些參考。 前言 移動互聯…