рднрд╛рд░реА рднрд░рдХрдо рд╕рд┐рд╕реНрдЯрдо рдореЗрдВ рдбреЗрдЯрд╛ рд╕рдВрдЧрддрд┐

рд╕рдорд╕реНрдпрд╛рдУрдВ


рд▓рдЧрднрдЧ рдХрд┐рд╕реА рднреА рд╕реВрдЪрдирд╛ рдкреНрд░рдгрд╛рд▓реА рдХреЛ рдирд┐рд░рдВрддрд░ рдЖрдзрд╛рд░ рдкрд░ рдбреЗрдЯрд╛ рд╕рдВрдЧреНрд░рд╣рдг рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рдЫреЛрдЯреЗ рдФрд░ рдордзреНрдпрдо рднрд╛рд░ рд╡рд╛рд▓реА рдЕрдзрд┐рдХрд╛рдВрд╢ рдкреНрд░рдгрд╛рд▓рд┐рдпреЛрдВ рдореЗрдВ, рдпрд╣ рдлрд╝рдВрдХреНрд╢рди рд░рд┐рд▓реЗрд╢рдирд▓ DBMS рджреНрд╡рд╛рд░рд╛ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬрд┐рд╕рдХрд╛ рдирд┐рд░реНрд╡рд┐рд╡рд╛рдж рд▓рд╛рдн рдбреЗрдЯрд╛ рд╕рдВрдЧрддрд┐ рдХреА рдЧрд╛рд░рдВрдЯреА рд╣реИред

рдПрдХ рдХреНрд▓рд╛рд╕рд┐рдХ рдЙрджрд╛рд╣рд░рдг рдЬреЛ рдмрддрд╛рддрд╛ рд╣реИ рдХрд┐ рдбреЗрдЯрд╛ рд╕рдВрдЧрддрд┐ рдХреНрдпрд╛ рд╣реИ - рдПрдХ рдЦрд╛рддреЗ рд╕реЗ рджреВрд╕рд░реЗ рдЦрд╛рддреЗ рдореЗрдВ рдзрдирд░рд╛рд╢рд┐ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдиреЗ рдХрд╛ рд╕рдВрдЪрд╛рд▓рдиред рдЙрд╕ рд╕рдордп рдЬрдм рдПрдХ рдЦрд╛рддреЗ рдХрд╛ рд╢реЗрд╖ рд░рд╛рд╢рд┐ рдмрджрд▓рдиреЗ рдХрд╛ рдХрд╛рд░реНрдп рдкреВрд░рд╛ рд╣реЛ рдЪреБрдХрд╛ рд╣реЛрддрд╛ рд╣реИ рдФрд░ рджреВрд╕рд░реЗ рдХреЗ рдкрд╛рд╕ рдЕрднреА рд╕рдордп рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИ, рддреЛ рд╡рд┐рдлрд▓рддрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИред рдлрд┐рд░ рдзрди рдПрдХ рдЦрд╛рддреЗ рд╕реЗ рдбреЗрдмрд┐рдЯ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛, рд▓реЗрдХрд┐рди рджреВрд╕рд░реЗ рдХреЛ рдЬрдорд╛ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рд╕рд┐рд╕реНрдЯрдо рдбреЗрдЯрд╛ рдХреА рдЗрд╕ рд╕реНрдерд┐рддрд┐ рдХреЛ рдЕрд╕рдВрдЧрдд рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░, рд╢рд╛рдпрдж, рдпрд╣ рд╕рдордЭрд╛рдиреЗ рдХреА рдХреЛрдИ рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдЗрд╕рд╕реЗ рдХреНрдпрд╛ рдкрд░рд┐рдгрд╛рдо рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред рд╕рдВрдмрдВрдзрдкрд░рдХ рдбреАрдмреАрдПрдордПрд╕ рдПрдХ рд▓реЗрдирджреЗрди рддрдВрддреНрд░ рдкреНрд░рджрд╛рди рдХрд░рддреЗ рд╣реИрдВ рдЬреЛ рдХрд┐рд╕реА рднреА рд╕рдордп рдбреЗрдЯрд╛ рд╕реНрдерд┐рд░рддрд╛ рдХреА рдЧрд╛рд░рдВрдЯреА рджреЗрддрд╛ рд╣реИред рд▓реЗрди-рджреЗрди рдПрдХ рдкрд░рд┐рдЪрд╛рд▓рдирд╛рддреНрдордХ рдкрд░рд┐рдорд╛рдг рд╣реИ рдЬреЛ рдПрдХ рд╕реБрд╕рдВрдЧрдд рдЕрд╡рд╕реНрдерд╛ рдХреЛ рджреВрд╕рд░реЗ рд╕реБрд╕рдВрдЧрдд рдЕрд╡рд╕реНрдерд╛ рдореЗрдВ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рддрд╛ рд╣реИред рдХрд┐рд╕реА рднреА рдХрджрдо рдкрд░ рддреНрд░реБрдЯрд┐ рдХреА рд╕реНрдерд┐рддрд┐ рдореЗрдВ, DBMS рд╕рднреА рдкреВрд░реНрд╡ рдореЗрдВ рдХрд┐рдП рдЧрдП рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рд░рджреНрдж рдХрд░ рджреЗрддрд╛ рд╣реИ рдФрд░ рдбреЗрдЯрд╛ рдХреЛ рдЙрд╕рдХреА рдореВрд▓ рд╕рд╣рдорддрд┐ рд╡рд╛рд▓реА рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд▓реМрдЯрд╛ рджреЗрддрд╛ рд╣реИред рджреВрд╕рд░реЗ рд╢рдмреНрджреЛрдВ рдореЗрдВ, рдпрд╛ рддреЛ рд╕рднреА рдСрдкрд░реЗрд╢рди рдХрд┐рдП рдЬрд╛рдПрдВрдЧреЗ, рдпрд╛ рдПрдХ рднреА рдирд╣реАрдВред

