Yarn.social Online Meetup 25th May (See: #fcghsma for details)

yue-fang-readfog 

feeds.twtxt.net

No description provided.

Recent twts from yue-fang-readfog

再談 Redis 三種集羣模式:主從模式、哨兵模式和 Cluster 模式
總結經驗 redis 主從:可實現高併發 (讀),典型部署方案:一主二從 redis 哨兵:可實現高可用,典型部署方案:一主二從三哨兵 redis 集羣:可同時支持高併發 (讀與寫)、高可用,典型部署方案:三主三從一、概述Redis 支持三種不同的集羣模式:主從模式、哨兵模式和 Cluster 模式,各具特色,應對不同的應用場景。初始階段,Redis 採用主從模式進行集羣構建。在此模式中,主 ⌘ Read more

⤋ Read More

Go 語言實現輕量級全文檢索引擎
黎明破曉,我在陽光的照射下觀察到一個光鮮亮麗的開源項目——ZincSearch。這並不是一個大型的項目,但是其優雅而堅韌的特質讓我深深着迷。鑄就在 Go 語言的火爐中,ZincSearch 提供了一個輕量級但功能強大的全文索引搜索引擎,這讓我對其深感興趣。ZincSearch 誕生背景—————在講述 ZincSearch 之前,首先需要了解它的誕生背景。隨着互聯網技術的迅速發 ⌘ Read more

⤋ Read More

如何編寫異步運行時通用庫?
如果你正在用 Rust 編寫異步應用程序,在某些情況下,你可能希望將代碼分成幾個子 crate。這樣做的好處是:更好的封裝,在子系統之間有一個 crate 邊界,可以產生更清晰的代碼和定義更良好的 API。不再需要這樣寫:pub(crate)。 更快的編譯,通過將一個大 crate 分解成幾個獨立的小 crate,它們可以併發地編譯。 使用一個異步運行時,編寫異步運行時通用庫的好處是什 ⌘ Read more

⤋ Read More

Rust 設計模式:使用 Trait 關聯函數和單元結構體實現算法多態
最近在用 Rust 編寫在一個 NLP 的模塊,需要表達一個算法的多種不同實現,只用單元結構體和 Trait 的關聯函數的抽象方式,可以非常優雅的組織代碼,現在記錄如下。單元結構體是一個沒有字段的結構體,這種結構體被稱作 “單元結構體”(Unit Struct)。單元結構體類似於沒有任何成員的元組(即 (),或說 “unit” 類型),通常用於在類型層面提供一個獨特的標識。struct MyUni ⌘ Read more

⤋ Read More

Go 語言實現開源優雅的跨平臺 USDT 收付中間件
Epusdt(全稱:Easy Payment Usdt)是一個由 Go 語言編寫的私有化部署 Usdt 支付中間件 (Trc20 網絡)。站長或開發者可以通過 Epusdt 提供的 http api 集成至任何系統,無需過多的配置,僅僅依賴 mysql 和 redis。通過它,可以實現 USDT 的在線支付和消息回調,均可在優雅和瞬間完成。私有化搭建使得無需額外的手續費和簽約費用,Usdt 代幣直 ⌘ Read more

⤋ Read More

徹底理解高級 I-O:零拷貝
大家好,我是小風哥,今天和大家簡單聊聊零拷貝。計算機處理的任務大體可以分爲兩類:CPU 密集型與 IO 密集型。當前流行的互聯網應用更多的屬於 IO 密集型,傳統的 IO 標準接口都是基於數據拷貝的,這篇文章我們主要關注該怎樣從數據拷貝的角度來優化 IO 性能。爲什麼 IO 接口要基於數據拷貝?爲了讓廣大碼農們更好的沉迷於自己的一畝三分地,防止 ta 們分心去關心計算機中的硬件資源分配問題,操作系 ⌘ Read more

⤋ Read More

“真男人就應該用 C 編程”!用 1000 行 C 代碼手搓了一個大模型,Mac 即可運行,特斯拉前 AI 總監爆火科普 LLM
來自公衆號:InfoQ 編譯 | 核子可樂、Tina徒手用 1000 行 C 語言實現,不依賴龐大的外部庫,Mac 即可運行。   如今這年頭,徒手寫神經網絡代碼已經不算事兒了,現在流行手搓大模型訓練代碼了!這不,今天,特斯拉前 AI 總監、OpenAI 創始團隊成員 Andrej Karpathy 僅用 1000 行簡潔的 C 代碼,就完成了 GPT-2 大模型訓練過程。幾個小時前,A ⌘ Read more

⤋ Read More

C 語言手撕一個 HashMap
hashmap 之鏈地址法1、定義哈希表 及 哈希桶 結構體include stdio.hinclude stdlib.hinclude string.h// 定義哈希桶的節點結構體typedef struct Node { char key; int value; struct Node next;} Node;// 定義哈希表結構體typedef struct HashMap ⌘ Read more

⤋ Read More

不得不掌握的性能測試監控神器 -nmon 工具詳解
做性能測試時候進行結果收集和監控是我們必須要進行的一個步驟,所以選擇一個好的監控工具能幫我們省事省心。我們今天給大家介紹的監聽工具 nmon,就是一個非常強大而且市場上也非常主流應用的一個監控工具。前言做性能測試時候進行結果收集和監控是我們必須要進行的一個步驟,所以選擇一個好的監控工具能幫我們省事省心。我們今天給大家介紹的監聽工具 nmon,就是一個非常強大而且市場上也非常主流應用的一個監控工具。 ⌘ Read more

⤋ Read More

Redis 緩存的常用設計模式
Redis 緩存的常用設計模式: 一. 寫操作: 以 Redis 統一視圖爲準:先更新緩存,後更新數據庫。 1) Write Through Pattern 直寫模式:     首先將數據寫入緩存,再將數據立即同步到數據庫。 2) Write Behind Pattern 寫後模式:     首先將數據寫入緩存,再將數據異步的批量同步到數據庫 ⌘ Read more

