පටුන[සඟවන්න][පෙන්වන්න]
- 1. පද්ධති නිර්මාණය යන්නෙන් ඔබ අදහස් කරන්නේ කුමක්ද?
- 2. පද්ධති නිර්මාණකරුවෙකුගේ වැදගත්ම ලක්ෂණ මොනවාද?
- 3. ඇත්තටම CAP ප්රමේයය යනු කුමක්ද?
- 4. බර තුලනය කිරීමෙන් ඔබ තේරුම් ගන්නේ කුමක්ද?
- 5. අසමමුහුර්ත වැඩසටහන්කරණය සහ සමාන්තර වැඩසටහන්කරණය අතර වෙනස කුමක්ද?
- 6. තිරස් සහ සිරස් පරිමාණය අතර වෙනස කුමක්ද?
- 7. ප්රමාදය, ප්රතිදානය සහ පද්ධති පවතින බව යන්නෙන් ඔබ හරියටම අදහස් කරන්නේ කුමක්ද?
- 8. ACID ගුණාංග මොනවාද?
- 9. හරියටම ෂර්ඩින් යනු කුමක්ද?
- 10. CDN යනු කුමක්ද?
- 11. CDN භාවිතා කරන්නේ ඇයි?
- 12. sharding සහ partitioning අතර වෙනස කුමක්ද?
- 13. හැඹිලි කිරීම යනු කුමක්ද?
- 14. CDN එජ් සර්වර් යනු මොනවාද?
- 15. පද්ධති නිර්මාණය සඳහා විවිධ අනුකූලතා රටා මොනවාද?
- 16. ශුභවාදී අගුලු දැමීම යන්නෙන් ඔබ අදහස් කරන්නේ කුමක්ද?
- 17. "නායක මැතිවරණය" යන්නෙන් ඔබ හරියටම අදහස් කරන්නේ කුමක්ද?
- 18. TinyURL වැනි URL කෙටි කිරීමේ සේවාවක් සැලසුම් කිරීම සඳහා ඔබේ ප්රවේශය කුමක්ද?
- 19. twitter නිර්මාණය කිරීමට ඔබේ ප්රවේශය කුමක්ද?
- 20. Facebook සඳහා newsfeed පද්ධතිය සාදන්න
- 21. පද්ධතියක මූලික දේපල යනු කුමක්ද?
- 22. IP Address Affinity Technique සමඟ බර තුලනය කිරීම යනු කුමක්ද?
- 23. හැඹිලි ප්රතිස්ථාපන (හෝ ඉවත් කිරීමේ ප්රතිපත්ති) ඇල්ගොරිතම යනු කුමක්ද?
- 24. බෙදා හරින ලද ගනුදෙනුව යන්නෙන් ඔබ හරියටම අදහස් කරන්නේ කුමක්ද?
- 25. ඇත්තෙන්ම කුසගින්න යනු කුමක්ද?
- නිගමනය
ඔබ ආරම්භ කිරීමට පෙර, අපගේ කියවීමට අපි නිර්දේශ කරමු පද්ධති නිර්මාණය පිළිබඳ හඳුන්වාදීමේ මාර්ගෝපදේශය ඔබේ මූලික දැනුම අලුත් කර ගැනීමට.
පද්ධති සැලසුම් දැනුම අවශ්ය තනතුරක් සඳහා සම්මුඛ පරීක්ෂණයක් කරන විට, ඔබේ පසුබිම ගැන කතා කිරීමට සහ සංකීර්ණ පද්ධති සංවර්ධනය කිරීමට ඔබට ඇති හැකියාව ප්රදර්ශනය කිරීමට ඔබට අවස්ථාව තිබේ.
විභව සේවා යෝජකයෙකු සමඟ කතා කරන විට, ඔබ ඔබේ ප්රවීණත්වය ප්රකාශ කරන ආකාරය, ඔබ තනතුර සඳහා දක්ෂ අපේක්ෂකයෙකු බව පෙන්වීමට ඔබට සහාය වනු ඇත.
මූලික සැලසුම් සංකල්ප ඉගෙනීමෙන් සහ ඒවා පිළිබඳ විමසීම්වලට ඔබ ප්රතිචාර දක්වන ආකාරය ගැන සිතීමෙන් ඔබට ඔබේ රැකියා සම්මුඛ පරීක්ෂණය සඳහා සූදානම් විය හැකිය. අපි ඔබේ මීළඟ සම්මුඛ පරීක්ෂණය සඳහා සූදානම් වීමට ඔබට උදවු කිරීමට මෙම පෝස්ටුව තුළ සාමාන්ය පද්ධති සැලසුම් සම්මුඛ පරීක්ෂණ ප්රශ්න සහ පිළිතුරු කිහිපයක් හරහා යන්නෙමු.
1. පද්ධති නිර්මාණය යන්නෙන් ඔබ අදහස් කරන්නේ කුමක්ද?
මොඩියුල, ගෘහ නිර්මාණ ශිල්පය, සංරචක සහ ඒවායේ අතුරුමුහුණත් ඇතුළු පද්ධති ලක්ෂණ ස්ථාපනය කිරීමේ ක්රියාවලිය සහ කලින් තීරණය කළ නිර්ණායක මත පදනම් වූ දත්ත පද්ධති නිර්මාණය ලෙස හැඳින්වේ.
එය සමාගමක හෝ සංවිධානයක නිශ්චිත ඉලක්ක සහ අරමුණු සපුරාලීම සඳහා පද්ධති නිර්වචනය කිරීම, නිර්මාණය කිරීම සහ සැලසුම් කිරීමේ ක්රියාවලියයි. පද්ධති සැලසුම්කරණය යනු කේතීකරණයට වඩා පද්ධති විශ්ලේෂණය, වාස්තු විද්යාත්මක රටා, API, සැලසුම් රටා සහ ඒ සියල්ල එකට ඇලවීමයි.
2. පද්ධති නිර්මාණකරුවෙකුගේ වැදගත්ම ලක්ෂණ මොනවාද?
- පරිශීලක අන්තර්ක්රියා
- බාහිර API ඇමතුම
- නොබැඳි ක්රියාවලි
3. ඇත්තටම CAP ප්රමේයය යනු කුමක්ද?
CAP (අනුකූලතාවය-ලබාගැනීම්-කොටස් ඉවසීම) ප්රමේයයට අනුව, බෙදා හරින ලද පද්ධතියකට C, A සහ P යන සියල්ල එකවර සහතික කළ නොහැක. එය උපරිම වශයෙන් සහතික තුනෙන් දෙකක් පමණක් ලබා දිය හැකිය. මෙය තේරුම් ගැනීමට අපට සහාය වීමට බෙදා හරින ලද දත්ත සමුදා පද්ධතියක් භාවිතා කරමු.
- අනුකූලතාව: දත්ත සමුදා ගනුදෙනුවක් අවසන් වූ පසු දත්ත ස්ථාවරව පැවතිය යුතු බව මින් සඳහන් කරයි. උදාහරණයක් ලෙස, දත්ත සමුදාය යාවත්කාලීන කිරීමෙන් පසු සියලුම විමසුම් එකම ප්රතිචාරය ලබා දිය යුතුය.
- ලබා ගත හැකි බව: දත්ත සමුදායන් සෑම විටම ලබා ගත හැකි සහ ප්රතිචාර දැක්විය යුතුය.
- කොටස් ඉවසීම: සන්නිවේදනය ගැටළු සහගත වුවද, දත්ත සමුදා පද්ධතිය දිගටම ක්රියා කළ යුතුය.
4. බර තුලනය කිරීමෙන් ඔබ තේරුම් ගන්නේ කුමක්ද?
ශේෂය පැටවීම බැකන්ඩ් සර්වර් සමූහයක් අතරට එන ගමනාගමනය කාර්යක්ෂමව විසුරුවා හැරීමේ ක්රියාවලියයි. මේවා සේවාදායක සංචිත ලෙස හැඳින්වේ. නවීන වෙබ් අඩවි ගොඩනගා ඇත්තේ ගනුදෙනුකරුවන්ගෙන් මිලියන ගණනක් විමසුම් හැසිරවීමට සහ ඒවාට ඉක්මනින් සහ විශ්වාසදායක ලෙස ප්රතිචාර දැක්වීමටය. මෙම ඉල්ලීම් හැසිරවීමට තවත් සේවාදායකයන් අවශ්ය වනු ඇත.
මෙම අවස්ථාවෙහිදී, අධික බර පැටවීම වළක්වා ගැනීම සඳහා එක් එක් සේවාදායකයන් අතර කාර්යක්ෂම ලෙස ඉල්ලීම් ගමනාගමනය බෙදා හැරීම ඉතා වැදගත් වේ. ලෝඩ් බැලන්සර් රථවාහන පොලිස් නිලධාරියෙකු ලෙස ක්රියා කරයි, ඉල්ලීම් වලට බාධා කර ඒවා පවතින සේවාදායකයන් අතරට යොමු කරයි, එවිට කිසිදු සේවාදායකයෙකුට අධික බරක් පැටවෙන්නේ නැත, යෙදුම් ක්රියාකාරිත්වය පිරිහීමට ලක්විය හැකිය.
5. අසමමුහුර්ත වැඩසටහන්කරණය සහ සමාන්තර වැඩසටහන්කරණය අතර වෙනස කුමක්ද?
ඔබ ඕනෑම දෙයක් අසමමුහුර්තව ධාවනය කරන විට, එයින් අදහස් වන්නේ ඔබට වෙනත් දෙයකට යාමට පෙර එය අවසන් වන තෙක් බලා සිටිය යුතු නැති බවයි. සමාන්තරකරණය යනු බොහෝ කාර්යයන් එකවර ක්රියාත්මක කිරීමයි.
ඔබට රැකියා විවිධ ශ්රම කොටස් වලට කැඩීමට හැකි වූ විට, සමාන්තරකරණය ඵලදායී ලෙස ක්රියා කරයි. Async සහ Callbacks යනු සමගාමීත්වය නියෝජනය කිරීමට මාධ්යයක් (මෙවලමක් හෝ යාන්ත්රණයක්), එනම් සම්පත් සන්නිවේදනය කිරීමට සහ බෙදා ගැනීමට හැකි ආයතන සමූහයකි.
6. තිරස් සහ සිරස් පරිමාණය අතර වෙනස කුමක්ද?
විසුරුවා හරින ලද උපාංග ජාලයක් හරහා සැකසුම් සහ මතක ඉල්ලුම පතුරුවන ජාලයකට නව පරිගණක උපකරණ එකතු කිරීම තිරස් පරිමාණය ලෙස හැඳින්වේ. සරලව කිවහොත්, වත්මන් සංචිතයට නව සේවාදායක අවස්ථා එකතු කර ඇති අතර, මෙම උපාංග අතර රථවාහන භාරය කාර්යක්ෂමව ව්යාප්ත වේ.
සිරස් පරිමාණය යන්නෙන් අදහස් කරන්නේ RAM, කාර්යක්ෂම CPU එකතු කිරීම හෝ වැඩි ධාරිතාවක් සහිත නව යන්ත්රයකට සංක්රමණය වීම මගින් තනි පරිගණකයක සම්පත් ධාරිතාව පුළුල් කිරීමේ සංකල්පයයි. කිසිදු ක්රමලේඛන වෙනස්කම් අවශ්ය නොවී සේවාදායකයේ ක්රියාකාරීත්වය වැඩි කළ හැක.
7. ප්රමාදය, ප්රතිදානය සහ පද්ධති පවතින බව යන්නෙන් ඔබ හරියටම අදහස් කරන්නේ කුමක්ද?
අපගේ සේවාවන්හි වේගය සහ විශ්වසනීයත්වය සඳහා දායක වන බැවින් කාර්ය සාධනය පද්ධති නිර්මාණයේ අත්යවශ්ය අංගයකි. වඩාත්ම වැදගත් කාර්ය සාධන පියවර තුන පහත පරිදි වේ:
- මිලි තත්පර වලින් තනි පණිවිඩයක් ලබා දීමට ගතවන කාලය ප්රමාදය ලෙස හැඳින්වේ.
- යම් කාල පරිච්ෙඡ්දයකදී පද්ධතියක් හරහා සාර්ථකව හුවමාරු වන දත්ත ප්රමාණය ප්රතිදානය ලෙස හැඳින්වේ. එය මැනීමට තත්පරයට බිටු භාවිතා කරයි.
- විමසුම් වලට ප්රතිචාර දැක්වීමට පද්ධතියක් පවතින කාලය එහි පවතින බව අනුව නිර්වචනය වේ. System Uptime / (System Uptime+Downtime) යනු එය ගණනය කිරීමේ සූත්රයයි.
8. ACID ගුණාංග මොනවාද?
- පරමාණුකත්වය: දත්ත සමුදාය වෙනස් කිරීම් සියල්ලම හෝ කිසිවක් නොවන බව එය සහතික කරයි.
- අනුකූලතාව: දත්ත සමුදායේ දත්ත අගයන් අනුකූල වේ.
- හුදකලා කිරීම: එය ගනුදෙනු දෙකක් වෙන් කිරීම ගැන සඳහන් කරයි.
- කල්පැවැත්ම: සේවාදායකය අසමත් වුවද දත්ත සුරැකේ.
9. හරියටම ෂර්ඩින් යනු කුමක්ද?
Sharding යනු විශාල තාර්කික දත්ත කට්ටලයක් බොහෝ දත්ත සමුදායන්ට බෙදීමේ තාක්ෂණයයි. එය තිරස් දත්ත බෙදීම ද සඳහන් කරයි, මන්ද දත්ත පරිගණක කිහිපයක ගබඩා වනු ඇත. එහි ප්රතිඵලයක් වශයෙන්, හවුල් දත්ත ගබඩාවකට තනි දැවැන්ත පරිගණකයකට වඩා වැඩි විමසුම් හැසිරවිය හැක.
10. CDN යනු කුමක්ද?
අන්තර්ගත බෙදාහැරීමේ ජාලයක් යනු අන්තර්ජාල තොරතුරු වේගයෙන් සැපයීමට සහයෝගීව ක්රියා කරන ලෝක ව්යාප්ත පරිගණක ජාලයකි. එය අන්තර්ජාල අන්තර්ගතය පූරණය කිරීමට අවශ්ය HTML පිටු, JavaScript ගොනු, මෝස්තර පත්ර, පින්තූර සහ වීඩියෝ වැනි මූලද්රව්ය ඉක්මනින් බෙදා හැරීම සබල කරයි.
11. CDN භාවිතා කරන්නේ ඇයි?
- ස්ථිතික සම්පත් සැලකිල්ලට ගනිමින් වෙබ් අඩවියක 80% ක් පමණ වන අතර, CDN භාවිතා කිරීම සම්භව සේවාදායකයේ ආතතිය සැලකිය යුතු ලෙස අඩු කරයි.
- ගමන් කිරීමට දුර අඩු බැවින්, බොහෝ භූගෝලීය ප්රදේශවලින් අමුත්තන් සිටින වෙබ් අඩවි හිමිකරුවන්ට තොරතුරු ඉක්මනින් ලබා දෙනු ඇත.
- CDN භාවිතා කරන්නන් රථවාහන තදබදයට ප්රතිචාර වශයෙන් ඉක්මනින් ඉහළට සහ පහළට පරිමාණය කිරීමේ හැකියාවෙන් ද ප්රතිලාභ ලබයි.
12. sharding සහ partitioning අතර වෙනස කුමක්ද?
දත්ත සමුදාය බෙදාගැනීම - දත්ත සමුදාය බෙදාගැනීම යනු එක් දත්ත සමුදායක් විවිධ වැඩපොළවල ගබඩා කළ හැකි වන පරිදි බොහෝ දත්ත සමුදායන් බවට බෙදීමේ ක්රමයකි. විශාල දත්ත කට්ටල කුඩා කැබලිවලට කැඩී දත්ත නෝඩ් කිහිපයක ගබඩා කර පද්ධතියේ සම්පූර්ණ ගබඩා ධාරිතාව වැඩි කරයි.
බොහෝ යන්ත්ර හරහා දත්ත ව්යාප්ත කිරීමෙන්, බෙදාගත් දත්ත සමුදායකට තනි පද්ධතියකට වඩා වැඩි විමසුම් හැසිරවිය හැක.
දත්ත සමුදාය කොටස් කිරීම යනු ගබඩා කර ඇති දත්ත සමුදා වස්තු (වගු, දර්ශක සහ දර්ශන) වෙනම කොටස් වලට බෙදීමේ ක්රියාවලියයි. පාලනය කිරීමේ හැකියාව, කාර්ය සාධනය සහ ලබා ගැනීමේ හැකියාව වැඩි කිරීම සඳහා, විශාල දත්ත සමුදා වස්තු කොටස් කර ඇත.
සමහර අවස්ථාවලදී, කොටස් කළ දත්ත වෙත ප්රවේශ වීමේදී කොටස් කිරීම වේගය වැඩි දියුණු කළ හැක. කොටස් කිරීම මඟින් දර්ශක ප්රමාණය අඩු කළ හැකි අතර දර්ශකවල ප්රමුඛ තීරුවක් ලෙස ක්රියා කිරීමෙන් මතකයේ වඩාත්ම අවශ්ය දර්ශක ස්ථානගත කිරීමේ අවස්ථාව වැඩි කළ හැකිය.
13. හැඹිලි කිරීම යනු කුමක්ද?
හැඹිලිගත කිරීම යනු දත්ත ප්රවේශය වේගවත් කරන සහ වෙබ් අඩවි ප්රමාදය අඩු කරන තාවකාලික ගබඩා ප්රදේශයක ගොනු පිටපත් තබා ගැනීමේ තාක්ෂණයයි. හැඹිලියේ ගබඩා කළ හැක්කේ නිශ්චිත දත්ත ප්රමාණයක් පමණි.
එහි ප්රතිඵලයක් වශයෙන්, ව්යාපාරික අරමුණු සඳහා වඩාත් ගැලපෙන හැඹිලි යාවත්කාලීන ක්රම නිර්ණය කිරීම ඉතා වැදගත් වේ.
14. CDN එජ් සර්වර් යනු මොනවාද?
ඔබේ මුල් සේවාදායකයෙන් හෝ ගබඩා පොකුරෙන් ලබාගත් ද්රව්ය හැඹිලි කරන CDN සේවාදායකයන් එජ් සර්වර් ලෙස හැඳින්වේ. පොයින්ට් ඔෆ් ප්රෙෂන්ට් යනු එජ් සර්වර් (පීඕපී) විස්තර කිරීමට නිතර භාවිතා වන පදයකි.
එජ් සර්වර් භෞතිකව POP එකක ස්ථානගත කර ඇත. එම POP හිදී, බොහෝ එජ් සර්වර් මගින් තොරතුරු හැඹිලිගත කළ හැක.
ස්ථාන කිහිපයකින් වෙබ් අඩවියක කොටස් සැපයීමේ හැකියාව අමුත්තන් සහ වෙබ් සේවාදායකය අතර දුර අඩු කරයි, ප්රමාදය අඩු කරයි. CDN එජ් සර්වර් මෙම නිශ්චිත ඉලක්කය සපුරා ගනී.
15. පද්ධති නිර්මාණය සඳහා විවිධ අනුකූලතා රටා මොනවාද?
සෑම කියවීමක් ඉල්ලීමක්ම CAP ප්රමේයයට අනුව ඉතා මෑතක දී ලියන ලද දත්ත ලබා ගත යුතුය. බොහෝ දත්ත පිටපත් වෙත ප්රවේශ විය හැකි විට, පාරිභෝගිකයින්ට අඛණ්ඩව නැවුම් දත්ත ලැබෙන පරිදි ඒවා සමමුහුර්ත කිරීම අපහසු වේ. හැකි අනුකූලතා රටා පහත දැක්වේ:
- දුර්වල අනුකූලතාව: දත්ත ලිවීමෙන් පසුව, කියවීමේ ඉල්ලීමට යාවත්කාලීන දත්ත ලබා ගැනීමට හෝ නොහැකි විය හැක. VoIP, වීඩියෝ කතාබස්, සහ බහු ක්රීඩක ක්රීඩා වැනි තත්ය කාලීන යෙදුම් සඳහා මෙම ස්ථායීතාවය වඩාත් සුදුසු වේ.
- අවසාන අනුකූලතාව: කියවීම් අවසානයේ දත්ත ලිවීමෙන් පසු මිලිතත්පර තුළ වඩාත්ම මෑත දත්ත දකියි. මෙම අවස්ථාවෙහිදී දත්ත අසමමුහුර්තව අනුපිටපත් කර ඇත. DNS සහ ඊමේල් පද්ධති මේ සඳහා උදාහරණ වේ. මෙය ඉහළ ලබා ගත හැකි පද්ධතිවල ඵලදායී ලෙස ක්රියා කරයි.
- ශක්තිමත් අනුකූලතාවක්: දත්ත ලිවීමෙන් පසුව, අනාගත පාඨකයින් වඩාත් මෑත දත්ත බලයි. මෙම අවස්ථාවෙහිදී දත්ත සමමුහුර්තව පිටපත් කරනු ලැබේ. දත්ත හුවමාරු සඳහා සුදුසු RDBMS සහ ගොනු පද්ධතිවල මෙය නිරීක්ෂණය කළ හැක.
16. ශුභවාදී අගුලු දැමීම යන්නෙන් ඔබ අදහස් කරන්නේ කුමක්ද?
Optimistic locking යනු ඔබ වාර්තාවක් කියවන යාන්ත්රණයකි, අනුවාද අංකයක් සටහන් කරන්න (විකල්ප ක්රමවලට දින, වේලා මුද්රා, හෝ චෙක්සම්/හෑෂ් ඇතුළත් වේ), ඉන්පසු එය නැවත ලිවීමට පෙර අනුවාදය වෙනස් වී නැති බව දෙවරක් පරීක්ෂා කරන්න.
ඔබ වාර්තාව නැවත ලියන විට, එය පරමාණුක බව සහතික කිරීම සඳහා යාවත්කාලීනය පෙරීමට ඔබ අනුවාදය භාවිතා කරයි. (එනම්, ඔබ අනුවාදය පරීක්ෂා කරන විට සහ ඔබ තැටියට වාර්තාව ලියන විට අතර වෙනස් කර නැත) සහ එය එකවර යාවත්කාලීන කරන්න.
17. "නායක මැතිවරණය" යන්නෙන් ඔබ හරියටම අදහස් කරන්නේ කුමක්ද?
යෙදුම ලබා ගැනීමට දායක වන බොහෝ සේවාදායකයන් සහිත බෙදා හරින ලද පද්ධතියක, API භාවිතා කිරීමේදී බහු සේවාදායකයන් ගැටළු ඇති කළ හැකි බැවින්, තෙවන පාර්ශවීය API යාවත්කාලීන කිරීම සඳහා එක් සේවාදායකයක් පමණක් වගකිව යුතු අවස්ථා තිබිය හැක.
මෙම සේවාදායකය ප්රාථමික සේවාදායකය ලෙස හඳුන්වනු ලබන අතර, එය තෝරා ගැනීමේ ක්රියා පටිපාටිය නායක මැතිවරණය ලෙස හැඳින්වේ. බෙදා හරින ලද පද්ධතියක නායක සේවාදායකය අසමත් වූ විට, සේවාදායකයන් අසමත් වීම දැක නව නායකයෙකු තෝරා ගත යුතුය. සම්මුති තාක්ෂණයක් භාවිතා කරමින්, මෙම ප්රවේශය ඉහළ උපයෝගිතා සහ ශක්තිමත් අනුකූලතා යෙදුම් සඳහා වඩාත් සුදුසු වේ.
18. TinyURL වැනි URL කෙටි කිරීමේ සේවාවක් සැලසුම් කිරීම සඳහා ඔබේ ප්රවේශය කුමක්ද?
TinyURL දිගු URL එකක් තනි, අද්විතීය කෙටි URL එකක් බවට පරිවර්තනය කරයි. මෙම තාක්ෂණයන්ට කෙටි URL එකක් පිළිගෙන සම්පූර්ණ URL ආපසු ලබා දිය හැක.
තීරණාත්මක ගුණාංග සමහරක් මොනවාද?
- මුල් පිටපතට වඩා කෙටි URL එකක් සාදන්න.
- දිගු URL එක තබා එය කෙටි එකකින් ප්රතිස්ථාපනය කරන්න.
- කෙටි URL වලින් යළි හරවා යැවීමට ඉඩ දෙන්න.
- අභිරුචි නම් සහිත කෙටි URL සඳහා සහය දක්වයි.
- එකවර විමසීම් කිහිපයක් හසුරුවන්න.
වඩාත්ම පොදු ගැටළු මොනවාද?
- ඔබ දත්ත සමුදා ආචයනය නිරීක්ෂණය කරන්නේ කෙසේද?
- පරිශීලක පැටවීම අපේක්ෂාවන් ඉක්මවා ගියහොත් කුමක් සිදුවේද?
- පුද්ගලයන් දෙදෙනෙකු එකම අභිරුචි URL භාවිතා කරන්නේ නම් කුමක් කළ යුතුද?
පහත යෝජනා සලකා බලන්න:
- Hashing යනු පැරණි සහ නව URL සම්බන්ධ කිරීමට භාවිතා කළ හැකි සංකල්පයකි.
- REST API ඉදිරිපස සන්නිවේදනය හැසිරවීමට සහ අධික බර සමතුලිත කිරීමට භාවිතා කළ හැක.
- Multithreading යනු ඔබට එකවර ඉල්ලීම් කිහිපයක් හැසිරවීමට ඉඩ සලසන සංකල්පයකි.
- මුල් URLs ගබඩා කර ඇත්තේ NoSQL දත්ත සමුදායන් තුළය.
19. twitter නිර්මාණය කිරීමට ඔබේ ප්රවේශය කුමක්ද?
ලබා දී ඇති අවශ්යතා:
- ට්වීට් යවනවා
- වෙනත් පරිශීලකයින් අනුගමනය කිරීම
- Tweet feed/newsfeed
- පද්ධතිය පරිමාණය කළ හැකි ය
- ඉක්මනින් පූරණය වේ
- පද්ධතිය විශ්වසනීයයි
ඔබ නිර්ණායක ස්ථාපිත කළ විට ඔබට ඔබේ Twitter API නිර්මාණය ගැන සිතීම ආරම්භ කළ හැක. එය දිස්වන ආකාරය මෙයයි:
ආරම්භ කිරීමට, අපි API හි ප්රධාන අන්ත ලක්ෂ්ය සටහන් කරමු. මෙන්න උදාහරණ කිහිපයක්:
- යවන්න ට්වීට් (පණිවිඩය)
- අනුගමනය කරන්නා (පරිශීලක හැඳුනුම)
- UnfollowUser(userID)
- getFeed(පිටුව)
මෙම ලක්ෂණ සක්රීය කරන ගෘහ නිර්මාණ ශිල්පය පසුව සටහන් කළ හැකිය. අපට සේවාදායක ඉල්ලීමක් ඉදිරිපත් කරන පරිශීලකයා සමඟ ආරම්භ කළ හැකිය. පරිමාණ අවශ්යතා සපුරාලීම සඳහා විශාල මාර්ග තදබදයක් ඇති කිරීමට අපට අමතර API සේවාදායකයන් load balancer එකක් පිටුපස ස්ථාපනය කළ හැක. අපට දැන් අපගේ ට්වීට් ගබඩා කිරීමට දත්ත සමුදායක් එක් කිරීමට අවශ්ය වනු ඇත.
අප සපයන API පරිමාණය කළ හැකි බව මතක තබා ගැනීම වැදගත්ය. මෙම සේවාව පරිමාණය කළ හැකි බවට පත් කිරීම සඳහා, අපගේ ප්රවෘත්ති සංග්රහය සඳහා වෙනම හැඹිලියකින් අපගේ API සේවාදායකයෙන් එකක් කියවීමට අපට හැකිය. එසේ කරන අතරතුර, අපගේ සංග්රහ හැඹිලිය යාවත්කාලීනව තබා ගැනීමට අපි පෝෂක සපයන්නා භාවිතා කළ යුතුය.
20. Facebook සඳහා newsfeed පද්ධතිය සාදන්න
Facebook හි ප්රවෘත්ති සංග්රහය පරිශීලකයින්ට ඔවුන්ගේ මිතුරන්ගේ කවයන්, ප්රියතම පිටු සහ ඔවුන් අනුගමනය කළ සංවිධානවල සිදුවන්නේ කුමක්ද යන්න බැලීමට ඉඩ සලසයි.
අත්යවශ්ය ලක්ෂණ සමහරක් මොනවාද?
- පරිශීලකයා අනුගමනය කරන වෙනත් පද්ධති ආයතනවල පළ කිරීම් මත පදනම්ව පුවත් සංග්රහයක් සාදන්න.
- පෙළ, පින්තූර, ශ්රව්ය සහ වීඩියෝ සියල්ලම Newsfeed පළ කිරීම් තුළ භාවිතා කළ හැක.
- තත්ය කාලීනව, පරිශීලකයාගේ ප්රවෘත්ති සංග්රහයට නැවුම් අන්තර්ගතයක් එක් කරන්න.
වඩාත් පොදු ගැටළු සමහරක් මොනවාද?
- නව පළ කිරීම ප්රවෘත්ති සංග්රහයේ දිස් වීමට බොහෝ කාලයක් ගත වුවහොත් කුමක් කළ යුතුද?
- ඇල්ගොරිතමයට පරිශීලක ක්රියාකාරකම්වල වැඩිවීමක් කළමනාකරණය කළ හැකිද?
- ප්රවෘත්ති සංග්රහයේ පළමුව පෙන්විය යුතු පළ කිරීම් මොනවාද?
පහත යෝජනා සලකා බලන්න:
- අනුගාමිකයින්ට තනතුරු බෙදා හැරීම සඳහා fanout යාන්ත්රණය පරීක්ෂා කරන්න.
- ඉහළ පරිශීලක පැටවීම් කාර්යක්ෂමව හැසිරවීමට ෂර්ඩින් භාවිතා කළ හැකි ආකාරය පරීක්ෂා කරන්න.
- පරිශීලකයෙකුගේ සංග්රහ දත්ත බොහෝ සේවාදායක හරහා අනුපිටපත් නොකළ යුතුය. පරිශීලක හැඳුනුම්පත් මත පදනම්ව බෙදා ගැනීම වෙනුවට සිදු කළ හැක.
21. පද්ධතියක මූලික දේපල යනු කුමක්ද?
BASE විශේෂාංග මෑතදී මතු වූ NoSQL දත්ත සමුදායන් තුළ සෑම තැනකම පවතී. CAP ප්රමේයයට අනුව BASE පද්ධතියක් අනුකූලතාවයක් ලබා නොදේ. මෙය පද්ධතියක CAP ප්රමේයයේ පහත ගුණාංගයට අනුරූප වන සාදන ලද කෙටි යෙදුමකි:
- "මූලික වශයෙන් ලබා ගත හැකි" යන යෙදුමෙන් අදහස් වන්නේ පද්ධතිය සෑම විටම පවතිනු ඇති බවයි.
- මෘදු තත්ත්වයක් යන්නෙන් අදහස් කරන්නේ ආදානයක් සපයා නොමැති වුවද පද්ධතියේ තත්ත්වය කාලයත් සමග වෙනස් විය හැකි බවයි. මෙයට බොහෝ දුරට හේතුව ආකෘතියේ අවසාන අනුකූලතාවයයි.
- එම කාල පරිච්ෙඡ්දය තුළ පද්ධතියට ආදානය නොලැබෙන බැවින්, අවසාන අනුකූලතාවය යනු කාලයත් සමඟ පද්ධතිය ස්ථාවර වන බවයි.
22. IP Address Affinity Technique සමඟ බර තුලනය කිරීම යනු කුමක්ද?
බර තුලනය කිරීමේ තවත් ප්රමුඛ ක්රමයක් වන්නේ IP ලිපින සම්බන්ධතාවයයි. මෙම ක්රමයේදී සේවාදායක IP ලිපිනය සේවාදායක නෝඩයක් සමඟ සම්බන්ධ වේ. සේවාදායක IP ලිපිනයකින් ලැබෙන සියලුම ඉල්ලීම් එක් සේවාදායක නෝඩයක් හසුරුවයි.
HTTP ඉල්ලීම් ශීර්ෂය තුළ IP ලිපිනය සැමවිටම ප්රවේශ විය හැකි බැවින් මෙම ක්රමය ක්රියාත්මක කිරීම සරල වන අතර වැඩිදුර සැකසීම් අවශ්ය නොවේ. ඔබගේ සේවාලාභීන්ට කුකීස් අක්රිය කිරීමට ඉඩ තිබේ නම්, මෙම බර තුලනය කිරීමේ ක්රමය වාසිදායක විය හැක.
23. හැඹිලි ප්රතිස්ථාපන (හෝ ඉවත් කිරීමේ ප්රතිපත්ති) ඇල්ගොරිතම යනු කුමක්ද?
හැඹිලි ඇල්ගොරිතම (හැඹිලි ප්රතිස්ථාපන ඇල්ගොරිතම, හැඹිලි ප්රතිස්ථාපන ප්රතිපත්ති, හෝ හැඹිලි ඉවත් කිරීමේ ප්රතිපත්ති ලෙසද හැඳින්වේ) යනු පරිගණකයේ ගබඩා කර ඇති දත්ත හැඹිලියක් කළමනාකරණය කිරීමට පරිගණක වැඩසටහනක් හෝ දෘඪාංග නඩත්තු කරන ව්යුහයක් භාවිතා කළ හැකි ප්රශස්තිකරණ උපදෙස් හෝ ඇල්ගොරිතම වේ.
සාම්ප්රදායික මතක ගබඩාවට වඩා ප්රවේශ වීමට ඉක්මන් හෝ අඩු වියදම් සහිත මතක කලාපවල මෑතකදී භාවිතා කළ හෝ නිතර ප්රවේශ වූ දත්ත ගබඩා කිරීමෙන් හැඹිලිගත කිරීම වේගය වැඩි කරයි. හැඹිලිය පිරී ඇති විට, නව ඒවා සඳහා ස්ථානයක් සෑදීම සඳහා ඉවත් කළ යුතු අයිතමයන් ඇල්ගොරිතම විසින් තීරණය කළ යුතුය.
24. බෙදා හරින ලද ගනුදෙනුව යන්නෙන් ඔබ හරියටම අදහස් කරන්නේ කුමක්ද?
බෙදා හරින ලද ගනුදෙනුවක් යනු තනි සිදුවීමක් පරමාණුක වශයෙන් සිදු කළ නොහැකි වෙනස් දත්ත ප්රභවයන් දෙකක් හෝ වැඩි ගණනක් වෙනස් කිරීමට හේතු වන ඕනෑම අවස්ථාවක් වේ.
සෑම සේවාවක්ම වැඩ කරන ඒකකයක් වන බැවින් ක්ෂුද්ර සේවා ලෝකයේ එය වඩාත් සංකීර්ණ වන අතර බොහෝ විට ව්යාපාරයක් සාර්ථක කර ගැනීම සඳහා බොහෝ සේවාවන් සහයෝගයෙන් කටයුතු කළ යුතුය.
25. ඇත්තෙන්ම කුසගින්න යනු කුමක්ද?
ත්රෙඩ් එකකට හවුල් සම්පත් වෙත නිතිපතා ප්රවේශය ලබා ගැනීමට නොහැකි වූ විට, එය කුසගින්නෙන් පෙළෙන බව කියනු ලැබේ. මෙය සිදු වන්නේ "ගිජු" නූල් හෝ ඉහළ "ප්රමුඛත්වය" ඇති නූල් දිගු කාලයක් සඳහා හවුල් සම්පත් වෙත ප්රවේශ විය නොහැකි විටය.
නිතර ප්රමාද වී ආපසු එන සමමුහුර්ත ක්රමයක් සපයන වස්තුවක් සලකා බලන්න. එක් ත්රෙඩ් එකක් මෙම ක්රමයට නැවත නැවත කතා කරන්නේ නම්, එකම වස්තුවට නිතර සමමුහුර්ත ප්රවේශය අවශ්ය වන අනෙකුත් නූල් බොහෝ විට අවහිර කරනු ලැබේ.
නිගමනය
පද්ධති සැලසුම් සම්මුඛ පරීක්ෂණයට ඇතුළත් වන්නේ මොළය අවුස්සන සැසියකි. අපි මෙම සටහනේ වඩාත් පොදු පද්ධති සැලසුම් සම්මුඛ පරීක්ෂණ ප්රශ්න ආමන්ත්රණය කළෙමු.
විශේෂිත පද්ධතියක් නිර්මාණය කිරීමේදී ඔබ ගන්නා ක්රමය පිළිබඳ සවිස්තරාත්මක ග්රහණයක් පද්ධති සැලසුම් සම්මුඛ පරීක්ෂණයක් සමත් වීම සඳහා ඉතා වැදගත් වේ..
ඔබමයි