NGINX වෙතින් නවීන යෙදුම් සංවර්ධනය කිරීමේ මූලධර්ම. 1 කොටස

ආයුබෝවන් යාළුවනේ. පාඨමාලාව දියත් කිරීමේ අපේක්ෂාවෙන් PHP පසුබිම් සංවර්ධක, සාම්ප්රදායිකව ප්රයෝජනවත් ද්රව්ය පරිවර්තනය ඔබ සමඟ බෙදා ගන්න.

මෘදුකාංගය වඩ වඩාත් සංකීර්ණ වෙමින් පවතින අතරම, එදිනෙදා කාර්යයන් වැඩි වැඩියෙන් විසඳයි. Marc Andressen වරක් පැවසූ පරිදි, එය ලෝකය පරිභෝජනය කරයි.

NGINX වෙතින් නවීන යෙදුම් සංවර්ධනය කිරීමේ මූලධර්ම. 1 කොටස

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

මූලධර්ම පහත පරිදි සාරාංශ කළ හැකිය: යෙදුම කුඩා, වෙබ්-පාදක, සහ සංවර්ධක කේන්ද්‍රීය ගෘහ නිර්මාණ ශිල්පයක් තිබිය යුතුය. මෙම මූලධර්ම තුන මත පදනම්ව, ඔබට අවසන් පරිශීලකයාට ඉක්මනින් සහ ආරක්ෂිතව ලබා දිය හැකි, පහසුවෙන් පරිමාණය කළ හැකි සහ දිගු කළ හැකි ශක්තිමත්, අවසානය දක්වා යෙදුමක් නිර්මාණය කළ හැකිය.

NGINX වෙතින් නවීන යෙදුම් සංවර්ධනය කිරීමේ මූලධර්ම. 1 කොටස

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

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

