شبکه

کنترل هم‌روندی (Concurrency control) چیست و چگونه پیاده‌سازی می‌شود؟

?????? ?? ????????? ??????? ?? ??????? ?? ????? ???????? ?? ???????????? ???????? ?????? ??? ???????? ???? (?? ????? ?? ??? ??????????)? ???????? ???? ?? ???????? ???? ??? ???? ????????? ????? ???? ???? ???? ????????. ???????? ?? ????? ?????? ??????? ????????????? ????? ? ??????? ????????? ?? ?? ??? ??????? ????????? ????????? ?? ????? ?????? ??? ??? ?? ??????? ? ??? ?? ????? ??? ???.

????? ????? ???????? (Concurrency control) ?? ?? ??????? ?? ????? ????? ??????????? ??????? ??? ?? ???? ???? ?? ???? ???? ?? ?????????? ?????? ???????. ??????? ?? ??????? ??????? ? ??? ???? ?? ?? ????? ????? ?? ???????? ????? ?? ??????? ?? ?????? ?? ?? ????? ???? ???? ????. ???? ??? ????? ???????? ?? ?????? ?? ???????????? ??? (Sequential Algorithms) ?? ??????? ????? ??????? ?????? ?? ??????? ? ????? ?? ???? ?? ???????? ???????? ????. ?? ????? ????? ???? ?? ????? ????????? ???? ??? ???? ?? ???????? ??????? ??? ?? ???? ?? ???? ?????? ?????? ?? ????? ???. ?? ???????? ??? ????? ?????? ????? ???????. ??? ??? ????? ????? ?? ?? ????? ????? ????? ???? ??? ??? ?????????? ????? ?????? ????? ????? ??????? ?? ??? ?? ????? ???? ????? ???? ????? ???? ?? ????? ???????? ??? ????? ???? ??? ???? ?? ????? ???????? ????. ?? ???? ?????? ??????? ?????? ?????? ???? ??????? ????? ??? ???. ?????? (Semaphore) ?? ?????? ???? ?????? ?? ?? ???????? ??????? ???? ????? ?????? ???????? ?? ????? ????? ?????? ??????. ?????? ???????? ?? ?? ???? ?????? (?? ???? ?? ????? ???? ? ??? ?? ???? ???) ?? ??????? ????? ???? ????. ?? ?????? ???? ??????? ?? ????? ????? ?????? ???? ???????? ??????? ???????. ?? ??? ?????? ??????? ???? ?????? ?? ?? ?? ???? ???? ?? ?????? ?? ???? ????? ?????? ???? ? ???????? ?? ?? ?????? ?? ??????.

???????? ????? ??? ???????? ??????? ???? ?????? ?????? ????? ??????? ????? ???? ? ?????? ?????? ????????? ?? ????????????? ???? ??????? ???? ????????.

??? ????? ??? ??? ?? ?? ?? ??? ?????? ????????? ?? ????? ?????????? ???? ?? ??????? ?????? ????. ?? ?????? ?? ??????? ?? ???? ???? ?? ???? ????? ????? ? ?? ????? ?????? ???? ?? ????? ?? ??????? ????. ???? ????? ??? ???? ?? ???????? ???? ?????? ?????? ??????? ???????. ?? ??????? ?? ?????? ?? ???? ????? ?????? ????? ????? ????? ??? ?? ????? ????? ???:

  1. ????? ?????? ?? ????? ??????.
  2. ?? ????? ?? ????? ?????? ???? ????? ?????? ???????? ?? ???? ????? ??????? ???. ?? ??? ????? ?????? ?? ???? ?? ?????? ??????? ?? ???? ??? ?? ?? ???? ?? ???? ????? ?? ??????? ???? ???.
  3. ?? ????? ?? ????? ?????? ??? ?? ??????? ?? ??? ????? ?????? ?? ???? ?????? ?? ????? ?? ?????? ?????? ???? ?? ??? ?????. ?? ??? ???? ?????? ?? ???? ????? ??? ? ?? ????? ?? ???? ??????.
  4. ?????? ?? ?????? ??? ??? ?? ?? ???? ???? ???? ?? ???? ?? ?????? ????? ???????. ?? ???? ?? ????? ?????? ?? ??? ?? ????? ????? ??? ?? ??????(????) ?? ?? ???? ???? ?? ???? ?????? ?? ?? ??? FIFO ???? ?????????? ????? ??????. ?? ??? ????? ???????? ?????? ????? ???? ???? ?? ?? ??? ??????? ? ?????? ?? ?? ????? ??? ?? ???? ?? ?????? ?? ??????. ??? ????? ??????? ??? ???? ? ??? ?????? ????? ??? ?? ?? ???? ????? ????? ?? ?????? ?? ????? ??????? ????? ?????? ?????? ??? ???? ??????? ??? ??? ?? ????????? ????? ???? ???? ??????.

