@rust

動態 列表
@greptime

單集羣 100 節點!資源佔用遠小於 Grafana Mimir——GreptimeDB 海量數據寫入性能報告

GreptimeDB 在行業標準測試 Prometheus-Benchmark 當中以 100 個 8c16g 規格節點的集羣,在 datanode 峯值水位為 CPU 38%、內存 40% 的負載下,承接了每秒約 4000 萬點的寫入流量。總體活躍時間線 6.1 億條,每十分鐘更新 615 萬條時間線,在測試的 1.5 小時內均能穩定寫入。 測試結果説明 GreptimeDB 的架構設計能夠支

greptime 頭像

@greptime

昵稱 Greptime

@vivo_tech

FunProxy - 使用 Rust 構建跨平台全鏈路測試抓包代理工具

作者:vivo 互聯網大前端團隊- Song Jiachao 在軟件開發過程中,軟件測試對於保障軟件質量和用户滿意度起着關鍵作用。為最大程度上提升軟件品質,我們積極開展全鏈路測試實踐,打造了用Rust語言開發的自研一站式抓包代理工具FunProxy,基於其跨平台、高性能、易於擴展、安全性高等特性,讓全鏈路抓包和環境代理如絲綢般絲滑。 一、背景介紹 1.1 什麼是全鏈路測試 全鏈路測試就是"

vivo_tech 頭像

@vivo_tech

昵稱 vivo互聯網技術

@niandb

The Rust Programming Language 學習 (三)

所有權 所有權(系統)是 Rust 最為與眾不同的特性,它讓 Rust 無需垃圾回收器(garbage collector)即可保證內存安全。因此,理解 Rust 中所有權的運作方式非常重要。 這裏是非常重非常重的一個知識點,這裏一定要打好基礎. 因為所有權對很多開發者來説都是一個新概念,需要一些時間來適應。好消息是隨着你對 Rust 和所有權系統的規則越來越有經驗,你就越能自然地編寫出安全和高效

niandb 頭像

@niandb

昵稱 粘豆包

@niandb

The Rust Programming Language 學習 (四)

結構體 struct,或者 structure,是一個自定義數據類型,允許你命名和包裝多個相關的值,從而形成一個有意義的組合。如果你熟悉一門面向對象語言,struct 就像對象中的數據屬性。 定義並實例化結構體 和元組一樣,結構體的每一部分可以是不同類型。但不同於元組,結構體需要命名各部分數據以便能清楚的表明其值的意義。由於有了這些名字,結構體比元組更靈活:不需要依賴順序來指定或訪問實例中的值。

niandb 頭像

@niandb

昵稱 粘豆包

@guishangguandao

Haskell 心法 (1):初識 - 為何學、學什麼和怎麼學

Haskell 是一門風格極其獨特的語言。網絡上我們往往能夠看到各式各樣對其函數式特性的評價,我相信不少人對其的印象就是一門“函數式純度高、學術風格濃厚、學習曲線陡峭”的語言。 最近機緣巧合下我嘗試了一下這個語言。從我個人的感覺而言,這門語言其實並沒有想象中那麼難,很多特性的引入不僅在我看來很自然,對於代碼抽象程度和表達能力的提升也是肉眼可見的。 這篇文章我將以一個有其他函數式語言經驗的 Hask

guishangguandao 頭像

@guishangguandao

昵稱 硅上觀道

@meiduyandechengzi

Rust交叉編譯自動化實戰

🦀 告別手動編譯地獄!用GitLab Runner讓Rust程序跨平台自動構建 還在為不同平台手動編譯Rust程序而煩惱?還在為環境配置不一致而抓狂?今天帶你解鎖Rust交叉編譯的自動化大法,讓你的CI/CD流水線飛起來! 🎯 痛點在哪裏? 作為一個Rust開發者,你是否遇到過這些讓人頭疼的問題: 平台差異:在Mac上開發,部署到Linux服務器,每次都要手動交叉編譯 環境配置:依賴庫版

meiduyandechengzi 頭像

@meiduyandechengzi

昵稱 雲夢量化科技

@rustfs

GitLab CI/CD 作業緩存如何使用 RustFS?

GitLab CI/CD 作業緩存(cache)是加速 CI/CD 流水線(Pipeline)執行的重要手段,緩存可以配置使用遠端對象存儲。本文分享如何將新一代高性能分佈式存儲系統配置為 GitLab CI/CD 作業的緩存存儲對象。 關於 RustFS RustFS 是國內研發團隊開源的一款兼容 S3 的分佈式存儲系統,用 Rust 編寫,經過實測,性能優於 MinIO,能夠平替 MinIO。R

rustfs 頭像

@rustfs

昵稱 RustFS

