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.
Why read it: 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.
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://theinfinity.dev/articles/websocket-vs-sse-vs-polling. 8 Sync News only summarizes and links out; content copyright belongs to the authors and original sources.
Đang tải bình luận…
Nhiều lập trình viên lầm tưởng rằng khi sử dụng ORM, nguy cơ SQL injection sẽ được loại bỏ hoàn toàn, nhưng thực tế chỉ chuyển dịch sang vị trí khác. Các ORM như Sequelize, Prisma, TypeORM, và Knex vẫn có thể bị khai thác SQL injection khi phép ánh xạ đối tượng quan hệ không được triển khai chính xác. Kẻ tấn công có thể lợi dụng các phương thức động hoặc hàm không được parameter hóa để chèn mã độc vào truy vấn. Lỗi thường gặp nhất là sử dụng template literals kết hợp với các giá trị đầu vào không được kiểm soát, dẫn đến lỗ hổng bảo hiểm nghiêm trọng. Mặc dù có SQL injection ORM vẫn tồn tại, bài viết cung cấp các giải pháp cụ thể để bảo vệ ứng dụng, nhấn mạnh tầm quan trọng của việc kiểm tra đầu vào và sử dụng prepared statements thay vì concatenation strings.
ORM có thể vẫn để lỗ hổng SQL injection đi qua nếu bạn không sử dụng chúng đúng cách.
V8 engine gặp vấn đề khi đối tượng với __proto__: null bị mắc kẹt ở dictionary mode. …
Node.js 22.23.3 là bản LTS mới nhất, tập trung vào ổn định và bảo mật cho production environment. Bản vá này khắc phục 3 vulnerability nghiêm trọng liên quan đến V8 engine và OpenSSL. Node.js 22.23.3 tối ưu hóa bộ nhớ với Garbage Collector mới, giảm 15% memory usage trong trường hợp xử lý payload lớn. Lập trình viên nên cập nhật ngay vì đây là bản LTS được hỗ trợ đến tháng 4 năm 2026. Cải tiến trong phiên bản này bao gồm cải thiện performance của streams API và fix lỗi trong zlib module.
Node.js 22.23.3 LTS mang đến những cải tiến quan trọng về hiệu năng và bảo mật cho ứng dụng JavaScript của bạn.
Trên các máy bị quá tải, Node.js thread pool (default size 4) có thể trở thành điểm nghẽn khi các tác vụ I/O-intensive chiếm hết thread, gây chậm toàn bộ hệ thống. Nguyên nhân là do libuv (thư viện nền tảng của Node.js) chỉ giới hạn số thread pool, không có cơ chế ưu tiên tác vụ. Hệ quả là ứng dụng phản hồi chậm, thậm chí timeout khi lượng request lớn tăng lên. Giải pháp là tăng thread pool size bằng cách thiết biến UV_THREADPOOL_SIZE hoặc sử dụng worker threads để phân bổ tải tốt hơn.
Bài viết giúp lập trình viên hiểu cách Node.js sử dụng thread pools để xử lý các tác vụ I/O và CPU-intensive một cách hiệu quả trên các máy tải cao.
Trong môi trường Kubernetes, một binary thiếu hụt đã gây ra vòng lặp khôi phục vô hạn cho liveness probe. Vấn đề kỹ thuật phát sinh khi liveness probe và readiness probe không được phân biệt rõ ràng, khiến pod bị khởi tạo lại liên tục thay vì cho phép background consumer xử lý hết hàng đợi. Hệ quả là ứng dụng gặp downtime do quá trình khởi tạo lại liên tục, gây lãng phí tài nguyên và không đạt được trạng thái stable. Bài viết nhấn mạnh tầm quan trọng của việc thiết kế riêng biệt giữa liveness probe (kiểm tra health) và readiness probe (kiểm tra sẵn sàng phục vụ), đặc biệt với các ứng dụng xử lý queue background.
Bài viết giải thích tại sao probe sống và probe sẵn sàng trong Kubernetes có vai trò khác nhau, giúp lập trình viên tránh vòng lặp khởi tạo lại do thiếu binary xử lý hàng đợi nền.
Bản phát hành Bun v1.4.2 được ra để sửa hai hồi quy ảnh hưởng tới Elysia và AsyncLocalStorage, cùng một treo trong @discordjs/ws, lỗi giải mã JPEG CMYK trong Bun.Image, một trường hợp crash JIT hiếm và một lỗi GC trên hệ thống musl. Những hồi quy này xuất hiện vì các thay đổi gần đây trong trình biên dịch JIT và bộ thu gom rác, làm ảnh hưởng tới cách lưu trữ trạng thái bất đồng bộ và xử lý kết nối websocket, đồng thời gây ra xử lý sai không gian màu CMYK khi giải mã ảnh. Do đó, các ứng dụng dùng Elysia hoặc AsyncStorage có thể gặp lỗi thời gian chạy, máy chủ sử dụng @discordjs/ws có thể bị treo vô thời hạn, hình ảnh CMYK không hiển thị đúng, và đôi khi toàn bộ tiến trình Bun sẽ crash do JIT hoặc GC. Những sự cố này cho thấy cần phải có bộ test hồi quy chuyên biệt cho các tính năng JIT, GC và xử lý ảnh đặc biệt trước khi phát hành bản mới. Việc duy trì các test tích hợp cho các thư viện phổ biến như Elysia và AsyncLocalStorage giúp phát hiện sớm các vấn đề tương tự trong chuỗi phát triển.
Lập trình viên cần đọc về Bun v1.4.2 để cập nhật kiến thức về các sự cố mới trong thư viện web và công cụ như Elysia, DiscordJS WebSocket, và Image.JS, giúp tránh lỗi trong dự án khi sử dụng phiên bản cũ.
pnpm 12.5 đã giới thiệu hỗ trợ cho Python, bao gồm cả editable project packages và shared workspace. Bản cập nhật này cho phép người dùng quản lý các gói Python một cách hiệu quả hơn, tương tự như cách pnpm đã làm cho JavaScript. Shared workspace giúp tối ưu hóa việc chia sẻ dependencies giữa các dự án trong cùng một workspace, giảm thiểu việc cài lại các gói trùng lặp. Editable project packages cho phép phát triển các gói Python ở chế độ chỉnh sửa trực tiếp mà không cần cài đặt lại. Đây là bước tiến quan trọng giúp pnpm trở thành một công cụ đa ngôn ngữ mạnh mẽ hơn.
Lập trình viên cần đọc về pnpm 12.5 để hiểu cách tối ưu hóa quản lý các gói dự án editable trong môi trường Python cùng với việc chia sẻ workspaces hiệu quả hơn, giúp tiết kiệm bộ nhớ và cải thiện trải nghiệm phát triển đa ngôn ngữ.
Một con Shai-Hulud worm đã ẩn mình trong npm registry suốt 111 ngày rồi bất ngờ tái xuất hiện, qua mặt hoàn toàn hệ thống quét malware. Chiến thuật này khai thác khoảng trống thời gian trong cơ chế giám sát của npm, cho phép mã độc tồn tại lâu dài mà không bị phát hiện. Vụ việc này gây ra rủi ro bảo mật đáng kể cho các dự án phụ thuộc vào các package bị nhiễm. Lập trình viên nên cân nhắc thêm các bước kiểm tra bổ sung như analysis bằng công cụ như npm audit hoặc Snyk để phát hiện hành vi đáng ngờ. Điều này cho thấy giới hạn của hệ thống tự động và nhu cầu cần thiết về nhận thức cộng đồng trong việc bảo vệ ecosystem.
Bài viết này cảnh báo về mối nguy hiểm của các npm payload có khả năng ẩn mình và né qua hệ thống quét độc hại.
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