????? ???????? ????? ????

????? ???????? ????? ???? (Timestamp-based concurrency control) ?? ???? ???????? ??? ?? ???????????? ????? ???????? ???? ??? ??? ?? ???? ????? ???????? ????????? ?? ???? ?? ?????????? ????? ???? ??? ????? ???? ??????? ??????. ??? ???????? ??? ???? ?????? ?? ????? ??????.

????? ???????? ??????????

????? ???????? ?????????? (Multiversion Control Concurrency) ?? ????? ?????? ???? ???? ??????? ?? ??? ????? ???????? ??? ?? ??????? ???? ?????????? ?????? ?????? ???? ???? ????? ?????? ??????? ?? ?????? ???? ??????? ??????. ?????? ?? ???????? ???????????? ???? ?????????? ????? ??????? ?? ??? ??????.

???? ????? ????????? ??? ??? ?? ??? ?????? ?? ?? ?????? ???? ???? ? ?????? ??? ????? ?? ?? ??????? ???? ??? ??????? ?? ???? ??????? ?? ???? ????? ???? ?? ?????? ??? ?? ?????. ?????? ????? ????? ?????? ???? ??? ?? ???? ????? ??? ???????? ????? ?? ??? ?? ???? ???? ??? ??? ? ??? ?? ????? ??? ?? ???? ????? ??????? ???? ?? ?? ???? ??????? ?? ??? ?????? ?? ??? ?? ???? ?????? ???? ???. ????? (isolation) ?? ????? ??? ?? ?????????? ??????? ?? ???? ?? ????? ??????. ????? ?? ??????? ?? ???? ? ????? ?????????? ????? ???????? ?????????? ??????. ????????? ??? ??? ??? ?? ??? ????????? ????? ?????? ?? ????? ????? ??? ?? ?? ????? ?? ??? ?????? – ????? ?????? ??????. ?????? ???? ????? ?????? ???????? ??????? ??? ?????????? ?????? ?????? ? ?????????? ???????????. ??? MVCC? ?? ???? ?? ??? ????? ????? ???? ?? ?? ?? ?? ??????? ???. ???? ?????? ?? ?????? ?? ?? ?????? ???? ???? ???? ?? ????? (snapshot) ?? ?????? ???? ?? ?? ?? ???? ??? ?? ???? ???????. ?? ???? ?????? ?? ???? ?? ??????? ????? ??? ???? ???? ???? ??????? ?????? ???? ?? ????? ?? ??????? ????? ???? ???? (?? ?? ????? ?????? ????? ?? ????? ?? ?????? ???? ???) ?????? ???????.