рдмрдбрд╝реЗ рдкреИрдорд╛рдиреЗ рдкрд░ рдкреНрд░рдгрд╛рд▓рд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП, рдмрд╣реБрдд рднрд╛рд░реА рд▓реЛрдб рдХреЗ рдХрд╛рд░рдг рдЙрдирдореЗрдВ рдПрдХрд▓ рдбреЗрдЯрд╛рдмреЗрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣рдореЗрд╢рд╛ рд╕рдВрднрд╡ рд╣реЛрддрд╛ рд╣реИред рдРрд╕реЗ рдорд╛рдорд▓реЛрдВ рдореЗрдВ, рдкреНрд░рддреНрдпреЗрдХ рд╕рд┐рд╕реНрдЯрдо рдореЙрдбреНрдпреВрд▓ (рд╕реЗрд╡рд╛) рдЕрдкрдиреЗ рдЕрд▓рдЧ рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЗ рд╕рд╛рде рдкреНрд░рджрд╛рди рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рдпрд╣ рд╕рд╡рд╛рд▓ рдЙрдарддрд╛ рд╣реИ рдХрд┐ рдЗрд╕ рддрд░рд╣ рдХреЗ рдХреНрд▓рд╕реНрдЯрд░ рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░ рдХреЗ рд▓рд┐рдП рдбреЗрдЯрд╛ рд╕реНрдерд┐рд░рддрд╛ рдХреИрд╕реЗ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХреА рдЬрд╛рдПред

рдбреЗрдЯрд╛ рд╕рдВрдЧрддрд┐ рдХрд╛ рд╕рдорд╛рдзрд╛рди


рдПрдХ рд╕рдорд╛рдзрд╛рди рд╡рд┐рддрд░рд┐рдд рд▓реЗрдирджреЗрди рд╣реИред рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдХреНрд▓рд╕реНрдЯрд░ рдХреЗ рд╕рднреА рдиреЛрдбреНрд╕ рдХреЛ рд╕рд╣рдордд рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рдСрдкрд░реЗрд╢рди рд╕рдВрднрд╡ рд╣реИ, рдлрд┐рд░ рдкрд░рд┐рд╡рд░реНрддрди рд╕рднреА рдиреЛрдбреНрд╕ рдХреЗ рд▓рд┐рдП рдкреНрд░рддрд┐рдмрджреНрдз рд╣реИрдВред рдЪреВрдВрдХрд┐ рдиреЛрдбреНрд╕ рдореЗрдВ рдХреЛрдИ рдЖрдо рднрдВрдбрд╛рд░рдг рдЙрдкрдХрд░рдг рдирд╣реАрдВ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЖрдо рд░рд╛рдп рдореЗрдВ рдЖрдиреЗ рдХрд╛ рдПрдХрдорд╛рддреНрд░ рддрд░реАрдХрд╛ рдХреБрдЫ рд╡рд┐рддрд░рд┐рдд рдЖрдо рд╕рд╣рдорддрд┐ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕рд╣рдордд рд╣реЛрдирд╛ рд╣реИред