@rustfs

GitLab X RustFS,CI/CD 作業的對象存儲配置教程

GitLab CI/CD 作業緩存(cache)是加速 CI/CD 流水線(Pipeline)執行的重要手段,緩存可以配置使用遠端對象存儲。本文分享如何將新一代高性能分佈式存儲系統配置為 GitLab CI/CD 作業的緩存存儲對象。 關於 RustFS RustFS 是國內研發團隊開源的一款兼容 S3 的分佈式存儲系統,用 Rust 編寫,經過實測,性能優於 MinIO,能夠平替 MinIO。R

rustfs 頭像

@rustfs

昵稱 RustFS

@hope_wisdom

30天拿下Rust之函數詳解

概述 在Rust中,函數是程序的基本構建塊,是代碼複用的基本單位,用於封裝一系列執行特定操作和計算的語句。函數是可重用的代碼片段,可以接受輸入參數併產生輸出。通過合理使用函數,可以提高代碼的可讀性、可維護性和可重用性。 函數的定義 在Rust中,函數通過fn關鍵字進行定義,後面跟着函數名、參數列表(如果有的話)、返回類型(如果有的話)和函數體。參數列表中的每個參數都需要明確其類型。函數的返回類型可

hope_wisdom 頭像

@hope_wisdom

昵稱 希望_睿智

@gongzhengyang

rust使用hashmap存儲函數並調用

背景 在rust 1.67.1 (d5a82bbd2 2023-02-07) 版本測試正常 使用rust的hashmap存儲i32為key, 函數作為value, 當查詢某個key如果存在具體的函數則調用 支持異步函數存儲與調用 主要方法 如果類型不同,則需要包一層Box,把存儲的內容放到堆內存上,保證編譯器可以正常計算內存大小,主要是針對存儲在棧上的內存大小 如果是異步方法,由於異步函數沒

gongzhengyang 頭像

@gongzhengyang

昵稱 龔正陽

@cuicui_623c4b541e91e

如何優雅地組織Rust項目中的異步代碼?

概要 很多使用過Async Rust的人都可能有過被其要求的約束所困擾的經歷,例如,spawned task有'static的要求,MutexGuard不能跨越.await,等等。克服這些約束需要仔細地設計代碼結構,很可能會導致晦澀和嵌套的代碼,這對開發人員和審查人員都是一種挑戰。在這篇文章中,我將首先列出我在編寫async Rust代碼時的一些痛點。然後,我將指出我們真正需要異步代碼的場景,並討

cuicui_623c4b541e91e 頭像

@cuicui_623c4b541e91e

昵稱 Datenlord

@cuicui_623c4b541e91e

DatenLord|重新思考Rust Async如何實現高性能IO

作者: 王璞 長期以來,計算機系統IO的速度一直沒能跟上CPU速度的提升,相比而言IO往往成為系統的性能瓶頸,計算任務等待IO存取數據,成為高性能系統的一大性能瓶頸。本文先剖析IO性能瓶頸的根源,然後舉例説明如何解決IO瓶頸,最後簡要介紹我們在高性能IO方面的嘗試。 IO性能瓶頸 當用户程序執行IO操作時,絕大多數情況下是調用操作系統內核提供的系統調用來執行IO操作,最常見的IO系統調用是read

cuicui_623c4b541e91e 頭像

@cuicui_623c4b541e91e

昵稱 Datenlord

@ssbunny

異步 Rust 何故今狀?

原文:Why async Rust? 譯者:兔子不咬人 Rust 中的 async/await 語法發佈之初備受關注和鼓舞!引用當時 Hacker News 的説法: 它將掀起新的序幕。我相信有很多人正等待該特性被 Rust 採用的一刻。我本人也絕對是其中一個。 此外,它保持了所有優點:開源、高質量的工程、開放的設計,大批貢獻者為一個複雜的軟件做出貢獻。真是鼓舞人心! 最近,對它的

ssbunny 頭像

@ssbunny

昵稱 Qiang

@photino

Zino開發框架快速入門

Zino致力於打造基於Rust語言的新一代組裝式應用開發框架,提供一站式跨平台多端解決方案,可用於後端API開發、桌面應用開發等。我們奉行『約定優於配置』的原則,提供開箱即用的功能模塊,極大提升開發效率;並通過應用接口抽象與actix-web、axum、dioxus、ntex等框架集成,打通社區生態。 本文將以zino倉庫下的examples/axum-app為例,詳細講解怎麼使用zino框

photino 頭像

@photino

昵稱 photino

@gongzhengyang

Actor併發系統説明與使用

