Phát hành Automerge 3.0
(automerge.org)- Một công cụ đồng bộ dữ liệu local-first dựa trên CRDT giúp việc phát triển ứng dụng cộng tác trở nên dễ dàng hơn, được tối ưu cho cộng tác ngoại tuyến và quản lý phiên bản
- Thay đổi lớn nhất của 3.0 là mức sử dụng bộ nhớ giảm hơn 10 lần, giúp có thể áp dụng cho nhiều kịch bản đa dạng hơn nhiều
- Automerge có cấu trúc lưu toàn bộ lịch sử thay đổi để hỗ trợ phát hiện xung đột và khôi phục bản ghi
- Trước đây, khi chỉnh sửa tài liệu, dữ liệu bị giải nén nên có vấn đề mức sử dụng bộ nhớ tăng vọt từ vài trăm MB đến vài GB
- Trong 3.0, định dạng nén cũng được dùng ngay trong runtime, giúp giảm gánh nặng bộ nhớ một cách căn bản
- Ví dụ: trong bài kiểm thử dán văn bản dung lượng lớn là Moby Dick, 2.0 dùng 700MB, còn 3.0 chỉ dùng 1.3MB
- Việc quản lý đồng thời các tài liệu lớn trên máy chủ cũng trở nên dễ dàng hơn, cho phép xây dựng ứng dụng cộng tác quy mô lớn
- Khi lịch sử tài liệu lớn, tốc độ tải cũng nhanh hơn từ hàng chục đến hàng chục nghìn lần (17 giờ → 9 giây)
- Ngoài ra, API liên quan đến xử lý văn bản cũng được tổ chức lại đáng kể để tăng tính nhất quán và sự đơn giản
- Chuỗi có thể cộng tác được biểu diễn bằng
stringthông thường, còn chuỗi không thể cộng tác được tách rõ thànhImmutableString - Các API trùng lặp trước đây như
Text/RawStringđã bị loại bỏ, và API trong namespacenexttrở thành mặc định
- Chuỗi có thể cộng tác được biểu diễn bằng
- Gần như tương thích hoàn toàn với mã hiện có, giữ nguyên cùng định dạng tệp và phần lớn API, nên có thể di trú ngay lập tức
- Tham khảo hướng dẫn di trú
2 bình luận
Ồ, hóa ra có thứ như thế này.
Bản phát hành Automerge 2.0
Tôi đã sai. CRDT là tương lai.
Tối ưu hóa để có CRDT nhanh hơn