This blog explains the daily operations of PostgreSQL on Kubernetes, which involves scaling, resizing. Read to have a deep dive.
Nguồn: https://www.cybertec-postgresql.com/en/day-to-day-postgresql-on-kubernetes-resize-scale-and-upgrade. 8 Sync News chỉ tóm tắt và dẫn link; bản quyền nội dung thuộc tác giả và nguồn gốc.
PostgreSQL mặc định bọc mỗi câu lệnh trong một giao dịch riêng khi không có BEGIN…COMMIT rõ ràng. Tuy nhiên, khi gửi nhiều câu lệnh trong một chuỗi truy vấn đơn (thông qua PQexec hoặc các hàm plpgsql) hoặc sử dụng các tiện ích như COPY và CREATE INDEX CONCURRENTLY, máy chủ sẽ ẩn ý tạo một giao dịch duy nhất bao gồm tất cả các câu lệnh đó. Điều này có thể dẫn đến việc giữ khóa lâu hơn, tiêu thụ ID giao dịch tăng nhanh và làm khó khăn việc rollback một phần công việc khi lỗi xảy ra. Do đó, lập trình viên cần kiểm tra xem ứng dụng của mình có vô tình nhóm nhiều câu lệnh vào một giao dịch ngầm không và cân nhắc sử dụng BEGIN…COMMIT cụ thể khi cần kiểm soát granularity. Theo dõi pg_stat_activity để phát hiện các giao dịch mở dài hạn cũng là biện pháp phòng ngừa tốt.
Bài này giúp lập trình viên hiểu rõ cách Postgres tự động tạo giao dịch nhiều câu lệnh, tránh lỗi và tối ưu hiệu năng.
Đang tải bình luận…
pgwatch là công cụ giám sát PostgreSQL phổ biến, phiên bản 6.0.0-beta vừa ra mắt với nhiều cải tiến về khả năng tích hợp monitoring. Những thay đổi chính là Prometheus hiện nay được cấu hình làm nguồn dữ liệu (source) thay vì chỉ là đích điểm (sink) để pgwatch đẩy metrics qua pushgateway. Điều này cho phép Prometheus tự động thu thập (scrape) metrics từ pgwatch qua HTTP endpoint, giảm độ trễ và loại bỏ nhu cầu cấu hình pushgateway riêng. Kết quả là hệ thống giám sát trở nên đơn giản hơn, độ tin cậy tăng vì giảm một lớp trung gian và dễ dàng mở rộng với các quy tắc cảnh báo của Prometheus. Từ bài học này, các team DevOps có thể suy nghĩ về việc đảo ngược hướng dữ liệu trong các hệ thống quan sát để tối ưu hoá độ trễ và giảm phụ thuộc vào cơ chế push.
Bài viết này giúp lập trình viên hiểu cách Prometheus trong pgwatch v6 chuyển từ điểm thu thập dữ liệu thành nguồn cung cấp dữ liệu, mang lại khả năng giám sát và phân tích hiệu suất cơ sở dữ liệu Postgres linh hoạt hơn.
Bài viết giải thích vai trò của hai tham số GUC log_destination và logging_collector trong PostgreSQL, mô tả cách logging collector hoạt động như một daemon dựa trên pipe để tránh mất và garbled log messages. Khi bật logging_collector, PostgreSQL phải khởi động lại vì daemon được tạo trong quá trình khởi động, và các định dạng log như stderr, csvlog và jsonlog đều được đưa vào pipe này. Tuy nhiên, dưới tải cao, collector có thể trở thành điểm nghẽn và làm giãn cả instance, trong khi việc sử dụng syslog lại có nguy cơ silently drop messages khi hệ thống quá tải. Bài cũng so sánh mặc định của log_destination trên các nền tảng phổ biến: Debian/Ubuntu thường để stderr, PGDG RPMs thường dùng csvlog, Docker images và một số dịch vụ quản lý có thể pre‑configure jsonlog hoặc syslog tùy theo nhà cung cấp. Từ đó, tác giả khuyên trong môi trường production nên chọn định dạng log phù hợp với hệ thống giám sát, bật logging_collector chỉ khi cần lưu trữ tập trung và luôn monitor throughput để tránh stall, đồng thời cân nhắc sử dụng syslog với buffer đủ lớn hoặc các giải pháp bên ngoài như Fluentd để tránh mất log.
Bài giải thích chi tiết về log_destination và logging_collector GUCs giúp bạn hiểu rõ cơ chế logging của PostgreSQL, từ đó tối ưu hóa cấu hình giám sát và xử lý log hiệu quả trong môi trường production.
Debezium 3.7.0.Beta1 là bản phát hành beta mới nhất của nền tảng mã nguồn mở phân tán dùng để bắt thay đổi dữ liệu (Change Data Capture). Bản beta này tiếp tục duy trì tính năng kết nối với các cơ sở dữ liệu phổ biến như MySQL, PostgreSQL, MongoDB và SQL Server, cho phép ứng dụng theo dõi ngay các thao tác INSERT, UPDATE, DELETE. Nhờ cơ chế lưu trữ bền vững và xử lý nhanh, Debezium đảm bảo không bỏ lỡ bất kỳ sự kiện nào ngay cả khi hệ thống gặp sự cố. Với việc phát hành beta, nhóm phát triển muốn thu thập phản hồi từ cộng đồng để ổn định phiên bản 3.7.0 cuối cùng. Điều này nhắc nhở các lập trình viên rằng việc sử dụng một giải pháp CDC đáng tin cậy như Debezium giúp xây dựng hệ thống phản hồi sự kiện real‑time mà không lo mất dữ liệu.
Debezium 3.7.0.Beta1 mang đến những cải tiến đáng chú ý cho việc xử lý sự kiện thay đổi dữ liệu hiệu quả.
Kubernetes phiên bản 1.37 được ra mắt với trọng tâm nâng cao bảo mật cho các-cluster sản xuất. Trong bản này, hệ thống giới thiệu cơ chế kiểm soát quyền truy cập khi mount volume qua CSI, yêu cầu các driver phải khai báo và xác thực quyền sử dụng trước khi pod có thể truy cập dữ liệu. Đồng thời, webhook admission được bật xác thực bằng mặc định, tức là mọi request đến webhook phải đi qua TLS và token xác thực trước khi được xử lý. Những thay đổi này giảm nguy cơ leo thang đặc quyền từ volume không đáng tin cậy và ngăn chặn các cuộc tấn công man-in-the-middle trên webhook. Để tận dụng tối đa, quản trị-cluster nên xem lại các CSI driver hiện tại, bật xác thực cho webhook nếu chưa có và thực hiện thử nghiệm trong môi trường staging trước khi nâng cấp lên 1.37.
Lập trình viên nên đọc bài viết này để cập nhật các tính năng bảo mật mới quan trọng trong Kubernetes 1.37 như mount volumes và xác thực mặc định trên webhooks.
Bài viết mô tả bối cảnh nhu cầu tách biệt lưu trữ và tính toán trong hệ thống Postgres khi ứng dụng AI agents ngày càng tăng. Nó giải thích cách coi WAL (Write‑Ahead Log) như nguồn thực thể duy nhất và đưa nó lên Amazon S3 để lưu trữ đối tượng. Kỹ thuật này cho phép ricostruzione cơ sở dữ liệu từ WAL trên S3 mà không cần giữ toàn bộ dữ liệu trên đĩa local, giảm chi phí lưu trữ và mở rộng khả năng sao chép bất đồng bộ. Các tác động bao gồm thời gian phục hồi nhanh hơn, khả năng truy vấn lịch sử dữ liệu trực tiếp từ S3 và tích hợp dễ dàng với các công cụ xử lý sự kiện cho agents. Bài học chính là việc xem WAL như lớp lưu trữ không thay đổi mở ra kiến trúc lakebase, giúp团队 tách biệt công việc vận hành Postgres khỏi chi phí cơ sở hạ tầng và chuẩn bị sẵn sàng cho workloads AI‑native.
Bài viết giúp lập trình viên hiểu cách tận dụng WAL và S3 để tối ưu hóa lưu trữ dữ liệu trong thời đại AI agents.
Khi phát triển dịch vụ microservice, việc kiểm tra khả năng chịu lỗi thường đòi hỏi môi trường staging riêng và có thể ảnh hưởng đến các team khác. mirrord Chaos Testing cung cấp công cụ cho phép desenvol viên inject lỗi kết nối tới bất kỳ dependency nào (database, API, message queue…) chỉ bằng một lệnh hoặc cấu hình đơn giản. Công việc này diễn ra trong quá trình chạy local hoặc trong container dev, không cần triển khai môi trường riêng và không làm gián đoạn việc làm việc của các thành viên khác. Nhờ đó,团队 có thể quan sát ngay cách mã nguồn phản hồi khi kết nối bị ngắt, timeout hoặc trả về lỗi, từ đó phát hiện các đường đi xử lý ngoại lệ chưa được покрыть. Kết quả là có thể cải thiện độ tin cậy của dịch vụ mà không tốn chi phí cho môi trường test phức tạp, và áp dụng được ngay trong quy trình CI/CD nếu muốn.
mirrord Chaos Testing giúp bạn phát hiện điểm yếu trong hệ thống của mình một cách an toàn và tiện lợi bằng cách mô phỏng các sự cố kết nối trong môi trường thực tế.
Bài viết thực nghiệm trên PostgreSQL bằng cách tăng số kết nối từ 1 lên 400 để đo …
Đọc tin ở đây, luyện code, học theo lộ trình và luyện IELTS trên các sản phẩm anh em — tất cả kết nối với nhau trong hệ sinh thái 8 Sync.
Cổng chính của hệ sinh thái: giới thiệu sản phẩm, blog và bảng giá trọn bộ.
Khám pháHọc theo lộ trình rõ từng chặng: video, quiz chấm tự động, certificate và mentor đang làm nghề.
Xem lộ trình1.000+ bài DSA, đề tiếng Việt, chấm tự động 7 ngôn ngữ — nhiều bài FREE, chạy ngay trên trình duyệt.
Luyện miễn phíChấm bốn kỹ năng IELTS bằng AI, phản hồi chi tiết theo rubric.
Dùng thử miễn phíAI IDE 22 MB cho dev Việt.
Tải miễn phíBộ nhớ tổ chức cho AI agent.
Khám pháAI trực Fanpage, tự sàng lọc lead.
Dùng thử