?????? ?? ?? ?????? ???? MVCC ?? ???? ?? ???? ?? ??????????? ??????? ???? ???? ?? ?? ???? ???? ??????? ?????? ??? ???? ?? ???? ???? ?? ?? ???? ????? ??????. ???????? ????? ???? ?? ???? ????? ??????. ??????? ?? ?? ?????? ?????? ?????? ?? ??? ?????? ???? ??? (isolation level) ????? ????. ????????? ??? ??????? ?? MVCC? ??????? ???? (snapshot isolation) ???. ?? ??? ??????? ????? ?? ?????? ????? ???? ?? ???????? ???? ????? ?????? ?????? ??????. MVCC ???? ?????? ??? ????????? ?? ?? ????? ??? ? ???? ?????? ?????? ?? ?? ????? ??????. ?? ???? ?????? ?? ?????? ?? ???? ??????? ?? ???? ??? ???????? ????? ???? ??????. ??? ???? ?? ?????? ???? ??? ??? ?? ?? ???? ???? ?? ?????? ?????? ? ?? ?? ?? ????? ???? ?? ?? ?? ???????? ???? ???????? ??????. PostgreSQL ?? ??????? ?? ?????? VACUUM ??? ???????? ????? ??? ?? ????? ??????.

??????? ???????? ????? ???????? ?????????? ?? ?? ?? ???? ????? ???????: ??? ???? ? Undo log. ??? ???? ????? ????? ???? ???? ??? ?? ??? ???????. Undo log ????? ??????? ???????? ???????? ??????? ?? ????? ??????. ??????? ???? ???? ?????? ??? ??? ??? ?? ???? ??? ???? ??????????? ?????? ???? ????? ???? ?? undo log ????????? ???? ??? ? ?? ?? ??? ????????? ?? ???? ??? ??????? ?? ????? ????? ?? ?????? ???? ??? ???????. ???? ?? ?????? ???? ????? ?? ???? ?????? ????? ?????? ?? ????? ?? ????? ?????????? ????? ?? ????? ???? ????? ?? ??????? ????? ????? ?????? ?? ?????? ??????? ?? ??? ???? ???????? ???? ?? ??? ????? ?????? ? ?????? ??? ???? ?? ?? ?????? ?????? ???? ?????? ????? ???????? ????.

MVCC ?????????? ?????? ?? ???? ??????? ?? ????? ??????. ?????????? ?????? ??? MVCC ???? ????? ?????? ?? ???? ???????? ?? ???? ?????? ???? ?????? ????? ?? ?? ??????? ???? (time stamp) ?? ????? ?????? ??????? ??????? ? ??? ???? ?? ??????? ?? ?????????. ????????? ?????????? ?????? ? ????? ???? ???? ?? ??? ??? ?? ??????? ??? ???????. ?? ??? ???? ??????? ????? ????? ???? ?? ???? ?? ?????????? ???? MVCC ????? ?????? ??????? ??????. ?????? ?? ???? ?????? ????? ?????? ?? ???? ?? ?????? ?????? ?? ??? ?? ?? ???? ????? ?????? ???? ??????.

???????? ???????

???????? ??????? ?? ???????? ????? ????? ? ?????? ?? ?????? ??? ?? ???? ????? ?????? ????? ????? ?? ????? ?? ?? ????? ????????? ????? ??????? ????? ???? ?? ???? ????? ?????? ??? ??????? ?? ?? s-state ????? ?????? ?? ???? ??? ????????? ?? ??? ?????? ???? ????? ?????? ?? ??? ?? ?????????? ? ????? ????? ???? ????? ???. ???????? ??????? ?? ???? ?? ?? ?????? ??????? ???? ???? ???? ?????????? ???? ??????. ???????? ?? ????? ????? ?? ????? ??????? ?? ?????? ??????? ??????. ??? ?? ????? ??? ?? ??? ????? ??? ?? ????? ??????? ???????? ????? ?? ?? ???? ????? ????. (????? ?? ?????? ???????? ?? ???). ?????? ?? ?? ?????? ???? ???? ?? ????? ?????? ???? ?????? ????? ??????? ?? ?? ?? ?? ????? ?? ????? ??? ?? ????? ????? ?? ????? ?? ????? ?? ????? ????? ???. ?????? ?????? ?? ?? ?????? ??? ????? ???????? ?? ????? ??????? ???? ????? ?? ?? ?? ????? ???????? ?????????.

