Highload IT පද්ධතිවල ක්‍රියාකාරීත්වයේ සහ සහය වීමේ ක්‍රියාවලි වල ගැටළු පහක්

හෙලෝ, හබ්ර්! මම වසර දහයක් තිස්සේ Highload IT පද්ධති සඳහා සහය දක්වයි. 1000+ RPS මාදිලියේ වැඩ කිරීමට nginx සැකසීමේ ගැටළු හෝ වෙනත් තාක්ෂණික දේවල් ගැන මම මෙම ලිපියෙන් ලියන්නේ නැත. එවැනි පද්ධතිවල සහාය සහ ක්‍රියාත්මක කිරීමේදී පැන නගින ක්‍රියාවලීන්හි ගැටළු පිළිබඳව මගේ නිරීක්ෂණ බෙදා ගන්නෙමි.

අධීක්ෂණය

“මොකද... වෙබ් අඩවිය නැවත ක්‍රියා නොකරන්නේ?” යන අන්තර්ගතය සමඟ ඉල්ලීමක් පැමිණෙන තෙක් තාක්ෂණික සහාය රැඳී නොසිටියි. වෙබ් අඩවිය බිඳ වැටීමෙන් පසු විනාඩියක් ඇතුළත, සහාය දැනටමත් ගැටලුව දැක එය විසඳීමට පටන් ගත යුතුය. නමුත් වෙබ් අඩවිය අයිස් කුට්ටියේ කෙළවරයි. එහි ඇති බව නිරීක්ෂණය කළ යුතු පළමු එකකි.

අන්තර්ජාල වෙළඳසැලක ඉතිරි භාණ්ඩ තවදුරටත් ERP පද්ධතියෙන් නොපැමිණෙන විට තත්වය සමඟ කුමක් කළ යුතුද? නැතහොත් සේවාදායකයින් සඳහා වට්ටම් ගණනය කරන CRM පද්ධතිය ප්‍රතිචාර දැක්වීම නතර කර තිබේද? අඩවිය වැඩ කරන බව පෙනේ. Conditional Zabbix හට එහි 200 ප්‍රතිචාර ලැබේ. රාජකාරි මුරය වෙත අධීක්‍ෂණයෙන් කිසිදු දැනුම්දීමක් ලැබී නොමැති අතර Game of Thrones හි නව වාරයේ පළමු කථාංගය සතුටින් නරඹයි.

අධීක්‍ෂණය බොහෝ විට මතකයේ තත්ත්වය, RAM සහ සේවාදායක ප්‍රොසෙසර භාරය මැනීමට පමණක් සීමා වේ. නමුත් ව්‍යාපාර සඳහා වෙබ් අඩවියේ නිෂ්පාදන ලබා ගැනීම වඩා වැදගත් වේ. පොකුරේ ඇති එක් අතථ්‍ය යන්ත්‍රයක කොන්දේසි සහිත අසාර්ථකත්වය ගමනාගමනය එයට යාම නතර වන අතර අනෙකුත් සේවාදායකයන් මත බර වැඩි වනු ඇත. සමාගමට මුදල් අහිමි නොවනු ඇත.

එබැවින්, සේවාදායකයන් මත මෙහෙයුම් පද්ධතිවල තාක්ෂණික පරාමිතීන් නිරීක්ෂණය කිරීමට අමතරව, ඔබ ව්යාපාර ප්රමිතික වින්යාසගත කළ යුතුය. මුදලට සෘජුවම බලපාන ප්‍රමිතික. බාහිර පද්ධති සමඟ විවිධ අන්තර්ක්‍රියා (CRM, ERP සහ වෙනත්). නිශ්චිත කාලයක් සඳහා ඇණවුම් ගණන. සාර්ථක හෝ අසාර්ථක සේවාදායක අවසර සහ අනෙකුත් ප්‍රමිතික.

බාහිර පද්ධති සමඟ අන්තර් ක්රියා කිරීම