рд╡реИрд╢реНрд╡рд┐рдХ рд▓реЗрдирджреЗрди рдкрд░ рдХрдмреНрдЬрд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рд░рд▓ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рджреЛ-рдЪрд░рдг рдкреНрд░рддрд┐рдмрджреНрдз (2PC) рд╣реИред рд▓реЗрдирджреЗрди рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдиреЛрдб рдХреЛ рд╕рдордиреНрд╡рдпрдХ рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИред рддреИрдпрд╛рд░ рдЪрд░рдг (рддреИрдпрд╛рд░) рдореЗрдВ, рд╕рдордиреНрд╡рдпрдХ рд▓реЗрдирджреЗрди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдиреНрдп рдиреЛрдбреНрд╕ рдХреЛ рд╕реВрдЪрд┐рдд рдХрд░рддрд╛ рд╣реИ рдФрд░ рдЙрдирд╕реЗ рдкреБрд╖реНрдЯрд┐ рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░рддрд╛ рд╣реИ рдХрд┐ рд╡реЗ рдкреНрд░рддрд┐рдмрджреНрдз рд╣реИрдВред рдпрджрд┐ рдХрдо рд╕реЗ рдХрдо рдПрдХ рдиреЛрдб рддреИрдпрд╛рд░ рдирд╣реАрдВ рд╣реИ, рддреЛ рд▓реЗрдирджреЗрди рдЯреВрдЯ рдЬрд╛рддрд╛ рд╣реИред рдкреНрд░рддрд┐рдмрджреНрдз рдЪрд░рдг рдореЗрдВ, рд╕рдордиреНрд╡рдпрдХ рд▓реЗрди-рджреЗрди рдХрд░рдиреЗ рдХреЗ рдирд┐рд░реНрдгрдп рдХреЗ рд╕рднреА рдиреЛрдбреНрд╕ рдХреЛ рд╕реВрдЪрд┐рдд рдХрд░рддрд╛ рд╣реИред рд╕рднреА рд╕реЗ рдкреБрд╖реНрдЯрд┐ рдкреНрд░рд╛рдкреНрдд рд╣реЛрдиреЗ рдкрд░ рдХрд┐ рд╕рдм рдХреБрдЫ рдареАрдХ рд╣реИ, рд╕рдордиреНрд╡рдпрдХ рднреА рд▓реЗрдирджреЗрди рдХреЛ рдкрдХрдбрд╝ рд▓реЗрддрд╛ рд╣реИред

рдЫрд╡рд┐

рдЪрд┐рддреНрд░ 1 - рджреЛ-рдЪрд░рдгреАрдп рдкреНрд░рддрд┐рдмрджреНрдзрддрд╛ рдХреА рд╕рд╛рдорд╛рдиреНрдп рдпреЛрдЬрдирд╛


рдпрд╣ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдиреНрдпреВрдирддрдо рд╕рдВрджреЗрд╢реЛрдВ рд╕реЗ рдмрдЪрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдордЬрдмреВрдд рдирд╣реАрдВ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрджрд┐ рд╕рдордиреНрд╡рдпрдХ рддреИрдпрд╛рд░реА рдХреЗ рдЪрд░рдг рдХреЗ рдмрд╛рдж рд╡рд┐рдлрд▓ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рд╢реЗрд╖ рдиреЛрдбреНрд╕ рдХреЛ рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рдирд╣реАрдВ рд╣реЛрддреА рд╣реИ рдХрд┐ рдХреНрдпрд╛ рд▓реЗрди-рджреЗрди рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдпрд╛ рд░рджреНрдж рдХрд░ рджрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП (рдЙрдиреНрд╣реЗрдВ рд╡рд┐рдлрд▓ рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП рдЗрдВрддрдЬрд╛рд░ рдХрд░рдирд╛ рд╣реЛрдЧрд╛)ред 2PC рдХрд╛ рдПрдХ рдФрд░ рдЧрдВрднреАрд░ рджреЛрд╖ (рдФрд░ рдЕрдиреНрдп рд╡рд┐рддрд░рд┐рдд рд▓реЗрди-рджреЗрди рдкреНрд░реЛрдЯреЛрдХреЙрд▓, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП 3PC) рдпрд╣ рд╣реИ рдХрд┐ рдЬреИрд╕реЗ рд╣реА рдХреНрд▓рд╕реНрдЯрд░ рдиреЛрдбреНрд╕ рдХреА рд╕рдВрдЦреНрдпрд╛ рдмрдврд╝рддреА рд╣реИ, рджреЛ-рдЪрд░рдг рдХрдорд┐рдЯ рдХрд╛ рдкреНрд░рджрд░реНрд╢рди рдХрдо рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред

рдЫрд╡рд┐

рдЪрд┐рддреНрд░рд╛ 2 - рдПрдХ рдбреАрдмреАрдПрдордПрд╕ рдХреНрд▓рд╕реНрдЯрд░ рдореЗрдВ рд╕рд░реНрд╡рд░реЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдкрд░ рджреЛ-рдЖрдзрд╛рд░ рдкреНрд░рддрд┐рдмрджреНрдз рдХреА рдЧрддрд┐ рдХреА рдирд┐рд░реНрднрд░рддрд╛


рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рд╡рд┐рддрд░рд┐рдд рд▓реЗрдирджреЗрди рджреГрд╖реНрдЯрд┐рдХреЛрдг рдПрдХ рд╕реАрдорд╛ рд▓рдЧрд╛рддрд╛ рд╣реИ: рд╕рд┐рд╕реНрдЯрдо рдХреЗ рд╕рднреА рдореЙрдбреНрдпреВрд▓ рдХреЛ рдЙрд╕реА DBMS рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП, рдЬреЛ рд╣рдореЗрд╢рд╛ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИред

рдПрдХ рдЕрдиреНрдп рд╡рд┐рдХрд▓реНрдк рдПрдХ рддрдВрддреНрд░ рдкреНрд░рджрд╛рди рдХрд░рдирд╛ рд╣реИ рдЬреЛ рдЖрдкрдХреЛ рдПрдХ рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЗ рд░реВрдк рдореЗрдВ рд╡рд┐рднрд┐рдиреНрди рдбреЗрдЯрд╛рдмреЗрд╕ (рд╕реЗрд╡рд╛рдУрдВ рдХреЗ рд▓рд┐рдП) рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ (рд╡рд┐рддрд░рд┐рдд рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рдбреЗрдЯрд╛ рдЕрдЦрдВрдбрддрд╛ рдХреЗ рд╕рд╛рде рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП)ред рдЙрд╕реА рд╕рдордп, рдПрдХ рд╡рд┐рддрд░рд┐рдд рдкреНрд░рдгрд╛рд▓реА ("рд╡реНрдпрд╛рдкрд╛рд░ рд▓реЗрдирджреЗрди") рдХреЗ рд▓рд┐рдП рд▓реЗрдирджреЗрди рдХрд╛ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рдПрдирд╛рд▓реЙрдЧ рдЖрд╡рд╢реНрдпрдХ рд╣реИред

рд╕рд╛рдорд╛рдиреНрдп рд▓реЗрдирджреЗрди рдореЗрдВ, рд╕рд╛рде рд╣реА рд╕рд╛рде рджреЛ-рдЪрд░рдг рдХреЗ рдЖрд╡рд╛рдЧрдорди рдореЗрдВ, рд╕рднреА рд╕рдВрдЪрд╛рд▓рди рд▓реЗрдирджреЗрди рддрдВрддреНрд░ (рддрд╛рд▓реЗ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ) рджреНрд╡рд╛рд░рд╛ рдирд┐рдпрдВрддреНрд░рд┐рдд рд╣реЛрддреЗ рд╣реИрдВ, рдФрд░ рдпрд╣ рдХрд┐рд╕реА рднреА рдСрдкрд░реЗрд╢рди рдХреЛ рд╡рд╛рдкрд╕ рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рдкреНрд░рджрд╛рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ (рдирд┐рд░рд╛рд╢рд╛рд╡рд╛рджреА рджреГрд╖реНрдЯрд┐рдХреЛрдг - рд╣рдо рдХрд┐рд╕реА рднреА рдСрдкрд░реЗрд╢рди рдХреЛ рд╕рдВрднрд╛рд╡рд┐рдд рд░реВрдк рд╕реЗ рд╡рд┐рдлрд▓рддрд╛ рдХрд╛ рдХрд╛рд░рдг рдорд╛рдирддреЗ рд╣реИрдВ)ред рдпрд╣ рд╕рд┐рд╕реНрдЯрдо рдХреА рдЕрдбрд╝рдЪрди рд╣реИред рдПрдХ рд╡рд┐рдХрд▓реНрдк рддрдерд╛рдХрдерд┐рдд рдЖрд╢рд╛рд╡рд╛рджреА рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╣реИ: рд╣рдорд╛рд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛрд╣реИ рдХрд┐ рдЕрдзрд┐рдХрд╛рдВрд╢ рдСрдкрд░реЗрд╢рди рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рдкреВрд░рд╛ рд╣реЛ рдЧрдП рд╣реИрдВред рд╣рдо рдПрдХ рд╡рд┐рдлрд▓рддрд╛ рдХреЗ рддрдереНрдп рдкрд░ рдЕрддрд┐рд░рд┐рдХреНрдд рдХрд╛рд░реНрд░рд╡рд╛рдИ рднреА рдХрд░рддреЗ рд╣реИрдВред рдпрд╛рдиреА рдЕрдзрд┐рдХрд╛рдВрд╢ рдкрд░рд┐рдЪрд╛рд▓рдиреЛрдВ рдХреЗ рд▓рд┐рдП рд▓рд╛рдЧрдд рдХрдо рдХрд░рдирд╛, рдЬрд┐рд╕рд╕реЗ рдЙрддреНрдкрд╛рджрдХрддрд╛ рдореЗрдВ рд╡реГрджреНрдзрд┐ рд╣реЛрддреА рд╣реИред

рдПрдХ рдЧрд╛рдерд╛ рдХреНрдпрд╛ рд╣реИ рдФрд░ рдпрд╣ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддреА рд╣реИ