???????? ??????? ???? ????? ??? ???? ?? ?????? ?? ????? ??? ????:

  • ?? ?????? ?? ????? ?? ?? ??? ???? ?? ??????? ????? ???.
  • ?? ?????? ?? ????? ?? ?? ??? ???? ?? ?? ?????? ????.
  • ?? ?????? ?? ?? ???? ????? ???.

???????? ??????

???????? ?????? ?? ???????? ???????????? ?????? ???? ?????? ?????? ??? ?? ?? ?? ?????? ????? ?????? ?? ?? ?? ???? ????? ???? ??? ?????? ??????? ???? ? ?? ????? ????? ???? ???? ???????? ???? ?????. ??? ???????? ????? ??? ?? ?????? ?? ??? ???? ????? ??. ?? ?????? ?? ???????? ???? ?????? ???? ???? ?? ?????? ???? ???? ???? ???????? ?? ??????? ??????? ??? ???? ??? ?? ?? ?????? ????? ???. ?????????? ???????? ?????? ? ???? ???????????? ?????? ?? ??? ?? ?????????? ?? ?????? ?????? ???? ?? ????? ?????? ??????? ??????? ???? ???? ????? ?? ????? ???? ? ???????? ???????? ???.

???????? ???

???????? ??? (Dekker’s algorithm) ?? ???????? ???????????? ?????? ???? ?????? ?????? ??? ?? ?? ?? ?????? ????? ?????? ?? ?? ?? ???? ????? ???? ??? ?????? ??????? ???? ? ?? ????? ????? ???? ???? ???????? ???? ?????. ??? ???????? ???? ????? ??????? ????? ???????.

???????? ???????

???????? ??????? (Bakery algorithm)? ????????? ????????? ??? ?? ???? ???? ??????? ??????? ???? ???????? ????? ???????. ??? ????????? ?? ??????? ?? ?????? ??????? ????? ??????? ?? ????? ????? ???? ?????? (Thread) ?? ?????? ?????? ???? ??????? ?? ????? ???????. ?? ????? ????? ?? ???? ????????? ?? ?????? ?? ????? ????? ???? ?????? ?????? ??? ?? ??????? ?? ???? ?????? ?? ?????. ??? ???? ????? ???????? ?? ????????? ???? ?? ?????? ??????? ?? ?? ??????? ?? ?? ???? ????? ????. ??? ?? ?? ??? ???? ?????? ??????? ?? ??? ???? ?? ????? ??????? ?? ??? ??? ?? ????? ????? ?????? ????? ?? ???? ???? ????? ???? ????? ?? ??????? ???????? ????? ???? (Data corruption) ????? ???????. ???????? ??????? ?????? ??? ?? ????? ???????? ????????? ??? ?? ?? ??????? ?? ?????? ??????? ?? ???? ???????? ?????? ?? ??????? ?????? ?? ? ?? ????? ????? ????? ??????? ??????.

???????????? ?????????????

?? ???? ??????? ?? ?? ???????? ????????????? ????????? ??? ?? ??? ?????? ?? ???? ?? ???? (??????) ???? ?? ??? ?????? ?? ???? ?? ????? ???? ????. ???? ???? ?????????? ??? ??????????? ??????? ?????? ???? ?????????????? ?????????? ???? ?????. ??? ?? ???????? ?????????????? ?????? ?? ??? ????? ?? ????? ???? ?? ?? «???? ???» ?? «???? ?? ???» ????????. ??? ?? ???????? ?????????????? ?????? ?? ??? ???? ?? ?? ????? ???? ?? ?? «???? ??????» ?? «???? ?? ??????» ????????.

??? ?????

