Kiến thức bị nguyền rủa
(immich.app)- Danh sách chia sẻ các kiến thức bị nguyền rủa thu thập được trong quá trình phát triển Immich
- Tổng hợp các vấn đề bất ngờ gặp phải trong nhiều môi trường phần mềm và hạ tầng khác nhau
- Nêu ra các điểm khó với siêu dữ liệu EXIF, xử lý khoảng trắng YAML, PostgreSQL và công cụ/ngôn ngữ
- Một số vấn đề liên quan trực tiếp đến bảo mật, khả năng tương thích nền tảng, phụ thuộc nguồn mở
- Tập trung vào trường hợp thực tế và nguyên nhân mà nhà phát triển cần lưu ý
Tổng quan
Đội ngũ phát triển Immich đã công bố các kiến thức bị nguyền rủa mà họ từng trải qua trong quá trình làm dự án, những thứ không muốn gặp lại. Đây là danh sách các bẫy và vấn đề bất ngờ mà họ đã trực tiếp gặp trong quá trình phát triển và vận hành dịch vụ thực tế trên nhiều công cụ, ngôn ngữ và nền tảng khác nhau.
Danh sách kiến thức bị nguyền rủa
-
4 tháng 6 năm 2025
Actionscủa Zitadel là một tính năng gây rắc rối- Tính năng scripting tùy chỉnh mà Zitadel cung cấp dựa trên JS, nhưng lại không hỗ trợ nhóm bắt tên của regex, nên bộc lộ rõ giới hạn
-
30 tháng 5 năm 2025
- Microsoft Entra hỗ trợ PKCE, nhưng không ghi nhận điều này trong tài liệu phát hiện OpenID
- Do đó, một tính năng tồn tại nhưng lại không được client phát hiện
-
5 tháng 5 năm 2025
- Kích thước trong siêu dữ liệu EXIF mô tả hình ảnh có thể không khớp với hình ảnh thực tế
- Sự khác biệt này gây ra lỗi trong crop và resize
-
1 tháng 4 năm 2025
- Xử lý khoảng trắng của YAML thường hoạt động không như mong đợi
- Nhạy cảm với định dạng, nên có nguy cơ diễn giải nội dung sai so với ý định
-
20 tháng 9 năm 2024
- Tệp ẩn của Windows không mở được bằng cờ
w - Khi kết hợp với tùy chọn
hide dot filescủa SMB, dễ gây rối loạn lớn trong duyệt và xử lý tệp
- Tệp ẩn của Windows không mở được bằng cờ
-
7 tháng 8 năm 2024
- Script Bash có thể gặp vấn đề CRLF
- Nếu Git tự chuyển đổi tự động từ LF sang CRLF khi checkout, có thể gây lỗi khi thực thi script
-
7 tháng 8 năm 2024
fetchtrênCloudflare Workersmặc định dùnghttpngay cả khi đã chỉ địnhhttps- Điều này có thể gây lỗi mạng như vòng lặp chuyển hướng
-
21 tháng 7 năm 2024
- Chia sẻ GPS trên thiết bị di động có thể âm thầm bị xóa khỏi ảnh nếu app không có quyền vị trí
- Tác động đến độ chính xác của dịch vụ vị trí và quyền riêng tư
-
3 tháng 7 năm 2024
NOTIFYcủa PostgreSQL chỉ hoạt động trong transaction- Khi dùng với
socket.io+postgres-adapter, ghi WAL mỗi 5 giây có thể gây tăng tải
-
3 tháng 7 năm 2024
- Mỗi lần chạy script
npmđều gửi request đến npm registry qua HTTP - Vì vậy, dùng script để health check là không hiệu quả
- Mỗi lần chạy script
-
28 tháng 6 năm 2024
- Trong cộng đồng JavaScript, một số người đã ép thêm 50 gói phụ thuộc cho lý do tương thích ngược
- Tất cả các gói này đều do một người dùng đó quản lý
-
25 tháng 6 năm 2024
- Triển khai
bcryptchỉ sử dụng 72 byte đầu tiên của chuỗi - Các ký tự phía sau bị bỏ qua, khiến mật khẩu dài trở nên vô nghĩa
- Triển khai
-
31 tháng 1 năm 2024
- Đối tượng
Datecủa JavaScript đánh chỉ số năm và ngày từ 1, tháng từ 0 - Là một cấu trúc dễ gây nhầm lẫn
- Đối tượng
-
9 tháng 1 năm 2024
- Trước Node.js v20.8, trong dự án CommonJS sử dụng tùy chọn
--experimental-vm-modules, khiESMnạp lại module CommonJS- xảy ra lỗi
segfaultvà làm Node.js crash
- xảy ra lỗi
- Trước Node.js v20.8, trong dự án CommonJS sử dụng tùy chọn
-
28 tháng 12 năm 2023
- Giới hạn tham số của PostgreSQL là 65.535
- Trong bulk insert tập dữ liệu lớn, giới hạn này gây ra vấn đề hiệu năng
-
26 tháng 6 năm 2023
- Một số Web API chỉ có thể dùng trong Secure Contexts
- Chẳng hạn API clipboard chỉ hoạt động ở môi trường
httpshoặclocalhost
-
23 tháng 2 năm 2023
- Cài đặt
removecủa TypeORM ảnh hưởng trực tiếp đến dữ liệu đầu vào - Nó xóa luôn cả thuộc tính
idcủa đối tượng gốc
- Cài đặt
Kết luận
Những kiến thức bị nguyền rủa như vậy thường xuất hiện trong phát triển và vận hành dịch vụ thực tế. Việc nhận diện trước các ràng buộc và vấn đề tiềm ẩn theo từng công cụ, ngôn ngữ và môi trường giúp nhà phát triển cải thiện khả năng khắc phục sự cố và phát triển dịch vụ ổn định hơn.
Chưa có bình luận nào.