රුබල් බිලියනයකට වඩා වාර්ෂික පිරිවැටුමක් සහිත ඕනෑම වෙබ් අඩවියක් හෝ ජංගම යෙදුමක් බාහිර පද්ධති සමඟ අන්තර් ක්‍රියා කරයි. ඉහත සඳහන් කළ CRM සහ ERP වලින් පටන් ගෙන, මිලදී ගැනීම් විශ්ලේෂණය කිරීම සහ සේවාදායකයාට ඔහු අනිවාර්යයෙන්ම මිලදී ගන්නා නිෂ්පාදනයක් පිරිනැමීම සඳහා බාහිර විශාල දත්ත පද්ධතියකට විකුණුම් දත්ත මාරු කිරීමෙන් අවසන් වේ (ඇත්ත වශයෙන්ම, නොවේ). එවැනි සෑම පද්ධතියකටම තමන්ගේම සහාය ඇත. බොහෝ විට මෙම පද්ධති සමඟ සන්නිවේදනය වේදනාව ඇති කරයි. විශේෂයෙන්ම ගැටලුව ගෝලීය වන අතර ඔබ එය විවිධ පද්ධති තුළ විශ්ලේෂණය කළ යුතුය.

සමහර පද්ධති ඔවුන්ගේ පරිපාලකයින් සඳහා දුරකථන අංකයක් හෝ විදුලි පණිවුඩයක් සපයයි. කොහේ හරි ඔබට කළමනාකරුවන්ට ලිපි ලිවීමට හෝ මෙම බාහිර පද්ධතිවල දෝෂ ට්රැකර් වෙත යාමට අවශ්ය වේ. එක් විශාල සමාගමක සන්දර්භය තුළ පවා, විවිධ පද්ධති බොහෝ විට විවිධ යෙදුම් ගිණුම්කරණ පද්ධති තුළ ක්රියාත්මක වේ. සමහර විට යෙදුමක තත්ත්වය නිරීක්ෂණය කිරීමට නොහැකි වේ. ඔබට එක් කොන්දේසි සහිත ජිරා එකකින් ඉල්ලීමක් ලැබේ. එතකොට මේ පලවෙනි ජිරා එකේ කමෙන්ට් එකේ ඔයා තව ජිරා එකක තියෙන ප්‍රශ්නෙට ලින්ක් එකක් දැම්මා. යෙදුමේ දෙවන ජිරා තුළ, යමෙකු දැනටමත් අදහස් දැක්වීමක් ලියයි ගැටලුව විසඳීමට ඔබට කොන්දේසි සහිත පරිපාලක Andrey ඇමතීමට අවශ්‍ය වේ. ඒ නිසා.

මෙම ගැටලුව සඳහා හොඳම විසඳුම වනුයේ සන්නිවේදනය සඳහා තනි ඉඩක් නිර්මාණය කිරීමයි, උදාහරණයක් ලෙස Slack හි. බාහිර පද්ධති මෙහෙයුම් ක්‍රියාවලියේ සියලුම සහභාගිවන්නන්ට සම්බන්ධ වීමට ආරාධනා කිරීම. තවද යෙදුම් අනුපිටපත් නොකිරීමට තනි ට්රැකර් එකක්. අධීක්ෂණ දැනුම්දීම්වල සිට අනාගතයේදී දෝෂ විසඳුම් ප්‍රතිදානය දක්වා යෙදුම් එක තැනක නිරීක්ෂණය කළ යුතුය. මෙය යථාර්ථවාදී නොවන බවත්, අපි එක ට්‍රැකර් එකක වැඩ කරන බවත්, ඔවුන් තවත් ට්‍රැකර් එකක වැඩ කිරීමත් ඉතිහාසගතව සිදු වී ඇති බව ඔබ කියනු ඇත. විවිධ පද්ධති දර්ශනය විය, ඔවුන්ට ඔවුන්ගේම ස්වාධීන තොරතුරු තාක්ෂණ කණ්ඩායම් තිබුණි. මම එකඟ වන අතර, එබැවින් ගැටලුව CIO හෝ නිෂ්පාදන හිමිකරු මට්ටමින් ඉහළින් විසඳිය යුතුය.

ඔබ අන්තර්ක්‍රියා කරන සෑම පද්ධතියක්ම ප්‍රමුඛතාවය අනුව ගැටළු විසඳීමට පැහැදිලි SLA සමඟ සේවාවක් ලෙස සහාය සැපයිය යුතුය. කොන්දේසි සහිත පරිපාලක Andrey ඔබ වෙනුවෙන් විනාඩියක් ඇති විට නොවේ.

බාධක මිනිසා