??? ????? (spinlock) ???? ??? ?? ???? ?????? ??????? ???? ?????? ????? ?? ?? ?? ???? ????? ????? (???? ?? ???) ? ???? ????? ? ????? ?? ??? ?? ??? ??? ???? ??? ?? ???. ?? ????? ?? ?????? ?????? ????? ??? ??? ??? ????? ?? ????? ???????? ??????? ?? ???? ????? ???? ?????? ????? ???. ??????? ????? ?? ?? ???? ?????? ????? ????? ??????? ?? ????? ?? ?????? ???? ???? ?????? ??? ????? ???????? ????? ?? ???? ?????????????? ?? ???? ????? ??? ?????? (??????? ?? ??? ?? ??? ???????) ?? ?? ???? ???? ??? ???? ??? ??? ?????? ?????? ???? ???. ?? ????? ?? ??????? ????? ?? ????? ???? ?? ????????? ???? ????????? ???? ?????????? ?? ????? ????? ??????? ???????? ??? ?? ????? ?????? ????? ?? ????????? ???????? ??? ???? ??? ?????? ????? ????. ?? ???? ????? ???????? ?????????? ???? ?? ??????? ????? ??????? ???????. ?? ??? ???? ??????? ????? ??? ???? ??? ?????? ??? ????? ????? ?????? ?????? ???? ???? ??? ?? ????? ???? ????????? ??????? ???? ? ???? ?? ????????? ???? ????? ?????. ???? ?????? ????? ??? ?? ??? ????? ??? ????? ???? ?? ?????? ???? ??????? ?????????? ?? ??? ??? ????? ???? ????? ????? ???. ??? ??? ????? ?????? ?????????? ???? «?? ??? ????» ???? ???????? (???? ?????? ???? ??? ?? ?????? ????? ??? ?????)? ?? ???? ?? ?????? ?????????? ??? ??????? ?? ??? ???? ???? ??? ?????. ????? ??? ?????? ?? ????? ??????? ??? ?? ????? ?? ?????? ?????????? ??? ?????? ??? ??? ?? ???? ???? ? ??? ?? ???? ???. ??? ??? ??????? ?? ????????? ?? ??????????? ???? ??? ?? ?? ?? ?? ?????? ?? ??? ?????? ?? ?????? ????? ???????? ??? ????? ??? ?? (???? ?????? ???? ??? ?? ?? ??? ???? ?? ?????? ???????? ???? ???) ?? ??? ???? ??? ?????? ?? ??????? ??????? ?? ??? ?? ??? ?????? ?? ????? ????. ?????????? ???? ??? ????? ???????????? ???? ???? ????????????? ???? ????? ?????? ?????? ?? ??? ?? ?? ??? ?????? ?? ??? ??? ???????? ???? ????? ????? ????????? ???. ?????? ???? ?????????? ??? ????? ??? ???????? ?????????????? ??? ???? ??????? ????? ?????? ?????? ??? ? ??? ?????????? ??? ? ?? ???????? ???????????? ?? ?? ?????? ?????? ????? ???????? ????????? ???????? ???? ???? ????. ?? ??????????? ?? ???? ??????? ?????? ?? ?? ???? ???? ?? ?????????? ???? ??? ????? ???? ??? ?? ?? ???????? ????????? ???????? ??????? ???? ???????? ???? ???????? ???????. ?? ??? ???? ???? ????????????? ???? ??? ?? ????? ?????? ???? ?? ??? ????? ???? ????? ????? ???? ????? ?????? ?? ?? ??? ???? ??? ????? ???? ? ???? ??? ????? ?? ???? ???? ???? ????? ???? ?? ?????? ???? ??? ???? ???? ?????.

??????? :

???? ??????

????: ???? ????

پویش #دو_درجه_کمتر
نمایش بیشتر

سعید باجلان

کارشناس ارشد نرم افزار وصاحب امتیاز پایگاه خبری سروش امنیت. مهارت ها: تسلط کامل به مباحث شبکه، سیسکو،هک و امنیت، مباحث مجازی سازی،بانک های اطلاعاتی فارنزیک

نوشته های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

Time limit is exhausted. Please reload the CAPTCHA.

همچنین ببینید
بستن
دکمه بازگشت به بالا