# LOBSTE.RS chuyển sang SQLITE: bài học về hiệu quả cơ sở dữ liệu

Đăng ngày: 2026-07-22

Tôi thấy cộng đồng công nghệ đang bàn tán về một quyết định khá thú vị từ Lobsters, một trang cộng đồng mà nhiều người trong chúng ta quen thuộc. Sau gần sáu năm ấp ủ, Lobsters đã hoàn tất việc chuyển đổi cơ sở dữ liệu chính thức sang SQLite. Từ tháng 8 năm 2018, dự án này vốn nhắm đến PostgreSQL, nhưng đến năm ngoái, họ đã rẽ hướng và quyết định thử nghiệm SQLite. Cuối tuần vừa rồi, quá trình di chuyển đã hoàn tất và kết quả được đánh giá là đủ ổn định để trở thành kiến trúc vĩnh viễn cho trang web này. Sự chuyển đổi từ MariaDB sang SQLite không chỉ là một thay đổi kỹ thuật đơn thuần, mà còn mang lại những cải thiện đáng kể. Theo thông báo từ nhóm phát triển, mức sử dụng CPU đã giảm xuống, lượng bộ nhớ tiêu thụ cũng ít hơn, và bản thân tôi cũng cảm thấy trang web hoạt động nhanh nhẹn hơn rõ rệt. Đáng chú ý, họ còn dự kiến giảm được một nửa chi phí vận hành máy chủ ảo (VPS) ngay khi VPS cũ chạy MariaDB được gỡ bỏ. Hiện tại, ứng dụng Rails của Lobsters đang chạy trên một máy chủ VPS duy nhất. Cấu trúc cơ sở dữ liệu mới khá tinh gọn. Tệp cơ sở dữ liệu SQLite chứa nội dung chính có dung lượng khoảng 3.8GB. Bên cạnh đó, có một cơ sở dữ liệu cache 1.1GB, một cơ sở dữ liệu hàng đợi (queue database) 218MB, và một cơ sở dữ liệu rack_attack vẫn đang phát triển với dung lượng 555MB, được sử dụng bởi middleware Rack::Attack để chặn và điều tiết các yêu cầu độc hại. Mọi chi tiết về quá trình này đều được ghi lại cẩn thận trong một pull request di chuyển SQLite do Thomas Dziedzic thực hiện. Pull request này đã thêm vào 735 dòng code, loại bỏ 593 dòng trên 30 commit và 188 tệp, và được xây dựng dựa trên các PR trước đó như #1705, #1871 và #1924. Đây thực sự là một trường hợp nghiên cứu rất hữu ích, nhắc nhở tôi và có lẽ cả nhiều đồng nghiệp khác rằng, ngay cả đến năm 2026, chúng ta vẫn có thể đạt được rất nhiều thành tựu lớn với một máy chủ đơn lẻ và SQLite. Đôi khi, những giải pháp tưởng chừng đơn giản, ít tốn kém lại có thể mang lại hiệu quả vượt trội, thách thức suy nghĩ mặc định rằng mọi thứ đều cần những hệ thống cơ sở dữ liệu phức tạp và quy mô lớn để vận hành một ứng dụng web cộng đồng có lượng truy cập ổn định. Nó là minh chứng cho việc tối ưu tài nguyên không chỉ giúp tiết kiệm chi phí mà còn có thể nâng cao hiệu suất đáng kể.

Canonical: https://www.tungpham.vn/blog/lobsters-chuyen-sang-sqlite-bai-hoc-ve-hieu-qua-co-so-du-lieu