ව්‍යාපෘතියක (හෝ නිෂ්පාදනයේ) සිටින සෑම කෙනෙකුටම නිවාඩුවක් ගත කිරීම ඔවුන්ගේ ප්‍රධානීන් අතර කම්පනය ඇති කරන පුද්ගලයෙකු සිටීද? මෙය devops ඉංජිනේරුවෙකු, විශ්ලේෂකයෙකු හෝ සංවර්ධකයෙකු විය හැකිය. සියල්ලට පසු, කුමන සේවාදායකයන් කුමන බහාලුම් ස්ථාපනය කර ඇත්ද, ගැටළුවක් ඇති විට කන්ටේනරය නැවත ආරම්භ කරන්නේ කෙසේද, සහ පොදුවේ ගත් කල, ඔහු නොමැතිව ඕනෑම සංකීර්ණ ගැටළුවක් විසඳිය නොහැක්කේ devops ඉංජිනේරුවෙකු පමණි. ඔබේ සංකීර්ණ යාන්ත්‍රණය ක්‍රියා කරන ආකාරය දන්නේ විශ්ලේෂකයා පමණි. කුමන දත්ත ප්‍රවාහයන් යන්නේ කොතැනටද යන්න. කුමන සේවාවන් සඳහා වන ඉල්ලීම් පරාමිති යටතේ, අපට ප්‍රතිචාර ලැබෙන්නේ කුමන ඒවාද යන්නයි.
ලොග් වල දෝෂ ඇති වන්නේ මන්දැයි ඉක්මනින් තේරුම් ගන්නේ කවුද සහ නිෂ්පාදනයේ විවේචනාත්මක දෝෂයක් ක්ෂණිකව නිවැරදි කරන්නේ කවුද? ඇත්ත වශයෙන්ම එකම සංවර්ධකයා. තවත් ඒවා ඇත, නමුත් කිසියම් හේතුවක් නිසා පද්ධතියේ විවිධ මොඩියුල ක්‍රියා කරන ආකාරය ඔහු පමණක් තේරුම් ගනී.

මෙම ගැටලුවට මුල ලේඛන නොමැතිකමයි. සියල්ලට පසු, ඔබේ පද්ධතියේ සියලුම සේවාවන් විස්තර කර ඇත්නම්, විශ්ලේෂකයෙකු නොමැතිව ගැටලුව සමඟ කටයුතු කිරීමට හැකි වනු ඇත. devops ඔහුගේ කාර්යබහුල කාලසටහනෙන් දින කිහිපයක් ගත කර සාමාන්‍ය ගැටළු විසඳීම සඳහා සියලුම සේවාදායකයන්, සේවාවන් සහ උපදෙස් විස්තර කළේ නම්, ඔහු නොමැති විට ගැටලුව ඔහු නොමැතිව විසඳා ගත හැකිය. නිවාඩුවක් ගත කරන අතරතුර වෙරළේ ඔබේ බියර් ඉක්මනින් අවසන් කිරීමට සහ ගැටලුව විසඳීමට wi-fi සෙවීමට ඔබට අවශ්‍ය නැත.

සහායක කාර්ය මණ්ඩලයේ නිපුණතාවය සහ වගකීම

විශාල ව්‍යාපෘති වලදී සමාගම් සංවර්ධක වැටුප් අඩු නොකරයි. ඔවුන් සමාන ව්යාපෘති වලින් මිල අධික මධ්යම හෝ ජ්යෙෂ්ඨයන් සොයමින් සිටිති. සහාය ඇතිව තත්වය ටිකක් වෙනස් ය. හැකි සෑම ආකාරයකින්ම මෙම වියදම් අඩු කිරීමට ඔවුන් උත්සාහ කරයි. සමාගම් ඊයේ එනිකී කම්කරුවන් මිල අඩු කුලියට ගෙන නිර්භීතව සටනට යති. අපි Zelenograd හි බලාගාරයක ව්යාපාරික කාඩ්පත් වෙබ් අඩවියක් ගැන කතා කරන්නේ නම් මෙම උපාය මාර්ගය හැකි ය.

අපි විශාල ඔන්ලයින් වෙළඳසැලක් ගැන කතා කරන්නේ නම්, අක්‍රීය වන සෑම පැයක්ම Enikey පරිපාලකයෙකුගේ මාසික වැටුපට වඩා වැඩි ය. ආරම්භක ලක්ෂ්‍යයක් ලෙස වාර්ෂික පිරිවැටුම රුපියල් බිලියන 1ක් ගනිමු. ශ්‍රේණිගත කිරීමෙන් ඕනෑම අන්තර්ජාල වෙළඳසැලක අවම පිරිවැටුම මෙයයි 100 සඳහා TOP 2018. මෙම මුදල වසරකට පැය ගණනින් බෙදන්න සහ ශුද්ධ පාඩු වලින් රුබල් 100 කට වඩා ලබා ගන්න. ඔබ රාත්‍රී පැය ගණන් නොගන්නේ නම්, ඔබට ආරක්ෂිතව එම මුදල දෙගුණ කළ හැකිය.

නමුත් මුදල් ප්රධාන දෙය නොවේ, හරිද? (නැහැ, ඇත්ත වශයෙන්ම ප්රධාන දෙය) කීර්තිමත් පාඩු ද ඇත. සුප්‍රසිද්ධ ඔන්ලයින් වෙළඳසැලක පහත වැටීම සමාජ ජාල සහ තේමාත්මක මාධ්‍යවල ප්‍රකාශනවල සමාලෝචන රැල්ලක් ඇති කළ හැකිය. ඒවගේම "එතන කිසිම දෙයක් මිලට ගන්න එපා, එයාලගේ වෙබ් සයිට් එක හැමතිස්සෙම බැහැලා" වගේ කුස්සියේ ඉන්න යාළුවන්ගේ සංවාද කොහෙත්ම මනින්න බෑ.

දැන් වගකීමට. මගේ භාවිතයේදී, වෙබ් අඩවියේ නොමැතිකම පිළිබඳව අධීක්ෂණ පද්ධතියෙන් කළ දැනුම්දීමකට රාජකාරියේ යෙදී සිටින පරිපාලකයා නියමිත වේලාවට ප්‍රතිචාර නොදැක්වූ අවස්ථාවක් තිබුණි. ප්රසන්න ගිම්හාන සිකුරාදා සවස, මොස්කව්හි සුප්රසිද්ධ අන්තර්ජාල වෙළඳසැලක වෙබ් අඩවිය නිහඬව වැතිර සිටියේය. සෙනසුරාදා උදෑසන, මෙම වෙබ් අඩවියේ නිෂ්පාදන කළමනාකරුට වෙබ් අඩවිය විවෘත නොකළේ මන්දැයි නොතේරුණු අතර, Slack හි සහාය සහ හදිසි දැනුම්දීම් කතාබස් වල නිශ්ශබ්දතාවයක් පැවතුනි. එවැනි අත්වැරදීමකින් අපට ඉලක්කම් හයක මුදලක් අහිමි වූ අතර මෙම රාජකාරි නිලධාරියාගේ රැකියාවද අහිමි විය.

වගකීම වර්ධනය කිරීමට අපහසු කුසලතාවකි. එක්කෝ පුද්ගලයෙකුට එය තිබේ හෝ නැත. එමනිසා, සම්මුඛ සාකච්ඡා අතරතුර, පුද්ගලයෙකු වගකීම භාර ගැනීමට පුරුදු වී සිටීද යන්න වක්‍රව පෙන්වන විවිධ ප්‍රශ්න සමඟ එහි පැවැත්ම හඳුනා ගැනීමට මම උත්සාහ කරමි. යමෙක් තමා විශ්වවිද්‍යාලයක් තෝරා ගත්තේ තම දෙමාපියන් කී නිසා යැයි පිළිතුරු දෙන්නේ නම් හෝ ඔහුට ප්‍රමාණවත් ආදායමක් නොමැති බව ඔහුගේ බිරිඳ පැවසූ නිසා රැකියාව වෙනස් කරන්නේ නම්, එවැනි අය සමඟ සම්බන්ධ නොවී සිටීම හොඳය.

සංවර්ධන කණ්ඩායම සමඟ අන්තර් ක්රියා කිරීම

ක්‍රියාත්මක වන විට පරිශීලකයින් නිෂ්පාදනයක් සමඟ සරල ගැටළු වලට මුහුණ දෙන විට, සහාය ඒවා තනිවම විසඳයි. ගැටලුව ප්රතිනිෂ්පාදනය කිරීමට උත්සාහ කරයි, ලඝු-සටහන් විශ්ලේෂණය, ආදිය. නමුත් නිෂ්පාදනයේ දෝෂයක් දිස් වූ විට කුමක් කළ යුතුද? මෙම අවස්ථාවේදී, සහාය සංවර්ධකයින්ට කාර්යය පැවරෙන අතර විනෝදය ආරම්භ වන්නේ මෙයයි.

