TGViewer
Database Database @database_academy · 893 subscribers
Post #1726 32
🔵 عنوان مقاله
How Savepoints Throttled Our Postgres Queue

🟢 خلاصه مقاله:
در این مقاله فنی، به طور جامع نگاهی عمیق و تصویری جذاب به مشکلی می‌پردازیم که چگونه افزودن تعداد بیشتری کارگر به صف مبتنی بر پایگاه داده پستگرس، باعث کاهش سرعت و عملکرد آن شد. در ابتدا، توضیح داده می‌شود که اجرای عملیات‌های مربوط به گرفتن نقاط ذخیره‌سازی یا همان Savepoints بر هر وظیفه، می‌تواند به مرور زمان موجب کاهش کارایی سیستم شود. این موضوع، یکی از چالش‌های اصلی در طراحی سیستم‌های صف‌گذاری است که با افزایش تعداد کارگران، عملکرد دچار اختلال می‌گردد.

در ادامه، تغییر در رفتار سیستم با افزودن کارگران بیشتر بررسی می‌شود و اینکه چگونه این عملیات‌های Savepoint، در کنار هم، عامل اصلی در کندی سیستم محسوب می‌شدند. در این بخش، با نمودارها و گراف‌های بصری، فرآیند هر عملیات و تأثیر آن بر عملکرد کلی سیستم نشان داده می‌شود. سپس، راهکاری هوشمندانه معرفی می‌شود: استفاده از سیستم اجاره (Lease) برای ادعای وظایف، که به جای اجرای عملیات‌های پرزحمت Savepoint، امکان مدیریت بهتری بر وظایف در زمان اجرای آن‌ها فراهم می‌آورد و در نتیجه، سرعت صف را بهبود می‌بخشد.

در پایان، نتایج آزمایش و مقایسه قبل و بعد از بهبود عملکرد ارائه می‌گردد. این تجربه نشان می‌دهد که با تغییر رویکرد در مدیریت تراکنش‌ها و بهره‌گیری از سیستم اجاره، می‌توان از اجرای مداوم عملیات‌های Savepoint جلوگیری کرده و سیستم را کارآمدتر و موثرتر ساخت. این راهکار، می‌تواند به توسعه‌دهندگان کمک کند تا در طراحی سیستم‌های شیرده، بهینه‌تر عمل کنند و از کاهش سرعت در صف‌های پردازش جلوگیری نمایند.

در نتیجه، مطالعه این نکات فنی، اهمیت طراحی هوشمندانه و به‌روز در مدیریت وظایف در پایگاه‌های داده را نشان می‌دهد و نشان می‌دهد که چگونه تغییر کوچک در استراتژی می‌تواند تأثیر بزرگ در عملکرد کلی سیستم داشته باشد.

#پایگاه_داده #پستگرس #مدیریت_وظایف #بهینه‌سازی

🟣لینک مقاله:
https://incident.io/blog/how-savepoints-quietly-throttled-our-postgres-queue

➖➖➖➖➖➖➖➖
👑 @Database_Academy
incident.io How savepoints quietly throttled our Postgres queue | Blog Our on-call ticker runs on a Postgres-backed queue. Under load test it slowed to a crawl, and adding workers only made it worse. The culprit was a savepoint per tick, minting a MultiXact on every locked row.
More from @database_academy
  1. Oct 16, 2026🔵 عنوان مقاله What Defines The Streamhouse Architecture? (11 minute read) 🟢 خلاصه مقاله:…
  2. Oct 16, 2026🔵 عنوان مقاله 'The Reverts Will Continue Until Morale Improves' 🟢 خلاصه مقاله: در دوره‌ی…
  3. Oct 16, 2026🔵 عنوان مقاله From Activity to Intent: Generating User Journeys with LLMs (14 minute read…
  4. Oct 15, 2026🔵 عنوان مقاله What Deleting Rows Does to a Table 🟢 خلاصه مقاله: حذف ردیف‌های جدول ممکن ا…
  5. Oct 15, 2026🔵 عنوان مقاله Claude Dashboards and the shift from chart builder to chart specifier (14 m…
  6. Oct 15, 2026🔵 عنوان مقاله How we're building a context engine to cut agent token use by 71% (12 minut…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →