yue-fang-readfog

feeds.twtxt.net

No description provided.

Recent twts from yue-fang-readfog

構建 LLM 應用:介紹(第一部分)
作者:Vipra Singh 編譯:ronghuaiyang 導讀在系列博客中,我們通過檢索增強生成(RAG)應用的視角來學習大規模語言模型(LLM)。即使是一個簡單的檢索增強生成(RAG)應用也涉及到調整衆多不同的參數、組件和模型在我最近對語言模型(LLM)應用的探索中,我被檢索增強生成(RAG)所扮演的重要角色深深吸引。從概念構想到雲上部署,全面理解端到端的 RAG 架構是一項相當 ⌘ Read more

⤋ Read More

如何分析 Rust 進程使用了多少內存?
在篇文章中,我們使用 memory-stats crate 來報告和分析 Rust 進程使用了多少內存,它依賴於操作系統的內存計算。使用以下命令創建一個 Rust 新項目:cargo new memory-stats-example加入以下依賴項:

⤋ Read More

單點登錄(SSO)實現詳解!!!
普通登錄提到單點登錄,首先可以想到傳統登錄,通過登錄頁面根據用戶名查詢用戶信息,判斷密碼是否正確,正確則將用戶信息寫到 session,訪問的時候通過從 session 中獲取用戶信息,判斷是否已登錄,登錄則允許訪問。普通登錄的缺點由於 session 不能共享,服務越來越多,並且還服務還搭建集羣,導致每訪問另外一個服務都需要重新登錄。單點登錄單點登錄有個簡稱是 sso,它是一個功能可以控制多個有 ⌘ Read more

⤋ Read More

不必過於擔心掌握不了 Rust 的生命週期
前段時間在內網 Rust 羣看到同事分享的一篇關於 Rust 生命週期的文章,個人覺得很適合筆者這一類 Rust 初學人羣,利用週末翻譯記錄一下。 原文地址: https://corrode.dev/blog/lifetimes/很多人提到 Rust 很難學的時候,他們大多數都會提到 Rust 的生命週期。然而,在開發了七年 Rust 代碼之後,我 (原文作者,後面同) 可能 95% 的 ⌘ Read more

⤋ Read More

深入研究 Rust 的內部可變性 - Cell 是如何工作的?
在 rust 中,我們從引用借用的規則中知道有不可變 (共享) 引用和可變 (獨佔) 引用。如果我們有一個共享引用,我們可以想要多少就有多少。這是因爲這些引用不允許我們改變它們指向的值,所以同時有多個引用是可以的。可變引用則不然,顧名思義,可變引用允許我們改變它們所指向的值。所以在這種情況下,對值有多個引用是不行的。例如,考慮兩個線程,其中每個線程都持有一個獨佔引用並同時更改其值。線程運行後的值應 ⌘ Read more

⤋ Read More

攜程門票秒殺系統的設計與實踐
作者簡介 Liang,攜程技術專家,專注系統性能、穩定性、承載能力和交易質量,在技術架構演進、高併發等領域有豐富的實踐經驗。本文概述了攜程門票預訂交易系統在應對秒殺活動中面臨的挑戰與應對策略。第一部分闡述了業務激增對系統架構的考驗;第二部分深入剖析了系統架構的優化路徑,涵蓋讀熱點、寫入性能瓶頸、強一致性事務處理及流量精細化控制等關鍵問題的解決方案,並總結了確保系統高可用性與持續性的治理措施。希望 ⌘ Read more

⤋ Read More

ptmalloc、tcmalloc 與 jemalloc 對比分析
背景介紹——–在開發中,爲了進行耗時優化,基礎庫這層按照慣例使用 tcmalloc 替代 glibc 標配的 ptmalloc 做優化,CPU 消耗和耗時確實有所降低。但在晚上高峯時期,在 CPU 剛剛超過 50% 之後卻出現了指數上升,服務在幾分鐘之內不可用。最終定位到是 tcmalloc 在內存分配的時候使用自旋鎖,在鎖衝突嚴重的時候導致 CPU 飆升。爲了弄清楚 tcmalloc ⌘ Read more

⤋ Read More