සංවර්ධකයින් නිරන්තරයෙන් අධික ලෙස පටවනු ලැබේ. ඔවුන් නව විශේෂාංග නිර්මාණය කරයි. විකුණුම් සමඟ දෝෂ නිවැරදි කිරීම වඩාත් සිත්ගන්නා ක්‍රියාකාරකම නොවේ. මීළඟ ස්ප්‍රින්ට් සම්පූර්ණ කිරීමට නියමිත කාලසීමාවන් ළඟා වෙමින් තිබේ. එවිට සහය දක්වන අප්‍රසන්න අය පැමිණ මෙසේ කියති: “වහාම සියල්ල අත්හරින්න, අපට ගැටලු තිබේ.” එවැනි කාර්යයන්හි ප්රමුඛතාවය අවම වේ. විශේෂයෙන් ගැටළුව වඩාත් තීරණාත්මක නොවන විට සහ වෙබ් අඩවියේ ප්‍රධාන ක්‍රියාකාරිත්වය ක්‍රියාත්මක වන විට, සහ මුදා හැරීමේ කළමනාකරු නෙත් ගැටීමෙන් දුවන්නේ නැති විට: “මෙම කාර්යය ඉක්මනින් ඊළඟ නිකුතුවට හෝ හොට්ෆික්ස් වෙත එක් කරන්න.”

සාමාන්‍ය හෝ අඩු ප්‍රමුඛතාවයක් සහිත ගැටළු නිකුතුවෙන් මුදා හැරීමට ගෙන යනු ලැබේ. "කාර්යය සම්පූර්ණ කරන්නේ කවදාද?" යන ප්‍රශ්නයට ඔබට පිළිතුරු ලැබෙනු ඇත: "කණගාටුයි, දැන් බොහෝ කාර්යයන් ඇත, ඔබේ කණ්ඩායම් නායකයින්ගෙන් විමසන්න හෝ කළමනාකරු නිදහස් කරන්න."

ඵලදායිතා ගැටළු නව විශේෂාංග නිර්මාණය කිරීමට වඩා වැඩි ප්‍රමුඛතාවයක් ගනී. පරිශීලකයින් නිරන්තරයෙන් දෝෂ මත පැටලෙන්නේ නම් නරක සමාලෝචන පැමිණීමට වැඩි කාලයක් ගත නොවනු ඇත. හානියට පත් කීර්තිය නැවත ලබා ගැනීම දුෂ්කර ය.

සංවර්ධනය සහ සහාය අතර අන්තර්ක්‍රියා පිළිබඳ ගැටළු DevOps විසින් විසඳනු ලැබේ. මෙම කෙටි යෙදුම බොහෝ විට භාවිතා කරනුයේ සංවර්ධනය සඳහා පරීක්ෂණ පරිසරයන් නිර්මාණය කිරීමට උපකාර වන, CICD නල මාර්ග ගොඩනඟන සහ පරීක්ෂා කරන ලද කේතය ඉක්මනින් නිෂ්පාදනයට ගෙන එන විශේෂිත පුද්ගලයෙකුගේ ස්වරූපයෙන් ය. DevOps යනු ක්‍රියාවලියේ සියලුම සහභාගිවන්නන් එකිනෙකා සමඟ සමීපව අන්තර් ක්‍රියා කරන විට සහ මෘදුකාංග නිෂ්පාදන සහ සේවාවන් ඉක්මනින් නිර්මාණය කිරීමට සහ යාවත්කාලීන කිරීමට උපකාරී වන විට මෘදුකාංග සංවර්ධනය සඳහා වන ප්‍රවේශයකි. මම අදහස් කරන්නේ විශ්ලේෂකයින්, සංවර්ධකයින්, පරීක්ෂකයින් සහ සහාය.

මෙම ප්රවේශය තුළ, සහාය සහ සංවර්ධනය ඔවුන්ගේම අරමුණු සහ අරමුණු සහිත විවිධ දෙපාර්තමේන්තු නොවේ. සංවර්ධනය මෙහෙයුමට සම්බන්ධ වන අතර අනෙක් අතට. බෙදා හරින ලද කණ්ඩායම්වල සුප්‍රසිද්ධ වාක්‍ය ඛණ්ඩය: “ගැටළුව මගේ පැත්තේ නොවේ” යන්න තවදුරටත් කතාබස් වල නොපෙන්වන අතර අවසාන පරිශීලකයින් ටිකක් සතුටු වේ.

මූලාශ්රය: www.habr.com

අදහස් එක් කරන්න