рдорд╛рдЗрдХреНрд░реЛрд╕ рд╕реЗрд╡рд╛ рд╡рд╛рд╕реНрддреБрдХрд▓рд╛ рдХреЗ рд▓рд┐рдП рд▓реЗрдирджреЗрди рдХрд╛ рдПрдХ рд╡рд┐рдХрд▓реНрдк рд╕рд╛рдЧрд╛ рд╣реИред рд╕рд╛рдЧрд╛ (рдЧрд╛рдерд╛) рдкреНрд░рдгрд╛рд▓реА (рд╕реЗрд╡рд╛рдУрдВ) рдХреЗ рд╡рд┐рднрд┐рдиреНрди рдореЙрдбреНрдпреВрд▓ рджреНрд╡рд╛рд░рд╛ рдХрд┐рдП рдЧрдП рдЪрд░рдгреЛрдВ рдХрд╛ рдПрдХ рд╕реЗрдЯ рд╣реИ; рдЧрд╛рдерд╛ рд╕реЗрд╡рд╛ рдХреА рднреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ, рдЬреЛ рдПрдХ рдкреВрд░реЗ рдХреЗ рд░реВрдк рдореЗрдВ рд╕рдВрдЪрд╛рд▓рди (рд╡реНрдпрд╛рдкрд╛рд░ рд▓реЗрдирджреЗрди) рдХреЗ рд▓рд┐рдП рдЬрд┐рдореНрдореЗрджрд╛рд░ рд╣реИред рд╕реНрдЯреЗрдкреНрд╕ рдХреЛ рдЗрд╡реЗрдВрдЯ рдЧреНрд░рд╛рдл рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЬреЛрдбрд╝рд╛ рдЬрд╛рддрд╛ рд╣реИред рдЧрд╛рдерд╛ рдкреВрд░реА рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж, рд╕рд┐рд╕реНрдЯрдо рдХреЛ рдПрдХ рд╕рд╣рдордд рд░рд╛рдЬреНрдп рд╕реЗ рджреВрд╕рд░реЗ (рд╕рдлрд▓ рдирд┐рд╖реНрдкрд╛рджрди рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ), рдпрд╛ рдкрд┐рдЫрд▓реЗ рд╕рд╣рдордд рд░рд╛рдЬреНрдп (рд░рджреНрдж рд╣реЛрдиреЗ рдХреА рд╕реНрдерд┐рддрд┐ рдореЗрдВ) рдкрд░ рд╡рд╛рдкрд╕ рдЬрд╛рдирд╛ рд╣реЛрдЧрд╛ред

рдПрдХ рд╡реНрдпрд╛рдкрд╛рд░ рд▓реЗрдирджреЗрди рдХреЗ рдРрд╕реЗ рд░рд┐рдЯрд░реНрди рдпрд╛ рд░реЛрд▓рдмреИрдХ рдХреЛ рдХреИрд╕реЗ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛рдП? рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЧрд╛рдерд╛ рдЪрд░рдгреЛрдВ рдХреЛ рд░рджреНрдж рдХрд░рдиреЗ (рдкреНрд░рддрд┐рдкреВрд░рдХ рдХрд╛рд░реНрдпреЛрдВ) рдХреЗ рддрдВрддреНрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреА рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЪрд░рдгреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рд╕рдлрд▓ рдерд╛ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдбреЗрдЯрд╛рдмреЗрд╕ рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рдПрдХ рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐ рдЬреЛрдбрд╝реА рдЧрдИ рдереА), рд▓реЗрдХрд┐рди рдирд┐рдореНрди рдЪрд░рдгреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рд╡рд┐рдлрд▓ рд╣реЛ рдЧрдпрд╛, рдФрд░ рдкреВрд░реА рдЧрд╛рдерд╛ рд░рджреНрдж рдХрд░ рджреА рдЬрд╛рдиреА рдЪрд╛рд╣рд┐рдПред рдлрд┐рд░ рдЙрд╕реА рд╕реЗрд╡рд╛ рдХреЛ рдПрдХ рдХрдорд╛рдВрдб рдорд┐рд▓рддреА рд╣реИ - рдХрд╛рд░реНрд░рд╡рд╛рдИ рд░рджреНрдж рдХрд░реЗрдВред рд▓реЗрдХрд┐рди рд╕реЗрд╡рд╛ DBMS рдореЗрдВ, рд╕реНрдерд╛рдиреАрдп рд▓реЗрдирджреЗрди рдкрд╣рд▓реЗ рд╣реА рдкреВрд░рд╛ рд╣реЛ рдЪреБрдХрд╛ рд╣реИ, рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд░рд┐рдХреЙрд░реНрдб рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ рд╣реИред рдлрд┐рд░, рдкрд┐рдЫрд▓реА рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд▓реМрдЯрдиреЗ рдХреЗ рд▓рд┐рдП, рд╕реЗрд╡рд╛ рдХреЛ рдПрдХ рдХреНрд╖рддрд┐рдкреВрд░реНрддрд┐ рдХрд╛рд░реНрд░рд╡рд╛рдИ рдХрд░рдиреА рд╣реЛрдЧреА (рд╣рдорд╛рд░реЗ рдЙрджрд╛рд╣рд░рдг рдореЗрдВ, рд░рд┐рдХреЙрд░реНрдб рд╣рдЯрд╛рдПрдВ)ред рдЪрд░рдгреЛрдВ рдХреЗ рдирд┐рд░рд╕реНрддреАрдХрд░рдг рд╕реЗ рдЕрд╕рдорд╛рдирддрд╛ ("рд╕рднреА рдпрд╛ рдХреБрдЫ рднреА") рдЧрд╛рдерд╛ рдХреЗ рдврд╛рдВрдЪреЗ рдХреЗ рднреАрддрд░ рд▓рд╛рдЧреВ рд╣реЛрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рдорд┐рд▓рддреА рд╣реИ - рд╕рднреА рдЪрд░рдгреЛрдВ рдХрд╛ рдкреНрд░рджрд░реНрд╢рди рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдпрд╛ рдореБрдЖрд╡рдЬрд╛ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рдЫрд╡рд┐

