Khi người dùng bắt đầu tải lên file vượt 5GB qua tính năng đính kèm trong Slack, máy chủ Node.js đang dùng middleware body‑parser mặc định cố gắng đọc toàn bộ payload vào RAM, khiến bộ nhớ tăng đột ngột và process bị kill khi vượt quá giới hạn heap. Nguyên nhân kỹ thuật là việc không sử dụng streaming parser, vì mỗi kết nối tiêu tốn khoảng 5–6 GB RAM trong thời gian xử lý upload, làm giảm khả năng xử lý song song và gây ra timeout cho các request khác. Hệ quả là server thường xuyên restart, perda dữ liệu upload chưa hoàn thành và thời gian phản hồi tăng lên tới 30 giây cho các truy vấn API bình thường. Để khắc phục, tác giả đã thay body‑parser bằng busboy (hoặc multiparty) và pipe dữ liệu trực tiếp vào một file tạm trên đĩa hoặc vào multipart upload của Amazon S3, đồng thời đặt giới hạn kích thước phần qua highWaterMark và bật chế độ tự động dọn dẹp file tạm sau khi hoàn thành. Bài học là đối với file lớn hơn vài trăm MB, Node.js không nên đọc toàn bộ payload vào bộ nhớ; thay vào đó, cần sử dụng streaming, lưu trữ tạm hoặc truyền trực tiếp tới dịch vụ lưu trữ đối tượng, và nếu cần xử lý sau upload thì offload sang worker thread hoặc dịch vụ nền.
Why read it: Bài này sẽ dạy bạn cách xử lý upload file lớn trên Node.js mà không làm quá tải server.
Answer 3 short questions to earn reward points for this article. Only do it if you want the points.
3 questions · under a minute · optional
Source: https://blog.devgenius.io/how-i-handled-5gb-file-uploads-without-breaking-my-node-js-server-a3713615bbec. 8 Sync News only summarizes and links out; content copyright belongs to the authors and original sources.
Đang tải bình luận…
Thiết kế sản phẩm đang trải qua sự can thiệp của AI qua các công cụ agent tự động hoá các tác vụ lặp lại. Những mô hình sinh hình và hệ thống agent có thể tạo ra bản phác thảo, bố cục và các thành phần UI dựa trên mô tả tự nhiên, giảm công việc scaffolding. Vì vậy, các kỹ sư thiết kế sẽ dành ít thời gian hơn để vẽ khung, nhưng cần tập trung hơn vào việc định hướng thẩm mỹ, kiểm soát độ phức tạp và hoàn thiện chi tiết visual. Điều đáng học là khi AI xử lý phần “scaffold”, giá trị thực của nhà thiết kế nằm ở vị giác sản phẩm, sự tự chế và khả năng tạo ra những giao diện mịn màng, điều này không thể thay thế bằng thuật toán hiện tại. Do đó, đọc bài gốc giúp lập trình viên hiểu rõ vai trò mới của AI trong quy trình thiết kế và cách duy trì lợi thế cạnh tranh qua việc phát triển kỹ năng thẩm mỹ và quyết định.
Bài viết giúp bạn hiểu vị thế thiết kế kỹ thuật của mình trong kỷ nguyên AI, biết được đâu là giá trị mà AI không thể thay thế.
pnpm 11.21 và 11.22 thay đổi cách pnpm install xử lý lockfile, cập nhật nó trực tiếp thay vì giải quyết lại toàn bộ đồ thị phụ thuộc cho hầu hết các thay đổi thường ngày. Điều này được thực hiện bằng cách tắt ghi lại SSH URLs trong lockfile, giúp tránh lỗi cài đặt trên CI khi các URL đó không thể truy cập. Đồng thời, các cài đặt toàn cầu được thực hiện nguyên tử và các cập nhật tương tác toàn cầu теперь chọn toàn bộ nhóm cài đặt, đồng thời thêm lệnh pnpm cache path để truy cập nhanh vào thư mục cache. Tuy nhiên, bản cập nhật cũng loại bỏ khả năng di chuyển trạng thái máy của pnpm qua pnpm-workspace.yaml, giới hạn sự linh hoạt trong cấu hình workspace. Từ những thay đổi này, lập trình viên nên lưu ý đến chiến lược quản lý lockfile, tránh sử dụng SSH URLs trong môi trường CI và cân nhắc tác động của việc không thể di chuyển trạng thái máy khi thiết kế workspace.
Bài viết này giúp bạn hiểu những cải tiến quan trọng trong pnpm 11.21-11.22, từ tối ưu hóa hiệu suất cài đặt đến tăng cường độ ổn định cho môi trường CI.
Bài viết giải thích thiết kế hệ thống từ đơn giản (máy chủ đơn) đến phức tạp (hàng triệu người dùng), bao gồm API, cơ sở dữ liệu, caching, CDN, load balancing và hạ tầng sản xuất.
Bài viết giúp bạn hiểu rõ cách xây dựng cơ sở hạ tầng thực tế từ những nguyên tắc cơ bản nhất, từ đó tránh những sai lầm thường gặp khi mở rộng hệ thống khi còn mới mẻ.
Bài viết bắt đầu bằng việc chia sẻ kinh nghiệm cá nhân của tác giả về việc tránh cho phép …
Bài viết so sánh chi phí thực tế giữa WebSocket, SSE và Long Polling qua các số liệu đo lường như dung lượng dữ liệu truyền tải trên dây (wire bytes) cho mỗi sự kiện, độ trễ ở vòng lặp 50 ms, và tác động của HTTP/2 lên từng phương thức.
Một lập trình viên nên đọc bài này để hiểu rõ cách chọn giữa WebSocket, SSE và Long Polling khi cần tối ưu hóa hiệu suất mạng, giảm chi phí băng thông và latency trong ứng dụng thực tế với hàng ngàn sự kiện.
Truyện tranh về công việc, được vẽ bằng tình yêu và rất nhiều cà phê.
Làm việc trong ngành công nghệ thường đòi hỏi sự tập trung cao và áp lực thời gian, nhưng những câu chuyện về tâm lý của các lập trình viên trong comic này giúp bạn hiểu rõ hơn về những căng thẳng thực tế mà họ phải đối mặt, từ đó có thể cải thiện hiệu suất và giữ gìn sức khỏe tinh thần hiệu quả hơn.
Truyện tranh về công việc được tạo nên bằng sự đam mê và rất nhiều cà phê.
Khi các mô hình AI chỉ trả về xác suất hoặc điểm số, các đội ngũ tại Salesforce cần biến chúng thành quyết định có thể thực hiện ngay trong ứng dụng kinh doanh. Họ thực hiện điều này bằng cách kết hợp model signals (xác suất, độ tin cậy) với business logic được viết dưới dạng quy tắc Apex, đồng thời đưa vào contextual knowledge từ bản ghi khách hàng và lịch sử tương tác. Kết quả là một pipeline quyết định nơi AI agents đề xuất hành động tiếp theo, còn MCP (Model Confidence Processor) lọc bỏ những dự đoán dưới ngưỡng tin cậy để giảm thiểu sai lệch. Quá trình này cho thấy việc đưa ra hành động từ AI không chỉ phụ thuộc vào mô hình mà còn cần sự đồng bộ giữa tín hiệu mô hình, quy tắc nghiệp vụ và bối cảnh thực tế. Việc tích hợp lớp này giúp nâng cao độ phù hợp của quyết策 và giảm nhu cầu can thiệp thủ công từ người dùng.
Bài này giúp lập trình viên biết cách chuyển hóa dự đoán AI thành quyết định hành động thực tế trong hệ thống Salesforce.
Read the news here, practice coding, follow structured courses and train for IELTS on our sibling products — all connected through one 8 Sync account.
The ecosystem home: product overviews, blog and full pricing.
ExploreLearn along a clear roadmap: videos, auto-graded quizzes, certificates and mentors who ship for a living.
View the roadmap1,000+ DSA problems in Vietnamese, auto-graded across 7 languages — many FREE, right in your browser.
Practice for freeAI grading for all four IELTS skills with detailed rubric feedback.
Try it freeA 22 MB AI IDE for Vietnamese devs.
Download freeOrganizational memory for AI agents.
ExploreAI that staffs your Fanpage and qualifies leads for you.
Try it