Xây dựng hỗn hợp Rust/C/C++ - Tích hợp Cargo với CMake để biên dịch thư viện động

CMake là một công cụ biên dịch đa ngữ mạnh mẽ, với các module tích hợp sẵn cung cấp khả năng mở rộng đáng kể. Công cụ xây dựng chính thức của Rust là Cargo, cung cấp nhiều tính năng như tải xuống, tải lên và biên dịch các gói phụ thuộc, giúp quá trình phát triển dự án Rust trở nên thuận tiện hơn. Hiện nay, hầu hết các dự án C++ sử dụng CMake ...

Đăng vào ngày 30 tháng 6 lúc 13:40

Iggy: Tính năng loại bỏ và giữ lại tin nhắn để xây dựng hệ thống xử lý dữ liệu đáng tin cậy

Iggy là nền tảng truyền thông tin liên tục hiệu suất cao được viết bằng Rust, hỗ trợ các giao thức truyền tải QUIC, TCP và HTTP, có khả năng xử lý hàng triệu tin nhắn mỗi giây. Trong các trường hợp xử lý dữ liệu thời gian thực và luồng, việc loại bỏ tin nhắn trùng lặp và chiến lược giữ lại tin nhắn là những kỹ thuật quan trọng đảm bảo tính tin ...

Đăng vào ngày 29 tháng 6 lúc 15:14

Công cụ đồng bộ clipboard đa nền tảng: Hướng dẫn triển khai từ đầu

Trong môi trường làm việc hiện đại, người dùng thường sử dụng đồng thời nhiều thiết bị — điện thoại thông minh, máy tính để bàn, máy tính xách tay và máy tính bảng. Việc sao chép một đoạn văn bản trên thiết bị này rồi dán sang thiết bị khác vẫn là thao tác thủ công và dễ thất bại nếu thiếu cơ chế đồng bộ. Giải pháp hiệu quả nằm ở một hệ thống c ...

Đăng vào ngày 26 tháng 6 lúc 10:23

Cập nhật Rust phiên bản 1.31

Phiên bản ổn định 1.31.0 Rust 1.31 có thể là một trong những phiên bản thú vị nhất! Sử dụng Cargo để tạo một dự án mới: cargo new bar File Cargo.toml sẽ có nội dung: [package] name = "bar" version = "0.1.0" authors = ["Tên tác giả"] edition = "2018" [dependencies] Khóa edition đã được thêm vào ph ...

Đăng vào ngày 26 tháng 6 lúc 10:02

Tối ưu hóa đồng thời trong Rust với parking_lot: 20 chiến lược hiệu quả và an toàn

parking_lot là một thư viện nguyên thủy đồng bộ được thiết kế đặc biệt cho Rust, nổi bật nhờ kích thước nhỏ gọn, hiệu năng cao và khả năng kiểm soát chi tiết hơn so với các tương đương trong std::sync. Dưới đây là 20 chiến lược thực tiễn — được tái cấu trúc về mặt logic, ví dụ và cách trình bày — nhằm khai thác tối đa tiềm năng của thư viện này ...

Đăng vào ngày 26 tháng 6 lúc 05:47

Tải xuống tệp bằng luồng dữ liệu trong ứng dụng web

Để xử lý tải xuống tệp một cách linh hoạt — vừa hỗ trợ lưu trực tiếp vào thiết bị người dùng, vừa cho phép hiển thị nội dung (như ảnh, PDF) trong trình duyệt — cần phối hợp đồng bộ giữa frontend và backend theo cơ chế luồng (streaming). 1. Xử lý phía client 1.1 Tải xuống tự động qua tab mới Khi mục tiêu là kích hoạt hành vi lưu tệp ngay lập t ...

Đăng vào ngày 25 tháng 6 lúc 04:40

Thiết lập kết nối WSS với chứng chỉ tự ký trong Rust và Angular

Trong dự án này, chúng ta sẽ sử dụng giao thức WSS để thiết lập kết nối giữa frontend và backend mà không cần đến các chứng chỉ được xác thực. Thay vào đó, chúng ta sẽ tạo khóa riêng tư và chứng chỉ tự ký bằng OpenSSL: Chúng tôi sẽ không đề cập chi tiết về quá trình kết nối WSS mà đi thẳng vào việc thực hiện. 1. Tạo khóa riêng tư và chứng chỉ: ...

Đăng vào ngày 22 tháng 6 lúc 18:51

Hướng dẫn cấu hình Quickwit - Công cụ tìm kiếm phân tán viết bằng Rust

Cấu hình Node (Node Configuration) Cấu hình node cho phép tùy chỉnh và tối ưu hóa cài đặt cho từng node trong cluster. Nó được chia thành các phần sau: Cấu hình chung (Common configuration): Thuộc tính cấp cao được chia sẻ Cấu hình Storage: Được định nghĩa trong phần storage Cấu hình Metastore: Được định nghĩa trong phần metastore Cấu hình Ing ...

Đăng vào ngày 22 tháng 6 lúc 05:35

Tích hợp bộ nhớ tạm trong ứng dụng GUI Rust với Iced: Hướng dẫn thực hành đa nền tảng

Iced là một thư viện giao diện người dùng (GUI) mã nguồn mở viết bằng Rust, lấy cảm hứng từ kiến trúc Elm. Nó cung cấp cơ chế truy cập bộ nhớ tạm (clipboard) đồng nhất trên nhiều hệ điều hành — bao gồm Windows, Linux, macOS và môi trường Web — giúp các ứng dụng dễ dàng chia sẻ dữ liệu giữa các tiến trình hoặc ứng dụng khác. 1. Kiến trúc mô-đun ...

Đăng vào ngày 22 tháng 6 lúc 03:00

Tìm hiểu về ngôn ngữ Rust

Biến và Tính không đổi (Variables and Mutability) - Có ba kiểu khai báo biến: hằng số thời gian chạy (immutable variable), biến, và hằng số thời gian biên dịch (constant). - Biến có thể được liên kết lại, biến được khai báo sau sẽ thay thế biến cùng tên trước đó và cho phép thay đổi kiểu dữ liệu. // Hằng số thời gian chạy (immutable variabl ...

Đăng vào ngày 19 tháng 6 lúc 04:30