9 điểm bởi GN⁺ 2023-09-21 | 2 bình luận | Chia sẻ qua WhatsApp
  • Nền tảng phát triển ứng dụng local-first, realtime và reactive dựa trên Postgres trên đám mây và SQLite cục bộ
  • Local-First
    • Mã ứng dụng giao tiếp trực tiếp với DB nhúng là SQLite, và dữ liệu được đồng bộ động ở chế độ sao chép active-active với Postgres trên đám mây trong nền
    • Nhờ đó cho phép cộng tác nhiều người dùng và không xảy ra xung đột
  • Thông qua ElectricSQL, có thể tiếp tục sử dụng nguyên trạng Postgres cục bộ
  • Được thiết kế với mục tiêu tận dụng truy cập dữ liệu ưu tiên cục bộ để giúp ứng dụng phản hồi tức thì và luôn nhanh một cách nhất quán
  • Cung cấp sự đơn giản trong vận hành, đồng thời giảm sự đa dạng của các dịch vụ backend và khối lượng công việc bằng cách tiêu chuẩn hóa trên một giao thức sao chép đơn giản và có khả năng mở rộng
  • Tương thích với các hệ thống hiện có dựa trên Postgres và hoạt động cùng mô hình dữ liệu hiện có

2 bình luận

 
sixmen 2023-09-21

Đây là trường hợp tôi từng làm ứng dụng thiên về phía client vì thích nó có thể hoạt động ngay cả khi không có server, nhưng về sau lại phát sinh nhu cầu tích hợp với server nên đã chuyển sang đồng bộ active-active.

Dịch vụ đầu tiên thì tôi áp dụng khái niệm OT và tự triển khai thủ công, còn dịch vụ thứ hai thì trong lúc tìm giải pháp bên ngoài đã chọn Couchbase (khi đó cũng có tìm hiểu cả PouchDB và Realm)...

Kết luận là nếu có thể thì tốt nhất đừng làm. Không quản lý dữ liệu nổi (dù cũng có phần là vì Couchbase DB khá đặc thù).

 
GN⁺ 2023-09-21
Ý kiến trên Hacker News
  • ElectricSQL là một công nghệ mới cho phép đồng bộ active-active giữa Postgres và SQLite dành cho các ứng dụng local-first.
  • Công nghệ này được khen ngợi nhờ cách tiếp cận độc đáo trong việc quản lý kết nối giữa SQLite phía client, lớp CRDT/đồng bộ mã nguồn mở và Postgres.
  • ElectricSQL cho phép cơ sở dữ liệu Postgres hoạt động như nguồn chân lý trung tâm cho toàn bộ dữ liệu và tài khoản người dùng, trong khi nội dung riêng tư của mỗi người dùng có thể được cô lập trong cơ sở dữ liệu SQLite của riêng họ và đồng bộ hóa.
  • Có khả năng ElectricSQL sẽ được sử dụng trong các workflow CI để viết các bài kiểm thử tích hợp nhanh bằng cách dùng một phần dữ liệu thực hoặc dữ liệu được tuyển chọn.
  • ElectricSQL được xem là một bước tiến quan trọng hướng tới sự hồi sinh của các ứng dụng local-first, nhưng vẫn còn nhiều thách thức cần vượt qua trong lĩnh vực này.
  • Đã có câu hỏi được đặt ra về khả năng sử dụng mã hóa đầu cuối cho một phần trạng thái của ứng dụng dùng ElectricSQL.
  • Một số người dùng bày tỏ lo ngại về độ phức tạp trong việc hiểu trạng thái sẽ ra sao khi đi cùng CRDT, và điều này có thể gây ra vấn đề cho người dùng như thế nào.
  • Có những câu hỏi về mô hình thương mại của ElectricSQL, chẳng hạn liệu đây sẽ là một dịch vụ đám mây hoàn chỉnh hay chỉ lưu trữ thành phần Elixir.
  • Người dùng thắc mắc về việc xác thực hoặc chứng thực các thay đổi được hợp nhất trở lại cơ sở dữ liệu gốc, và ElectricSQL sẽ ứng phó thế nào với khả năng client độc hại gửi một luồng dữ liệu tùy ý để đồng bộ vào cơ sở dữ liệu gốc.
  • ElectricSQL được so sánh với các giải pháp khác như PouchDB và CouchDB, và người dùng bày tỏ sự quan tâm đến việc thử công nghệ mới này.
  • Việc ra mắt ElectricSQL nhìn chung được đón nhận tích cực, với nhiều người dùng bày tỏ sự hào hứng về tiềm năng của công nghệ này đối với phần mềm local-first.