GDB 調試工具詳解:逐步剖析程序運行過程
GDB(GNU 調試器)是一個功能強大的開源調試工具,用於幫助程序員分析和調試 C、C++ 等編程語言的代碼。它可以在運行過程中檢查程序狀態,設置斷點以停止程序執行並觀察變量值、內存狀態等,並提供一系列命令和功能來輔助調試過程。GDB 可以與不同編譯器和操作系統配合使用,支持多種調試特性,如單步執行、條件斷點、查看堆棧信息、監視變量值、內存泄漏檢測等。通過 GDB,開發者能夠深入理解程序運行時的細 ⌘ Read more

⤋ Read More

聊聊 go 語言對於 socket 的抽象
寫在文章開頭——go語言對於網絡抽象做了非常通用且高性能的封裝,所以就從net包源碼入手介紹一下go語言對於socket的抽象。Hi,我是 sharkChili ,是個不斷在硬核技術上作死的 java coder ,是 CSDN 的博客專家 ,也是開源項目 Java Guide 的維護者之一,熟悉 Java 也會一點 Go ,偶爾也會在 C 源碼 邊緣徘徊。寫過很多有意思的技術博客,也還在 ⌘ Read more

⤋ Read More

Ftrace 技術揭祕:解密 Linux 內核追蹤神器
前言:雖然之前一直聽說過 ftrace,但從來沒將它用在實戰中,在一次客戶排查問題中,遇到了比較奇怪的現象,一位精通內核的朋友建議使用 ftrace 來定位一下。雖然那一次並沒有使用 ftrace,但也讓我覺得,後面我們勢必要提供 ftrace 相關的工具幫助我們在線上定位問題,所以自己也決定重新學習使用下 ftrace,當然也決定寫一系列的相關出來,這裏就先簡單介紹下 ftrace。一、什麼是 ⌘ Read more

⤋ Read More

深入解析 gRPC 的重連機制
gRPC 的重連機制是確保客戶端在連接斷開後能夠自動重新連接到服務器的一種機制,對於分佈式系統和微服務架構中的高可用性和容錯性至關重要。什麼是 gRPC 重連機制————-gRPC 重連機制是指在客戶端與服務器之間的連接斷開後,客戶端自動嘗試重新建立連接的過程。gRPC 的重連機制依賴於底層的傳輸層實現(如 HTTP/2)和客戶端庫的配置。gRPC 重連策略———gRP ⌘ Read more

⤋ Read More

一文讀懂 QUIC 協議:更快、更穩、更高效的網絡通信
你是否也有這樣的困擾:打開 APP 巨耗時、刷劇一直在緩衝、追熱搜打不開頁面、信號稍微差點就直接加載失敗……如果有一個協議能讓你的上網速度,在不需要任何修改的情況下就能提升 20%,特別是網絡差的環境下能夠提升 30% 以上;如果有一個協議可以讓你在 WiFi 和蜂窩數據切換時,網絡完全不斷開、直播不卡頓、視頻不緩衝;你願意去了解一下它嗎?它就是 QUIC 協議。本文將從 QUIC 的背景、原理、 ⌘ Read more

⤋ Read More

PolarisMesh 源碼系列 –Polaris-Go 註冊發現流程
導語北極星是騰訊開源的一款服務治理平臺,用來解決分佈式和微服務架構中的服務管理、流量管理、配置管理、故障容錯和可觀測性問題。在分佈式和微服務架構的治理領域,目前國內比較流行的還包括 Spring Cloud,Apache Dubbo 等。在 Kubernetes 的技術領域,也有以 Istio 爲代表的 ServiceMesh 技術。本篇 Blog 主要分析北極星的優勢,及其服務註冊發現的技術實現 ⌘ Read more

⤋ Read More

圖解 IO 多路複用之 Select 實現原理
Linux 上提供了 IO 多路複用機制的實現有多種,常見的有 select、poll、epoll,下面分析一下 select 的多路複用的原理。     服務器端有 1 個監聽文件描述符和若干個通信文件描述符,每當服務器端建立一個新的連接後就會生成一個通信的文件描述符,如下圖所示:    select 可以同時檢測讀緩衝區(Read buffer)、寫緩衝區(Write buffer) ⌘ Read more

⤋ Read More

以 Go 語言爲例解釋什麼是僞共享以及如何解決
本文翻譯自:What’s false sharing and how to solve it (using Golang as example)譯文在解釋僞共享(false sharing)之前,有必要簡要介紹一下 CPU 架構中緩存是如何工作的。CPU 緩存中的最小單位是緩存行(cache line)(如今,CPU 中常見的緩存行大小爲 64 字節)。因此,當 CPU 從內存讀取一個變量時, ⌘ Read more