рдЪрд┐рддреНрд░рд╛ 3 - рд╕рд╛рдЧрд╛ рдХреЗ рдХрд╛рдо рдХрд╛ рддрдВрддреНрд░ рдФрд░ рдкреНрд░рддрд┐рдкреВрд░рдХ рдкреНрд░рднрд╛рд╡ рдХреА рдкреНрд░рдХреГрддрд┐


рдЪрд┐рддреНрд░рд╛ 3 рдореЗрдВ, рдЧрд╛рдерд╛ рдХреЗ рдЪрд░рдгреЛрдВ рдХреЛ T1 ... T4 рдХреЗ рд░реВрдк рдореЗрдВ рдирд╛рдорд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЬреЛ рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреА рдХреНрд╖рддрд┐рдкреВрд░реНрддрд┐ рдХрд░рддреЗ рд╣реИрдВ: C1 ... C4ред
рд╕рдЧрд╕ рд╕реНрдЯреЗрдкреНрд╕ рдХреА рдмреЗрдореЗрд▓рддрд╛ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддреЗ рд╣реИрдВ (рдПрдХ рдХреНрд░рд┐рдпрд╛ рдЬрд┐рд╕рдХрд╛ рджреЛрд╣рд░рд╛рд╡ рдПрдХ рдПрдХрд▓ рдХреЗ рдмрд░рд╛рдмрд░ рд╣реЛрддрд╛ рд╣реИ)ред Sag рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХрд┐рд╕реА рднреА рдЪрд░рдг рдХреЛ рджреЛрд╣рд░рд╛рдиреЗ рдХрд╛ рдЕрд╡рд╕рд░ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрджрд┐ рдЖрдкрдХреЛ рд╕рдлрд▓ рд╕рдорд╛рдкрди рдкрд░ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдирд╣реАрдВ рдорд┐рд▓реА рд╣реИ)ред рдЬрдм рдХреЛрдИ рднреА рдиреЛрдб (рд╡рд┐рдлрд▓рддрд╛ рдФрд░ рдкреБрдирд░реНрдкреНрд░рд╛рдкреНрддрд┐) рдкрд░ рдбреЗрдЯрд╛ рдЦреЛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ Idempotency рдЖрдкрдХреЛ рд╕реНрдерд┐рддрд┐ рдХреЛ рдкреБрдирд░реНрд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреА рднреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдЬрдм рдПрдХ рдХрджрдо рдХрд╛ рдкреНрд░рджрд░реНрд╢рди рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдкреНрд░рддреНрдпреЗрдХ рд╕реЗрд╡рд╛ рдХреЛ рдпрд╣ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ (рдХреНрдпрд╛ рдмреЗрд░реЛрдЬрдЧрд╛рд░реА рдХреБрдВрдЬреА рдХреЗ рджреНрд╡рд╛рд░рд╛) рдпрд╣ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЗрд╕ рдХрджрдо рдХрд╛ рдкреНрд░рджрд░реНрд╢рди рдХрд┐рдпрд╛ рд╣реИ рдпрд╛ рдирд╣реАрдВ (рдпрджрд┐ рдирд╣реАрдВ, рддреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░реЗрдВ, рдЕрдиреНрдпрдерд╛ рдЫреЛрдбрд╝реЗрдВ)ред рдХрд╛рд░реНрдпреЛрдВ рдХреА рднрд░рдкрд╛рдИ рдХреЗ рд▓рд┐рдП, рдпрд╣ рднреА рд╣реИ рдХрд┐ рдкрд░рд┐рдЪрд╛рд▓рди рдХреА рд╕реНрдерд┐рд░рддрд╛ рдФрд░ рд╕реНрдерд┐рд░рддрд╛ рдХреЛ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП idempotency рдЪрд╛рдмрд┐рдпрд╛рдБ рдФрд░ рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐ рдХреЛ рдЬреЛрдбрд╝рдирд╛ рд╕рдВрднрд╡ рд╣реИред

рд╕рд╛рд░рд╛рдВрд╢


