Ưu và nhược điểm của MySQL stored procedure
Ưu điểm
- Tăng hiệu năng ứng dụng – Procedure được compile on-demand và cache theo connection. Lần gọi sau dùng bản compile, giảm overhead.
- Nhanh – Giảm network traffic: một call thay vì nhiều statement riêng lẻ.
- Di động (Portable) – Viết bằng SQL, chạy trên mọi platform MySQL hỗ trợ, không cần runtime thêm.
- Tái sử dụng & minh bạch – Interface database chung cho mọi app, tránh viết trùng logic.
- An toàn – DBA cấp quyền EXECUTE trên procedure mà không cần cấp quyền trực tiếp trên table.
Nhược điểm
- Tăng memory usage – Nhiều procedure làm tăng bộ nhớ mỗi connection.
- Hạn chế logic phức tạp – Không thiết kế cho business logic phức tạp, linh hoạt.
- Khó debug – MySQL không hỗ trợ debug procedure tốt.
- Khó maintain – Cần kỹ năng chuyên biệt, không phải dev nào cũng làm được.