මෙම මූලධර්ම යෙදීමෙන්, මෘදුකාංග සංවර්ධනයේ නවතම ප්‍රවණතාවලින් ප්‍රයෝජන ගන්නා බව ඔබට පෙනී යනු ඇත දේ යෙදුම් සංවර්ධනය කිරීම සහ බෙදා හැරීම, බහාලුම් භාවිතය (උදාහරණයක් ලෙස, Docker) සහ බහාලුම් වාද්‍ය වෘන්ද රාමු (උදාහරණයක් ලෙස, කුබර්නෙට්ස්), ක්ෂුද්‍ර සේවා භාවිතය (ක්ෂුද්‍ර සේවා ගෘහ නිර්මාණ ශිල්පය ඇතුළුව NGINX и ජාල සන්නිවේදන ගෘහ නිර්මාණ ශිල්පය microservice යෙදුම් සඳහා.

නවීන යෙදුමක් යනු කුමක්ද?

නවීන යෙදුම්? නවීන තොගය? "නූතන" යන්නෙන් හරියටම අදහස් කරන්නේ කුමක්ද?

බොහෝ සංවර්ධකයින්ට ඇත්තේ නවීන යෙදුමකින් සමන්විත වන්නේ කුමක්ද යන්න පිළිබඳ සාමාන්‍ය අදහසක් පමණි, එබැවින් මෙම සංකල්පය පැහැදිලිව නිර්වචනය කිරීම අවශ්‍ය වේ.

නවීන යෙදුමක් එය ප්‍රතික්‍රියා ජාවාස්ක්‍රිප්ට් පුස්තකාල පරිශීලක අතුරුමුහුණතක්, ඇන්ඩ්‍රොයිඩ් හෝ iOS ජංගම යෙදුමක් හෝ වෙනත් API වෙත සම්බන්ධ වන යෙදුමක් වේවා, බහු සේවාලාභීන්ට සහය දක්වයි. නවීන යෙදුමක් මඟින් දත්ත හෝ සේවා සපයන පාරිභෝගිකයින් සංඛ්‍යාව අසීමිත වේ.

නවීන යෙදුමක් ඉල්ලා සිටින දත්ත සහ සේවාවන් වෙත ප්‍රවේශ වීමට API සපයයි. API වෙනස් කළ නොහැකි සහ නියත විය යුතු අතර, විශේෂිත සේවාලාභියෙකුගේ නිශ්චිත ඉල්ලීමක් සඳහා විශේෂයෙන් ලියා නොතිබිය යුතුය. API HTTP(S) හරහා ලබා ගත හැකි අතර GUI හෝ CLI හි ඇති සියලුම ක්‍රියාකාරීත්වයන් වෙත ප්‍රවේශය සපයයි.

දත්ත JSON වැනි පොදුවේ පිළිගත්, අන්තර් ක්‍රියාකාරී ආකෘතියකින් ලබා ගත යුතුය. RESTful API හෝ GraphQL වැනි හොඳ අතුරු මුහුණතක් සැපයීම වැනි API පිරිසිදු, සංවිධානාත්මක ආකාරයකින් වස්තු සහ සේවාවන් නිරාවරණය කරයි.

නවීන යෙදුම් නවීන තොගය මත ගොඩනගා ඇති අතර, නවීන තොගය යනු පිළිවෙලින් එවැනි යෙදුම් සඳහා සහය දක්වන තොගයයි. මෙම තොගය සංවර්ධකයෙකුට HTTP අතුරුමුහුණතක් සහ පැහැදිලි API අන්ත ලක්ෂ්‍යයක් සහිත යෙදුමක් පහසුවෙන් නිර්මාණය කිරීමට ඉඩ සලසයි. තෝරාගත් ප්‍රවේශය ඔබගේ යෙදුමට JSON ආකෘතියෙන් දත්ත පහසුවෙන් ලබා ගැනීමට සහ යැවීමට ඉඩ සලසයි. වෙනත් වචන වලින් කිවහොත්, නවීන තොගය දොළොස් සාධක යෙදුමේ මූලද්‍රව්‍යවලට අනුරූප වේ ක්ෂුද්ර සේවා.

මෙම වර්ගයේ තොගයේ ජනප්‍රිය අනුවාද පදනම් වේ ජාවා, Python මීට උදාහරණ, node එකක් මතම ඊට අදාල, රූබි, PHP и Go. ක්ෂුද්ර සේවා ගෘහ නිර්මාණ ශිල්පය NGINX සඳහන් කරන ලද සෑම භාෂාවකම ක්‍රියාත්මක කරන ලද නවීන තොගයක උදාහරණයක් නියෝජනය කරයි.

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

මූලධර්ම

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

එක් මූලධර්මයක් "කුඩා යෙදුම් සාදන්න" වැනිය, අපි එය කියමු කුඩා බව මූලධර්මය. බොහෝ චලනය වන කොටස් වලින් සෑදී ඇති ඇදහිය නොහැකි තරම් සංකීර්ණ යෙදුම් තිබේ. අනෙක් අතට, කුඩා, විවික්ත සංරචක වලින් යෙදුමක් තැනීම එය සමස්තයක් ලෙස සැලසුම් කිරීම, නඩත්තු කිරීම සහ වැඩ කිරීම පහසු කරයි. (අපි කීවේ "සරල කරයි" කියා නොව "සරල කරයි" බව සලකන්න).

දෙවන මූලධර්මය නම්, ක්‍රියාත්මක කිරීමේදී යටිතල පහසුකම් සහ CI/CD ගැටළු වලින් ඔවුන්ව නිදහස් කරන අතරම, ඔවුන් සංවර්ධනය කරන විශේෂාංග කෙරෙහි අවධානය යොමු කිරීමට ඔවුන්ට උපකාර කිරීමෙන් අපට සංවර්ධක ඵලදායිතාව වැඩි කළ හැකි බවයි. ඉතින්, කෙටියෙන්, අපගේ ප්රවේශය සංවර්ධකයින් කෙරෙහි අවධානය යොමු කර ඇත.

අවසාන වශයෙන්, ඔබගේ යෙදුම පිළිබඳ සෑම දෙයක්ම ජාලයට සම්බන්ධ කළ යුතුය. පසුගිය වසර 20 තුළ, ජාල වේගවත් වන අතර යෙදුම් වඩාත් සංකීර්ණ වන බැවින් අපි ජාලගත අනාගතයක් කරා විශාල ප්‍රගතියක් ලබා ඇත්තෙමු. අප දැනටමත් දැක ඇති පරිදි, නවීන යෙදුමක් විවිධ සේවාදායකයින් විසින් ජාලයක් හරහා භාවිතා කළ යුතුය. ගෘහ නිර්මාණ ශිල්පයට ජාල චින්තනය යෙදීමෙන් සැලකිය යුතු ප්‍රතිලාභ ඇත කුඩා බව මූලධර්මය සහ ප්රවේශය පිළිබඳ සංකල්පය, සංවර්ධක නැඹුරු.

යෙදුමක් සැලසුම් කිරීමේදී සහ ක්‍රියාත්මක කිරීමේදී ඔබ මෙම මූලධර්ම මතක තබා ගන්නේ නම්, ඔබේ නිෂ්පාදනයේ සංවර්ධනය හා බෙදා හැරීමේදී ඔබට ප්‍රතික්ෂේප කළ නොහැකි වාසියක් ලැබෙනු ඇත.

මෙම මූලධර්ම තුන වඩාත් විස්තරාත්මකව බලමු.

කුඩා බව පිළිබඳ මූලධර්මය

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

NGINX වෙතින් නවීන යෙදුම් සංවර්ධනය කිරීමේ මූලධර්ම. 1 කොටස

පහත සඳහන් හේතු නිසා යෙදුම් දිරාපත් වේ:

  • සංවර්ධකයින් මත සංජානන බර අඩු කිරීම;
  • පරීක්ෂණ වේගවත් කිරීම සහ සරල කිරීම;
  • යෙදුමේ වෙනස්කම් වේගයෙන් බෙදා හැරීම.


සංවර්ධකයින් මත සංජානන බර අඩු කිරීමට ක්රම කිහිපයක් තිබේ, සහ කුඩාකමේ මූලධර්මය ක්රියාත්මක වන්නේ මෙයයි.

එබැවින් සංජානන බර අඩු කිරීමට ක්‍රම තුනක් මෙන්න:

  1. නව අංගයක් සංවර්ධනය කිරීමේදී ඔවුන් සලකා බැලිය යුතු කාල රාමුව අඩු කරන්න - කෙටි කාල රාමුව, සංජානන භාරය අඩු වේ.
  2. එක් වරක් වැඩ කරන කේත ප්රමාණය අඩු කරන්න - අඩු කේතයක් - අඩු බරක්.
  3. යෙදුමකට වර්ධක වෙනස්කම් සිදු කිරීමේ ක්‍රියාවලිය සරල කරන්න.

සංවර්ධන කාල රාමුව අඩු කිරීම

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

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

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

ක්රමවේදය තුළ agile අවසාන යෙදුම මුල් සංකල්පයේ තරමක් වෙනස් කළ අනුවාදයක් වනු ඇතැයි අපේක්ෂා කෙරේ, එබැවින් සංවර්ධනයේ අවසාන ලක්ෂ්‍යය අවශ්‍යයෙන්ම අපැහැදිලි වේ. එක් එක් නිශ්චිත ස්ප්‍රින්ට් වල ප්‍රතිඵල පමණක් පැහැදිලි සහ නිවැරදි විය හැක.

කුඩා කේත පදනම

සංජානන බර අඩු කිරීමේ ඊළඟ පියවර වන්නේ කේත පදනම අඩු කිරීමයි. රීතියක් ලෙස, නවීන යෙදුම් දැවැන්ත වේ - ශක්තිමත්, ව්යවසාය යෙදුමක් ගොනු දහස් ගණනක් සහ කේත රේඛා සිය දහස් ගණනකින් සමන්විත විය හැකිය. ගොනු සංවිධානය වී ඇති ආකාරය මත පදනම්ව, කේතය සහ ගොනු අතර සබැඳි සහ පරායත්තතා පැහැදිලි විය හැකිය, නැතහොත් අනෙක් අතට. භාවිතා කරන පුස්තකාල සහ දෝශ නිරාකරණ මෙවලම් පුස්තකාල/පැකේජ/මොඩියුල සහ අභිරුචි කේත අතර වෙනස කෙතරම් හොඳින් ද යන්න මත පදනම්ව, නිදොස් කිරීමේ කේත ක්‍රියාත්මක කිරීම පවා ගැටළුකාරී විය හැක.

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

ඉන්ජිනේරුවන්ගේ සංජානන බර අඩු කිරීම සඳහා ඵලදායී ක්රමයක් වන්නේ ක්ෂුද්ර සේවා ගෘහ නිර්මාණ ශිල්පයකට මාරු වීමයි. ක්ෂුද්‍ර සේවා ප්‍රවේශයක් තුළ, සෑම සේවාවක්ම එක් විශේෂාංග සමූහයක් කෙරෙහි අවධානය යොමු කරයි; සේවාවේ අර්ථය සාමාන්‍යයෙන් අර්ථ දක්වා ඇති අතර තේරුම් ගත හැකිය. සේවාවක මායිම් ද පැහැදිලිය - සේවාවක් සමඟ සන්නිවේදනය API හරහා සිදු කරන බව මතක තබා ගන්න, එබැවින් එක් සේවාවක් මඟින් ජනනය කරන දත්ත පහසුවෙන් තවත් සේවාවකට ලබා දිය හැකිය.

අනෙකුත් සේවාවන් සමඟ අන්තර්ක්‍රියා සාමාන්‍යයෙන් පරිශීලක සේවා කිහිපයකට සහ REST භාවිතා කිරීම වැනි සරල සහ පිරිසිදු API ඇමතුම් භාවිතා කරන සැපයුම් සේවා කිහිපයකට සීමා වේ. මෙයින් අදහස් කරන්නේ ඉංජිනේරුවාගේ සංජානන බර බරපතල ලෙස අඩු වී ඇති බවයි. විශාලතම අභියෝගය වන්නේ සේවා අන්තර්ක්‍රියා ආකෘතිය සහ බහුවිධ සේවා හරහා ගනුදෙනු වැනි දේවල් සිදු වන ආකාරය අවබෝධ කර ගැනීමයි. එහි ප්‍රතිඵලයක් වශයෙන්, ක්ෂුද්‍ර සේවා භාවිතය මඟින් කේත ප්‍රමාණය අඩු කිරීම, පැහැදිලි සේවා සීමාවන් නිර්වචනය කිරීම සහ පරිශීලකයන් සහ සපයන්නන් අතර සම්බන්ධතාවය පිළිබඳ අවබෝධයක් ලබා දීම මගින් සංජානන බර අඩු කරයි.

කුඩා වර්ධක වෙනස්කම්

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

කේතයේ විශාල කොටස් නැවත ලියන විට, වෙනත් පද්ධති පරායත්තතා ක්‍රියාත්මක වන බැවින් වෙනස් කිරීම ඉක්මනින් ලබා දීමට සමහර විට නොහැකි වේ. වෙනස්කම් ගලායාම පාලනය කිරීම සඳහා, ඔබට විශේෂාංග සැඟවීම භාවිතා කළ හැකිය. ප්‍රතිපත්තිමය වශයෙන්, මෙයින් අදහස් කරන්නේ ක්‍රියාකාරීත්වය නිෂ්පාදනයේ පවතින බවයි, නමුත් එය පරිසර විචල්‍ය සැකසුම් (env-var) හෝ වෙනත් වින්‍යාස යාන්ත්‍රණයක් භාවිතයෙන් ලබා ගත නොහැක. කේතය සියලුම තත්ත්ව පාලන ක්‍රියාවලීන් සමත් වී ඇත්නම්, එය ගුප්ත තත්වයක නිෂ්පාදනයෙන් අවසන් විය හැක. කෙසේ වෙතත්, මෙම ක්‍රමෝපාය ක්‍රියාත්මක වන්නේ විශේෂාංගය අවසානයේ සක්‍රීය කළහොත් පමණි. එසේ නොමැති නම්, එය කේතය අවුල් කිරීම පමණක් වන අතර ඵලදායි වීම සඳහා සංවර්ධකයාට මුහුණ දීමට සිදුවනු ඇති සංජානන බරක් එක් කරයි. වෙනස් කළමණාකරණය සහ වර්ධක වෙනස් කිරීම් සංවර්ධකයින්ගේ සංජානන බර දැරිය හැකි මට්ටමක තබා ගැනීමට උපකාරී වේ.

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

  1. ක්රමවේදය භාවිතා කරන්න agileකණ්ඩායම ප්‍රධාන අංග කෙරෙහි අවධානය යොමු කළ යුතු කාල රාමුව සීමා කිරීමට.
  2. බහු ක්ෂුද්‍ර සේවා ලෙස ඔබගේ යෙදුම ක්‍රියාත්මක කරන්න. මෙය ක්‍රියාත්මක කළ හැකි විශේෂාංග සංඛ්‍යාව සීමා කරන අතර සංජානන භාරය ක්‍රියා කරන සීමාවන් ශක්තිමත් කරයි.
  3. විශාල සහ අනවශ්‍ය ලෙස වර්ධක වෙනස්කම් වලට කැමති, කුඩා කේත කෑලි වෙනස් කරන්න. වෙනස්කම් එක් කළ වහාම නොපෙනුනත් ඒවා ක්‍රියාත්මක කිරීමට විශේෂාංග සැඟවීම භාවිතා කරන්න.

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

පළමු කොටසේ අවසානය.

ඉක්මනින් අපි පරිවර්තනයේ දෙවන කොටස ප්‍රකාශයට පත් කරන්නෙමු, දැන් අපි ඔබගේ අදහස් සඳහා බලා සිටින අතර ඔබට ආරාධනා කරන්නෙමු විවෘත දිනය, අද 20.00 ට පැවැත්වේ.

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

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