ACID рд▓реЗрдирджреЗрди рдкреНрд░рдгрд╛рд▓реА (рдПрдЯреЛрдореЗрд╕реА, рд╕рдВрдЧрддрд┐, рдЕрд▓рдЧрд╛рд╡, рд╕реНрдерд┐рд░рддрд╛) рдХреЗ рд▓рд┐рдП рдЪрд╛рд░ рдЖрд╡рд╢реНрдпрдХрддрд╛рдУрдВ рдореЗрдВ рд╕реЗ, рд╕рд╛рдЧ рддрдВрддреНрд░ рдЖрдкрдХреЛ рдЕрд▓рдЧрд╛рд╡ рдХреЛ рдЫреЛрдбрд╝рдХрд░ рддреАрди - рд╕рднреА рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдЕрд▓рдЧрд╛рд╡ рдХреА рдХрдореА рд╕реЗ рд╡рд┐рд╕рдВрдЧрддрд┐ рд╣реЛ рд╕рдХрддреА рд╣реИ ("рдЧрдВрджреЗ рдкрдврд╝рддрд╛ рд╣реИ", "рдЧреИрд░-рджреЛрд╣рд░рд╛рдиреЗ рдпреЛрдЧреНрдп рдкрдврд╝рддрд╛ рд╣реИ", рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╡реНрдпрд╛рд╡рд╕рд╛рдпрд┐рдХ рд▓реЗрдирджреЗрди рдХреЗ рдмреАрдЪ рдкрд░рд┐рд╡рд░реНрддрди рдХреА рдкреБрдирд░реНрд▓реЗрдЦрди, рдЖрджрд┐)ред рдРрд╕реА рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдХреЛ рджреВрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЕрддрд┐рд░рд┐рдХреНрдд рддрдВрддреНрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдкрд░рд┐рд╡рд░реНрддрдирд╢реАрд▓ рд╡рд╕реНрддреБрдУрдВ рдХрд╛ рд╕рдВрд╕реНрдХрд░рдгред

рд╕рд╛рдЧрд╛ рдЖрдкрдХреЛ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ:

  • рд╡реНрдпрд╛рд╡рд╕рд╛рдпрд┐рдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдбреЗрдЯрд╛ рдХреЗ рд▓рд┐рдП рдирд┐рд░реНрднрд░ рдбреЗрдЯрд╛ рдкрд░рд┐рд╡рд░реНрддрди рдкреНрд░рджрд╛рди рдХрд░реЗрдВ;
  • рдЪрд░рдгреЛрдВ рдХрд╛ рдПрдХ рд╕рдЦреНрдд рдХреНрд░рдо рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛ;
  • 100% рд╕реНрдерд┐рд░рддрд╛ рдХреЗ рд╕рд╛рде рдЕрдиреБрдкрд╛рд▓рди (рджреБрд░реНрдШрдЯрдирд╛рдУрдВ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ рднреА рдбреЗрдЯрд╛ рд╕рдордиреНрд╡рдп рдХрд░реЗрдВ);
  • рд╕рднреА рд╕реНрддрд░реЛрдВ рдкрд░ рдкреНрд░рджрд░реНрд╢рди рдЬрд╛рдВрдЪ рдкреНрд░рджрд╛рди рдХрд░реЗрдВред

рд╕реНрдХреЛрдк рдФрд░ рдЖрд╡реЗрджрди рдЙрджрд╛рд╣рд░рдг


рдмрдбрд╝реА рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЗ рд╕рд╛рде рд╕рд┐рд╕реНрдЯрдо рдкрд░ рдЕрдХреНрд╕рд░ рд╕рд╛рдЧрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд▓реЛрдХрдкреНрд░рд┐рдп рдИрдореЗрд▓ рд╕реЗрд╡рд╛рдПрдБ, рд╕реЛрд╢рд▓ рдиреЗрдЯрд╡рд░реНрдХред рд╣рд╛рд▓рд╛рдВрдХрд┐, рджреГрд╖реНрдЯрд┐рдХреЛрдг рдЫреЛрдЯреЗ рдкреИрдорд╛рдиреЗ рдХреА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдореЗрдВ рдЖрд╡реЗрджрди рдкрд╛ рд╕рдХрддрд╛ рд╣реИред

рд╣рдорд╛рд░реА рдХрдВрдкрдиреА рдХреЗ рдкрд╛рд╕ рдПрдХ рдмрдбрд╝реЗ рдЙрджреНрдпрдо рдХреЗ рд▓рд┐рдП рдПрдХ рд▓реЗрдЦрд╛ рдкреНрд░рдгрд╛рд▓реА рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдиреЗ рдХрд╛ рдЕрдиреБрднрд╡ рд╣реИ, рдЬреЛ рдХрдИ рджрд░реНрдЬрдиреЛрдВ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ рдФрд░ рд╕рднреА рдбреЗрдЯрд╛ рдПрдХ рд░рд┐рд▓реЗрдмрд▓ рдбреАрдмреАрдПрдордПрд╕ рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд┐рдП рдЧрдП рдереЗред рдирд┐рдпреЛрдЬрд┐рдд рдХрд╛рд░реНрдп рдХреА рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдЧрдгрдирд╛ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рддреЗ рд╕рдордп рд╕рдорд╕реНрдпрд╛ рдЙрддреНрдкрдиреНрди рд╣реБрдИ: рдХреБрдЫ рдорд╛рдорд▓реЛрдВ рдореЗрдВ, рдЧрдгрдирд╛ рдмрд╣реБрдд рдмрдбрд╝реА рдереА рдФрд░ рдбреАрдмреАрдПрдордПрд╕ рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдореЗрдВ рд▓рд╛рдЦреЛрдВ рдЕрднрд┐рд▓реЗрдЦреЛрдВ рдХреЛ рд╕рдореНрдорд┐рд▓рд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдереА, рдЬрд┐рд╕рдиреЗ рдбреАрдмреАрдПрдордПрд╕ рдХреЛ рдХрд╛рдлреА рд▓реЛрдб рдХрд┐рдпрд╛ рдФрд░ рдкреВрд░реА рдкреНрд░рдгрд╛рд▓реА рдХреЗ рд╕рдВрдЪрд╛рд▓рди рдХреЛ рдзреАрдорд╛ рдХрд░ рджрд┐рдпрд╛ред