⤋ Read More

基於 Redis 實現內部消息服務通信
前言先說一下爲什麼要有這個東西,用消息中間件的好處就不用說了,日常開發中還是有很多場景需要用到消息傳遞的,消息的topic如何管理,如何約束topic,重要的topic消費記錄、歷史消息等就是這個sdk需要做的。本質上只是一層對消息中間件的封裝。這次只是拋磚引玉只引入redis的三種消息類型,pubsub、queue以及stream。擴展其他中間件按着代碼思路一樣。望各路大佬賜教架構設計一個消息服 ⌘ Read more

⤋ Read More

一文掌握線程池實現原理
線程池簡介—–Java 在使用線程執行程序時,需要調用操作系統內核的 API 創建一個內核線程,操作系統要爲線程分配一系列的資源;當該 Java 線程被終止時,對應的內核線程也會被回收。因此,頻繁的創建和銷燬線程需要消耗大量資源。此外,由於 CPU 核數有限,大量的線程上下文切換會增加系統的性能開銷,無限制地創建線程還可能導致內存溢出。爲此,Java 在 JDK1.5 版本中引入了線程池。線 ⌘ Read more

⤋ Read More

利用 Go 操控 Etcd:構建強一致性系統的祕訣
etcd 是一個開源的、高可用的分佈式鍵值(key-value)存儲系統,它主要用來共享配置和服務發現。etcd 由 CoreOS 團隊開發,是以 Go 語言編寫的。etcd 採用了 Raft 協議來處理日誌複製以提供強一致性和高可用性,它成爲很多分佈式系統和雲原生技術(如 Kubernetes)中的基礎組件。etcd 的核心特性包括:簡潔的鍵值存儲:etcd 提供 HTTP/JSON API,允 ⌘ Read more

⤋ Read More

微服務最全詳解 -萬字圖文總結-
大家好,我是 mikechen。微服務是大型網站的必經之路,也是進階架構的必備節能,而且大廠也特別喜歡考察微服務,下面我就全面來詳解微服務 @mikechen 最新 mikechen 原創超 30 萬字《阿里架構師進階專題合集》和《最全大廠 Java 面試題答案合集》,請關注本公衆號【mikechen 的架構筆記】,後臺回覆:資料,即可領取。微服務——-微服務是一種架構模式,它提倡將單一 ⌘ Read more

⤋ Read More

高併發最全詳解 -圖文全面總結-
大家好,我是 mikechen。高併發在大型架構佔據非常重要的位置,所以掌握好高併發就很重要了,無論是想拿高薪或進大廠,本篇我就全面來詳解高併發 @mikechen最新 mikechen 原創超 30 萬字《阿里架構師進階專題合集》和《最全大廠面試題及答案總結》,請關注本公衆號【mikechen 的架構筆記】,後臺回覆:資料,即可領取。高併發高併發是指系統在同一時間內處理大量併發請求的能力,比如: ⌘ Read more

⤋ Read More

不可思議的快!加速 Docker 中構建 Golang 應用
這些天我在工作中正在進行一個 GoLang 項目。這與我們通常使用的 Java 和 Spring Boot 應用程序有很大不同, 感覺很不錯:)。和我們所有的其他組件一樣, 這個 GoLang 項目也需要被封裝在一個容器中, 才能在 Kubernetes 集羣中執行。所以我編寫了一個 Dockerfile:構建階段FROM golang:1.22.1-alpine AS buildWORKDIR ⌘ Read more

⤋ Read More

