Tóm tắt nhanh
- Discord đang chuyển ứng dụng desktop từ Electron sang Rust, với GPUI phụ trách giao diện.
- Bản thử nghiệm Windows được CTO Discord chia sẻ hiển thị mức dùng khoảng 290 MB RAM; đây là ảnh chụp một trạng thái thử nghiệm, chưa phải số đo đại diện cho mọi cách sử dụng.
- Ứng dụng di động vẫn giữ giao diện native, nhưng sẽ chia sẻ mã ứng dụng với desktop qua Rust.
- Discord chưa công bố lịch phát hành bản mới rộng rãi.
Discord đang viết lại ứng dụng desktop bằng Rust và GPUI, thay Electron vốn đóng gói Chromium cùng ứng dụng. Bản Windows thử nghiệm được chia sẻ cho thấy mức sử dụng khoảng 290 MB RAM, thấp hơn đáng kể so với những trường hợp ứng dụng hiện tại có thể vượt 1 GB khi tham gia nhiều máy chủ; thời điểm chuyển đổi hoàn tất vẫn chưa rõ.
GPUI thay Electron, không phải Tauri hay WebView2

Việc đổi ngôn ngữ lập trình không tự động làm ứng dụng nhẹ hơn. Thay đổi kiến trúc đáng chú ý nằm ở chỗ Discord bỏ Electron và chọn GPUI, framework giao diện được phát triển cho trình soạn thảo Zed. Theo CTO kiêm đồng sáng lập Stanislav Vishnevskiy, Discord đã dùng Rust từ năm 2018 cho hạ tầng, công nghệ thoại và một phần client, còn mục tiêu lần này là đưa toàn bộ mã ứng dụng về cùng nền tảng.

Electron giúp nhóm phát triển xây ứng dụng desktop bằng công nghệ web, nhưng mỗi ứng dụng thường mang theo runtime Chromium riêng. GPUI cho phép xây giao diện bằng Rust và dùng GPU để kết xuất; lựa chọn này loại bỏ lớp Chromium đóng gói cùng Discord. Tuy vậy, chưa có dữ liệu độc lập để kết luận mức tiêu thụ GPU, VRAM hay độ trễ thực tế của bản mới. Một ứng dụng có RAM thấp hơn không mặc nhiên nhẹ hơn ở mọi thành phần.

Discord cũng nói rõ họ không chọn Tauri. Vì thế, không nên hiểu việc bỏ Electron là chuyển sang một lớp vỏ nhẹ hơn dựa trên WebView2; công ty đang theo một hướng khác, dùng GPUI và tự duy trì các bản vá cần thiết cho framework này.
Mốc 290 MB mới là ảnh chụp thử nghiệm, chưa phải cam kết

Ảnh chụp bản Discord Phoenix trên Windows 11 hiển thị khoảng 290 MB RAM. Windows Latest đối chiếu con số đó với những trường hợp ứng dụng Discord hiện tại dùng hơn 1 GB; bài này cũng dẫn lại việc Discord từng xác nhận đang thử khởi động lại client khi mức dùng bộ nhớ vượt 4 GB, trong khi mức sử dụng thông thường được nêu là dưới 1 GB. Các con số phụ thuộc số máy chủ, kênh và trạng thái chạy, nên không thể xem một ảnh chụp là phép đo so sánh có kiểm soát.

Với máy chơi game hoặc laptop có RAM hạn chế, Discord chạy nền ít chiếm bộ nhớ hơn có thể để lại thêm tài nguyên cho game và các ứng dụng khác. Nhưng hiện chưa có bộ đo độc lập giữa hai phiên bản trong cùng điều kiện, cũng chưa rõ mức dùng RAM thay đổi thế nào khi mở nhiều máy chủ, gọi thoại hoặc chia sẻ màn hình. Con số 290 MB là dấu hiệu hứa hẹn, chưa đủ để dự đoán mọi tình huống sử dụng.
Mobile giữ giao diện riêng, web đi theo hướng khác
Discord không gộp mọi nền tảng thành một giao diện duy nhất. Ứng dụng di động sẽ tiếp tục dùng giao diện native, còn phần mã nghiệp vụ được chia sẻ với desktop qua Rust. Cách làm này giữ lại cách tương tác quen thuộc trên iOS và Android mà vẫn cho phép dùng chung nhiều logic ở phía ứng dụng.
Phiên bản web được mô tả theo hướng giữ bộ kết xuất HTML nhưng chuyển logic ứng dụng sang WebAssembly thay vì JavaScript. Đây là một nhánh kiến trúc khác với ứng dụng desktop dùng GPUI; thông tin hiện có chưa mô tả đầy đủ phạm vi chuyển đổi hay thời điểm triển khai của phiên bản web.
Discord chưa đưa ra lịch phát hành rộng rãi
Vishnevskiy cho biết Discord hy vọng sớm đưa bản mới vào thử nghiệm với người dùng, nhưng chưa nêu ngày phát hành chính thức. Quá trình thay client trên nhiều nền tảng còn phải bảo đảm các tính năng như nhắn tin, thoại và chia sẻ màn hình hoạt động ổn định; một ảnh chụp RAM thấp chưa trả lời được câu hỏi về tương thích hay độ tin cậy.
Người dùng Discord hiện tại chưa cần thay đổi thiết lập nào. Điều đáng theo dõi ở các bản thử nghiệm tiếp theo là mức dùng bộ nhớ trong nhiều tình huống, mức tiêu thụ VRAM khi giao diện dùng GPUI và liệu Discord có công bố lộ trình chuyển đổi cụ thể hay không.
Nguồn tham khảo: The Verge; Windows Latest; Roboin