рдПрдХ рд╕рдорд╛рдзрд╛рди рдкрд╛рдпрд╛ рдЧрдпрд╛ - рдХрд╛рд░реНрдп рдЧрдгрдирд╛ рддрд░реНрдХ рдХреЛ рд╕реНрд╡рдпрдВ рдФрд░ рд╕рдВрдмрдВрдзрд┐рдд рд╡рд╕реНрддреБрдУрдВ рдХреЗ рднрдВрдбрд╛рд░рдг рдХреЗ рд▓рд┐рдП рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ DBMS рдХреЗ рд╕рд╛рде рдПрдХ рдЕрд▓рдЧ рд╕реЗрд╡рд╛ рдореЗрдВ рдбрд╛рд▓ рджрд┐рдпрд╛ред рдЧрд╛рдерд╛ рджреНрд╡рд╛рд░рд╛ рдбреЗрдЯрд╛ рд╕реНрдерд┐рд░рддрд╛ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХреА рдЧрдИ рдереАред рдпрджрд┐ рдЧрдгрдирд╛ рд╡рд┐рдлрд▓ рд╣реЛ рдЧрдИ, рддреЛ рдЖрд╡реЗрджрди рдХреЗ рдореБрдЦреНрдп рдореЙрдбреНрдпреВрд▓ рдХреЛ рддрд╛рд░реНрдХрд┐рдХ рдЧрдгрдирд╛ рдСрдкрд░реЗрд╢рди рдХреЛ рд░рджреНрдж рдХрд░рдиреЗ рдХреА рдЖрдЬреНрдЮрд╛ рдорд┐рд▓реАред

рд╕рд╛рдЧрд╛-рд╕рдХреНрд╖рдо рдкреБрд╕реНрддрдХрд╛рд▓рдп


рдЕрдиреБрдкреНрд░рдпреЛрдЧ .Net рдкрд░ рд╡рд┐рдХрд╕рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдФрд░ рдЗрд╕ рддрдХрдиреАрдХ рдХреЗ рд▓рд┐рдП рд╕рд╛рдЧрд╛ рдХреЗ рд╕рдорд░реНрдерди рдХреЗ рд╕рд╛рде рдХрдИ рд╕реЗрд╡рд╛ рдкреНрд░рдмрдВрдзрдХ рдкреБрд╕реНрддрдХрд╛рд▓рдп рд╣реИрдВред рд╣рдордиреЗ NServiceBus, MassTransit рдФрд░ Rebus рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреЛ рджреЗрдЦрд╛ред рдирддреАрдЬрддрди, рд╣рдо рд░реЗрдмрд╕ рдкрд░ рдмрд╕ рдЧрдП - рдпрд╣ рдкреБрд╕реНрддрдХрд╛рд▓рдп рд╕реАрдЦрдирд╛ рдЖрд╕рд╛рди рд╣реИ, рдЬрдмрдХрд┐ рд╕рд╛рдЧ рдХреЗ рд╕рд┐рджреНрдзрд╛рдВрдд рдХреЛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕рд╛рдХрд╛рд░ рдХрд░рдирд╛ рдФрд░ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрд╡рддрдВрддреНрд░ рд╣реИред NServiceBus рдФрд░ MassTransit рдЕрддрд┐рд░рд┐рдХреНрдд рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХреЗ рдЯрди рдХреЗ рд╕рд╛рде рдЕрдзрд┐рдХ рдкрд░рд┐рд╖реНрдХреГрдд рдЙрдкрдХрд░рдг рд╣реИрдВред рд╡реЗ рд╣рдорд╛рд░реЗ рдХрд╛рд░реНрдп рдХреЗ рд╣рд┐рд╕реНрд╕реЗ рдХреЗ рд░реВрдк рдореЗрдВ рдЖрд╡рд╢реНрдпрдХ рдирд╣реАрдВ рдереЗ, рд▓реЗрдХрд┐рди рднрд╡рд┐рд╖реНрдп рдореЗрдВ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдореЗрдВ рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ рддрд░реНрдХ рдХреЗ рд╕рд╛рде рдЙрдирдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЙрдЪрд┐рдд рд╣реЛ рд╕рдХрддрд╛ рд╣реИред

Source: https://habr.com/ru/post/hi431854/


All Articles