高效併發編程利器:掌握無鎖編程的精髓
無鎖編程是一種併發編程的技術,旨在避免使用傳統的鎖機制來保護共享數據。相比有鎖編程,無鎖編程可以提供更高的併發性能和可伸縮性。在無鎖編程中,線程或進程通過使用原子操作、CAS(Compare-and-Swap)等技術來實現對共享數據的訪問和修改,而不需要依賴互斥鎖。無鎖編程常用於高併發場景,如網絡服務器、多線程應用程序等。它可以減少線程之間的競爭和阻塞,並且能夠充分利用多核處理器的計算能力。然而, ⌘ Read more

⤋ Read More

使用 Makefile 輕鬆管理 Go 項目:提高開發效率的利器
一、介紹1、make 介紹make是一個構建自動化工具,會在當前目錄下尋找Makefile或makefile文件 如果存在相應的文件,它就會依據其中定義好的規則完成構建任務 2、Makefile 介紹 藉助Makefile我們在編譯過程中不再需要每次手動輸入編譯的命令和編譯的參數,可以極大簡化項目編譯過程。 我們可以把Makefile簡單理解爲它定義了一個項目文件的編譯規則。 ⌘ Read more

⤋ Read More

如何整合多個設計系統
譯者序:設計系統的目標是爲組織帶來規模化的效率和一致性。然而,隨着時間的推移和團隊的增長,單個組織內往往會出現多個並行的設計系統。合併多個系統是一個複雜的過程,需要仔細規劃和執行。本文作者 Evgeny Khoroshilov 探討了幾種整合多個設計系統的選擇,包括繼續保持現狀、共享子系統、全新構建統一系統或保留一個主導系統等。每種方式都有其優缺點,適合不同的組織情況。探索整合多個設計系統的選項。 ⌘ Read more

⤋ Read More

聊聊 Flink:Flink 的狀態管理
一、Flink 的狀態是什麼?—————我們知道,Flink 的一個算子可能會有多個子任務,每個子任務可能分佈在不同的實例(即 slot)上,我們可以把 Flink 的狀態理解爲某個算子的子任務在其當前實例上的一個變量,該變量記錄了流過當前實例算子的歷史記錄產生的結果。當新數據記錄流入時,我們需要結合該結果(即狀態,State)來進行計算。實際上,Flink 的狀態是由算子的子 ⌘ Read more

⤋ Read More

Google 孵化了 3 個 Go 安全庫,推薦使用!
大家好,我是煎魚。Google 作爲一家用戶體量很大的企業,有非常多的產品,經常會被黑客攻擊或被拿來練手。因此其設計的產品、編程語言、工具庫等都會要求考慮安全性相關的內容。例如:各種供應鏈攻擊、CWE 等安全的查缺補漏等。我們作爲用戶(使用者),可以 “白嫖” 這些功能實現。直接複用在自家的業務上就可以了。這樣每年在護網上都能省不少勁。三個 Go 安全庫———本次 Google 輸出了 ⌘ Read more

⤋ Read More

Golang 高效的切片拼接和 Go1-22 中新的拼接方法
在 Go 中,切片拼接是一種常見操作,但如果處理不當,可能會導致性能問題或意外的副作用。本文將詳細介紹幾種切片拼接的高效方法,討論它們的優缺點以及適當的使用場景。 基本的方法和其限制使用 append 函數最直接的方法是使用 append 函數,它將一個切片的元素添加到另一個切片的末尾。slice1 := []int{1, 2}slice2 := []int{3, 4}result := app ⌘ Read more

⤋ Read More

[langchaingo] 基於 Hugging Face 構建大模型應用
今天,我們將開始 Golang + LLM 系列的教程,本文將介紹如何在 Hugging Face 上使用 LangchainGo 來實現你的第一個大模型應用!Hugging Face 是什麼?Hugging Face 是一個火爆的人工智能開發社區和平臺,專注於自然語言處理(NLP)領域。該平臺提供了各種各樣的工具和資源,包括預訓練模型、模型庫、數據集、評估指標以及用於開發和部署 NLP 模型的庫 ⌘ Read more

⤋ Read More

Go 語言將 PDF 轉爲 Word ,代碼怎麼實現?
將 PDF 轉換爲 Word 這是一個很常見的功能了,用 Go 語言實現,可以通過以下步驟完成:1 安裝 PDF 轉換工具庫:首先需要使用 Go 語言中的 PDF 轉換庫,比如 pdftoword 或 pdfcpu。你可以使用 Go 的包管理工具(如 go get)來安裝這些庫。2 導入依賴庫:在 Go 項目中導入你選擇的 PDF 轉換庫,並確保正確地導入了所有需要的依賴項。3 加載 PDF 文件 ⌘ Read more

⤋ Read More