簡介 Actor模型是一種並行計算模型,提供了一種用於構建併發、分佈式系統的抽象方法 在Actor模型中,計算被表示為獨立的、輕量級的計算單元,稱為Actor,可以發送和接收消息並進行本地計算 作為一種通用的消息傳遞編程模型,被廣泛用於構建大規模可伸縮分佈式系統 核心思想是獨立維護隔離狀態,並基於消息傳遞實現異步通信 Actor模型組成 存儲:每個 Actor 持有一個郵箱(mailbox),

gongzhengyang 頭像

@gongzhengyang

昵稱 龔正陽

@lengxi_16

Rust(IDEA/CLion外部工具)開發環境極速配置手冊:宏變量(參數詳解) +RustRover(jvm參數表)

🚫 大佬和氪金黨建議划走 🎯 動手黨、小白、想白嫖IDE功能的請繼續 💡 想體驗"一個IDE學多種語言"的快感嗎?這篇指南就是你的答案! 🙏 大家好! 最近一直在爆肝更新"四語言同步學"教程,Rust系列一直未來得及更(求輕噴😅)。今天特地為大家帶來一篇純白嫖向的實用指南—— 今天特地為大家帶來一篇實用指南——JetBrains IDE外部工具配置Rust開發環境。 這可能是最不起

lengxi_16 頭像

@lengxi_16

昵稱 ERP老兵_冷溪虎山

@soroqer

Rust 和 Go 在多線程的對比

1. Go 的 Goroutine:輕量且高效 Goroutine 是 Go 中非常核心的併發單元。它是 用户級線程,由 Go 的運行時調度器管理,而不是由操作系統的內核調度。 輕量性: 內存佔用:每個 goroutine 的棧內存只有 2KB 左右,遠小於傳統線程的棧大小(一般為幾 MB)。這使得你可以輕鬆地創建成千上萬的 goroutines,而不會造成明顯的內存壓力。

soroqer 頭像

@soroqer

昵稱 soroqer

@dongdong_chainwiseweb3

區塊鏈行業中Solidity編程語言速成:帶你瞭解以太坊智能合約

引言:Solidity是什麼,它為何如此重要?又能為我們帶來哪些改變呢? 區塊鏈技術的迅猛發展,讓智能合約成為了行業中的熱門話題。而在智能合約的實現過程中,Solidity無疑是最重要的編程語言之一。它不僅在以太坊網絡中佔據了核心地位,還廣泛應用於各類去中心化應用(DApp)中。那麼,Solidity究竟是什麼?它如何與區塊鏈技術結合?它能為開發者帶來哪些便利,又如何推動區塊鏈行業的發展呢?

dongdong_chainwiseweb3 頭像

@dongdong_chainwiseweb3

昵稱 tg_ChainwiseWeb3

@shenchendemaoyi

基於Rust開發git-cryptx與Obsidian實現加密多機同步的寫作方案

「知識管理的盡頭,是安全與效率的平衡」—— 你的每一份筆記都值得被加密保護 痛點直擊:為什麼需要加密同步? Obsidian的好用程度不必多説(個人心目中最佳),然而官方同步服務年費高達 48~96 美元,且對隱私敏感用户而言,將筆記明文存儲在第三方平台存在風險。 使用 Obsidian Git 插件同步方案雖然免費,但安全性存在兩大硬傷: 隱私泄露:配置文件、日記、賬號密碼等敏感內容以

shenchendemaoyi 頭像

@shenchendemaoyi

昵稱 獨立開發愛好者

@ihengshuai

前端主流構建工具

本文首發博客網站,由於圖片和格式解析問題,可前往閲讀原文 隨着前端開發複雜度的提升,構建工具在開發流程中扮演着越來越重要的角色。這些工具可以幫助開發者實現代碼的打包、優化、轉譯、模塊化處理等功能,從而提升開發效率和用户體驗。本文將以當前主流的前端構建工具為核心,介紹它們的特點、適用場景及差異 構建工具 Grunt Grunt 是較早期的任務運行工具,主要通過任務(tasks)系統自動化完成前端開發

ihengshuai 頭像

@ihengshuai

昵稱 大衞talk

@fannaodeshafa

用 Rust 寫 Web,是殺雞用牛刀還是未來趨勢?

最近,聊 Rust 的人越來越多了。以前一提到 Rust,大家想到的都是操作系統、數據庫這種底層系統開發,感覺離我們做業務開發的很遙遠。但現在風向好像變了,國外已經有人開始正兒八經地討論用 Rust 來寫 Web 後端。 像 Actix Web、Axum 這些框架的名字也出現得越來越頻繁,甚至有人斷言 Rust 會成為 Web 開發的下一個風口。 這就讓我有點好奇了。咱們現在寫 Web

fannaodeshafa 頭像

@fannaodeshafa

昵稱 煩惱的沙發