⤋ Read More

乾貨!解析 binlog 的三種實現手段
不知道你是否有遇到過需要解析 binlog 日誌的場景。今天我整理了一些對 binlog 解析的解決方案,供大家參考下。 基於 Canal 的實時訂閱一般業內對 binlog 進行實時監聽最常用的中間件會是 canal。canal 其實本質底層是制定了一個僞造的 MySQL 的 Slave 節點,接收 MySQL 主節點發送過來的 binlog 文件。只需要我們引入相關的依賴,然後部署一套 Ca ⌘ Read more

⤋ Read More

終於把 word2vec 的原理搞清楚了!
大家好,我是小寒。今天給大家分享自然語言處理中常用的一個知識點,word2vecword2vec 是一種廣泛用於自然語言處理的技術,主要目的是將單詞轉換爲詞向量(將單詞表示爲數字向量)。這些詞向量能夠反映不同詞語的相似性,使得語義上或語法上相近的詞語在向量空間中也相互接近。如下圖所示,從 “man” 到 “woman” 的向量與從 “king” 到 “queen” 的向量在向量空間中是平行的。這表 ⌘ Read more

⤋ Read More

9 張圖帶你理解 Kafka 中高水位 HW
大家好,我是君哥。Kafka 高水位(簡稱 HW)是 Kafka 中非常重要的一個概念,今天來聊一聊 HW。1 HW 簡介——-HW 是 Kafka 中 Offset 的一個值,HW 作爲一個邊界,Offset 小於 HW 的消息被稱爲已提交消息,這部分消息可以被消費者進行拉取消費,大於等於 HW 的消息被稱爲未提交消息,不能被消費者拉取。如下圖:Offset 小於 108 的消息可以被消 ⌘ Read more

⤋ Read More

Netflix 如何用緩存來提高用戶體驗
Netflix 的目標是讓用戶儘可能長時間地觀看流媒體。但用戶的注意力通常只有 90 秒。Netflix 使用 EVCache(分佈式鍵值存儲)來減少延遲,以免用戶失去興趣。EVCache 在 Netflix 有多種使用情況。01 側緩存 (Lookaside Cache)————————當應用程序需要某些數據時,它會首先嚐試使用 EVCache 客戶端,如果緩存中 ⌘ Read more

⤋ Read More

AI Agent:基於大模型的自主智能體
AI Agent:探索 AGI 的真實形態什麼是 AI AgentAI Agent(人工智能代理)是一種能夠感知環境、進行決策和執行動作的智能實體。不同於傳統 的人工智能,AI Agent 具備通過獨立思考、調用工具去逐步完成給定目標的能力。比如,告訴 AI Agent 幫忙下單一份外賣,它就可以直接調用 APP 選擇外賣,再調用支付程序下單支付,無需人 類去指定每一步的操作。Agent 的概念由 ⌘ Read more

⤋ Read More

代碼精讀 LevelDB 布隆濾波器
簡介–布隆濾波器 BloomFilter 是一種常用的「使用少量字節數判斷鍵值存在性」的手段。其大致原理爲:使用多個哈希函數,對同一個鍵值做哈希運行,並將其哈希值取模設置比特數值。當給定一個鍵值時,如果計算上述多個哈希函數,存在一個哈希值對應的比特位爲零,則說明該鍵值不存在。從上可以發現,BloomFilter 常用於判斷鍵的不存在性。由於哈希碰撞的原因,可能存在假陽性 (False Posit ⌘ Read more

⤋ Read More

圖解支付賬務系統核心設計(進階版)
在前一篇的《圖解支付賬務系統入門》中,講解了賬務相關的一些基礎概念和關鍵模塊的設計要點。今天繼續深入講解支付賬務系統的設計,部分內容和入門篇有重複。進入正題前,先講個小故事。在入門篇中有說到,老闆把賬務系統也劃到我這裏管理,我只得被迫學習賬務知識。某日的下午,窗外驕陽如烈火,我端着一杯咖啡正襟危坐,正式開始學習賬務相關知識。首先映入眼簾的是賬戶、科目、會計分錄,翻了幾遍,還是雲裏霧裏,於是去找做賬 ⌘ Read more

⤋ Read More

Cookie 機制完全解析
cookie 的背景———- HTTP 協議是無狀態的 一個用戶第二次請求和一個新用戶第一次請求 服務端是識別不出來的,cookie 是爲了讓服務端記住客戶端而被設計的。cookie 是一種存儲方式————–Cookie 是存儲在用戶 web 瀏覽器中的小塊數據一般不超過 4k,它一般用於存儲用戶身份信息。 Cookie 是由服務端設置在瀏覽器上的 Cookie ⌘ Read more

⤋ Read More

徹底理解字符串匹配 KMP 算法
大家好,我是小風哥,今天簡單聊聊字符串匹配 kmp 算法。字符串匹配是計算機科學中非常基礎的操作,給定兩個字符串 a 和 b,我們需要判斷字符串 a 是否包含字符串 b。像你我這樣的普通程序員能想到的最簡單方法是這樣的,用字符串 b 不斷去匹配每個主串中的子串。 假設給定這樣兩個字符串:首先從主串的第一個位置和子串的第一個位置去匹配,我們發現 A 和 B 不相同:因此主串指針後移一位,子串重新從 ⌘ Read more

⤋ Read More

特效炸裂:Vue3+TypeScript 實現王者榮耀圖鑑,已開源!!!
主要技術棧—–Vue3.4 Typescript Vite4 Pinia Vue-Router Less 主要插件—-Axios 網絡請求庫 mitt 事件總線 dayjs 時間處理工具 vue-i18n 國際化 lodash 實用工具庫 js-base64 Base64 加密解密工具 localforage Ind ⌘ Read more

⤋ Read More

ARP 工作層次和原理解析
概述-- ARP(Address Resolution Protocol,地址解析協議)是用來將 IP 地址解析爲 MAC 地址的協議。主機 (客戶端) 和三層網絡設備 (例如路由器,三層交換機) 上會維護一張 ARP 表,用於存儲 IP 地址和 MAC 地址的映射關係,每一個表項表示一個 IP 地址到 MAC 地址的轉換關係。工作層次第一種看法ARP 屬於二層協議,工作在數據鏈路層,因爲 AR ⌘ Read more

⤋ Read More

冪等性:構建穩健分佈式系統的關鍵
爲什麼冪等性是關鍵?在現代分佈式系統中,可用性是關鍵因素,這意味着你需要構建重試機制和處理失敗及恢復的方法。這也意味着你可能會在系統中重複處理相同的操作,但如果你的應用程序不瞭解這一點,並將其視爲一個全新的請求,它將產生不可預期的結果。如果是處理支付或管理電子商務訂單的應用程序,這會導致巨大的財務損失和不可挽回的損害。 那麼,我們該怎麼做才能保證多次執行操作的結果與僅執行一次的結果相同呢? 讓 ⌘ Read more

⤋ Read More

【內存管理】內存佈局介紹
ARM32 位系統的內存佈局圖—————32 位操作系統的內存佈局很經典,很多書籍都是以 32 位系統爲例子去講解的。32 位的系統可訪問的地址空間爲 4GB,用戶空間爲 1GB ~ 3GB,內核空間爲 3GB ~ 4GB。爲什麼要劃分爲用戶空間和內核空間呢?一般處理器會把運行模式分爲好幾個,比如 x86 分爲 rang0 ~ rang3 級別。ARMv7 架構中,又分爲好幾個 ⌘ Read more

⤋ Read More

Go 語言的 CI-CD 實踐
CI/CD 是現代軟件開發流程中的關鍵實踐,它代表着持續集成(Continuous Integration)和持續部署(Continuous Deployment)或持續交付(Continuous Delivery)的組合。這些實踐旨在幫助軟件開發團隊更快、更頻繁地交付高質量的軟件產品。持續集成(CI): 持續集成是一種軟件開發實踐,開發團隊成員經常將他們的代碼變更集成到共享的代碼倉庫中。這通常每 ⌘ Read more

⤋ Read More

aconfig:Go 語言中簡潔高效的配置加載庫
在軟件開發過程中,合理處理配置項對於確保代碼的靈活性和可維護性至關重要。對於 Go 語言開發者們來說,aconfig庫提供了一個簡潔明瞭的解決方案來加載配置。本文將深入探討aconfig庫的特性和使用方法,向您展示如何高效地在 Go 項目中使用這個強大的配置加載工具。aconfig 的理念與特點————–aconfig是由開源社區提供的一個配置加載庫,它的設計理念基於實現配置加載 ⌘ Read more

⤋ Read More

使用 Go 提供的 Cookie 庫簡化 Cookie 操作
在 Web 開發中,Cookie 是一種非常常見的數據存儲形式。它可以幫助我們在客戶端和服務器之間保存一些狀態,如用戶的登錄狀態、偏好設置等。在 Go 語言中,操作 Cookie 有很多種方式,今天我們重點介紹一個名爲 cookie 的庫——這是一個可以使用結構體操作 Cookie 的庫。文章將詳細介紹 cookie 庫的使用方法、實際場景中的應用以及提供豐富的示例代碼。希望通過這篇文章,你能夠更 ⌘ Read more

⤋ Read More

沒有思考過 Embedding,不足以談 AI
在當今的人工智能(AI)領域,Embedding 是一個不可或缺的概念。如果你沒有深入理解過 Embedding,那麼就無法真正掌握 AI 的精髓。接下來,我們將深入探討 Embedding 的基本概念。Embedding 的基本概念 1.1 什麼是 Embedding Embedding 是一種將高維數據映射到低維空間的技術。簡單來說,它就是把複雜的、難以處理的數據轉換成便於計算的形式。 ⌘ Read more

⤋ Read More

白話 “多態”:探索 Rust 的多態理念
多態(Polymorphism),英文單詞來源自希臘語,”poly” 意爲 “多”,”morph” 意爲 “形態”,也就是 “多形態” 的意思,翻譯爲 “多態” 也比較貼切。遙想當年初學 Java 時,那時的我對 Polymorphism 還是相當困惑,爲何是多種形態?到底是什麼意思,因爲中文語境裏面並不存在 “多態” 這個詞。我打算以我的理解方式,白話一下 “多態” 一詞。函數(方法)尋址— ⌘ Read more

⤋ Read More

go-cache: 採用 Cache-Aside 模式的多層 Go 緩存
在現代的應用程序開發中,緩存是提高性能和擴展性的關鍵技術之一。在 Go 語言的生態系統中,有許多優秀的緩存庫,其中之一便是go-cache。本文將詳細介紹go-cache庫及其使用方法,旨在幫助開發者更好地利用緩存提高應用程序的性能。什麼是 go-cache?————-go-cache是一個靈活的多層緩存庫,設計用於處理內存緩存和共享緩存。它採用了 Cache-Aside(旁路緩存 ⌘ Read more

⤋ Read More

如何架構優秀的 Go 後端 REST API 服務
REST(Representational State Transfer)是 Web 服務中廣泛使用的一種架構風格,其核心思想是使用 HTTP 協議出色地創建、讀取、更新和刪除(CRUD)資源。作爲一種靜態類型、編譯型語言,Go 在構建高效、可靠的 Web 服務時具有顯著優勢。使用 Go 語言構建 REST API 服務需要我們從多個方面入手,包括項目結構、框架選擇、數據庫操作、路由設計等。以下將 ⌘ Read more

⤋ Read More

Go 使用 interface 時的 7 個常見錯誤
寫在正文之前閱讀本文之前我們來先熟悉以下的代碼原則,如果你已經很熟悉這些內容,可以直接跳到正文。接口隔離原則:絕不能強迫客戶實現其不使用的接口,也不能強迫客戶依賴其不使用的方法。 多態性:代碼變化會根據接收到的具體數據改變其行爲。 里氏替換原則:如果你的代碼依賴於一個抽象概念,那麼一個實現可以被另一個實現所替代,而無需更改你的代碼。 抽象的目的不是爲了含糊不清,而是爲了創造一 ⌘ Read more

⤋ Read More

Vue 入門指南:從基礎到實踐
Vue.js 是一個流行的 JavaScript 框架,用於構建用戶界面和單頁應用程序。它以簡潔、易用和高效而著稱,使得開發者能夠快速上手並開發出功能豐富的 Web 應用。本文將帶你走進 Vue 的世界,從基礎知識到實踐應用,一步步引導你掌握 Vue 的核心概念和開發技巧。一、Vue 簡介Vue.js(通常簡稱爲 Vue)是一個用於構建用戶界面的漸進式 JavaScript 框架。與其他重量級框架 ⌘ Read more

⤋ Read More

基於內網高可用 VIP 實現生產、容災環境切換
開篇之前,老周覺得有必要先鋪墊一下,我們先來說一說 VIP (Virtual IP) 相關的技術。一、虛擬 IP 概述———-1.1 VIP 是什麼 虛擬 IP(Virtual IP Address,簡稱 VIP)是一個未分配給真實彈性雲服務器網卡的 IP 地址。彈性雲服務器除了擁有私有 IP 地址外,還可以擁有虛擬 IP 地址,用戶可以通過其中任意一個 IP(私有 IP / 虛擬 ⌘ Read more

⤋ Read More

rust 基於 kvm 實現虛擬機
之前寫過用 rust 實現一個虛擬機的文章 (收藏,用 rust 實現一個迷你虛擬機,模擬 CPU 執行指令),該虛擬機是基於代碼解釋執行的,效率較低。評論區大神告知目前主流的實現方案是基於 kvm(Kernel-based Virtual Machine) 的,直接由系統調度,性能強悍,並且在 github 上開源了一個 kvmsample 例程。https://github.com/BillXRead more

⤋ Read More

微服務粒度難題:找到合適的微服務大小
序言在微服務架構風格中,微服務通常設計遵循 SRP(單一職責原則),作爲一個獨立部署的軟件單元,專注於做一件事,並且做到極致。作爲開發人員,我們常常傾向於在沒有考慮爲什麼的情況下儘可能地將服務做得小。這種關於什麼是和不是什麼是單一職責的主觀性是我們開發人員在服務粒度方面容易犯錯誤的地方。爲了克服開發團隊在微服務尺寸上面臨的這種困境,理解粒度驅動因素至關重要。粒度在微服務中,我們有兩個概念——模塊化 ⌘ Read more

⤋ Read More

qsv:Rust 實現一個處理 CSV 文件的簡單,快速和可組合的命令行工具
隨着數據科學和數據分析的發展,CSV(Comma-Separated Values)文件依然是數據存儲和交換中最常見的格式之一。然而,對 CSV 文件進行有效、快速的操作和分析一直是一個挑戰。本文將詳細介紹一個名爲qsv的工具,它可以幫助我們高效地處理和分析 CSV 文件。什麼是 qsv?——–qsv是一個基於 Rust 編程語言開發的命令行工具,用於對 CSV 文件進行切片、切丁和分析 ⌘ Read more

⤋ Read More

elasticSearch 是什麼?工作原理是怎麼樣的?
現在有三段文本,id 分別是 0、1、2,你需要快速找到哪段文本里含有關鍵詞 “xiaobai”.I like xiaobai        (點贊)I follow xiaobai      (關注)I forward the video   (轉發)我們很容易想到,可以依次遍歷這三段文本,匹配文本內是否含有 “xiaobai”,最終將符合條件的文本 ID 輸出。 在數據量小的時候,問題不大, ⌘ Read more

⤋ Read More

精!萬字 18 圖詳解 OSPF 路由協議
圖片上帝視角 OSPF 出現背景圖片 如上圖就是一張簡單的 OSPF 協議網絡,那麼爲什麼會出現 OSPF 協議呢?開放式最短路徑優先 OSPF(Open Shortest Path First)協議是 IETF 定義的一種基於鏈路狀態的內部網關路由協議。爲什麼會出現 OSPF?: 因爲 RIP 是一種基於距離矢量算法的路由協議,存在着收斂慢; 易產生路由環路; 可擴展性差,最大隻 ⌘ Read more

⤋ Read More

WebSocket 協議 - 源碼分析
本文是 WebSocket 系列文章的第 3 篇,從源碼角度理解 WebSocket 是如何實現的。分析的是 gorilla websocket,即 WebSocket 協議 - 實戰中服務端使用的 WebSocket 庫。 Gorilla WebSocket 是一個由 Go 語言實現的,經過很好測試並且廣泛使用的 WebSocket 庫,它提供了簡單易用、功能強大的 API 接口。目前在 gi ⌘ Read more

⤋ Read More

【Rust 小技巧】 指定 target 輸出目錄
在 Rust 編程語言中,target 目錄是由 Cargo(Rust 的包管理和構建工具)自動生成的。它主要用於存放構建輸出的產物文件和相關的編譯期產生的中間文件等。但是 target 目錄往往會非常大,即使一個簡單的 hello world 程序,就已經達到 9 MB 了。可能一個比較簡單的項目,會達到 1 GB 多。甚至有些網友調侃——如果電腦硬盤太小,可能學不了 Rust。0x01 指定 ⌘ Read more

⤋ Read More