WordPress සත්කාරකත්වය සහ ප්ලගීන
WordPress වේගවත් සහ ආරක්ෂිත කිරීම: කාර්යසාධනය සහ ප්ලගීන පිරික්සුම් ලැයිස්තුවක්
WordPress සෑම විටම වේගවත් සහ ආරක්ෂිත වන්නේ එය ධාවනය වන පරිසරය තරමට පමණි. අප විසින් සත්කාරකත්වය සපයන සෑම WordPress අඩවියකටම අප යොදන ප්රායෝගික පිරික්සුම් ලැයිස්තුව මෙන්න — හැඹිලිගත කළ යුත්තේ මොනවාද, සුරක්ෂිත කළ යුත්තේ මොනවාද, සහ වේදිකාව මගින් අතිරික්ත බවට පත් කරන ප්ලගීන වලට සාපේක්ෂව තම ස්ථානය රඳවා ගැනීමට සුදුසු ප්ලගීන මොනවාද යන්නයි.
WordPress හි ගුණාත්මකභාවය තීරණය වන්නේ එය ධාවනය වන පරිසරය මත පමණි
WordPress නම්යශීලී බැවින් එය වෙබයේ විශාල කොටසක් බලගන්වයි, නමුත් එම නම්යශීලීභාවය නිසාම එය මන්දගාමී සහ අනාරක්ෂිත වේ: පෙරනිමි ස්ථාපනයක් එක් පිටුවකට දත්ත සමුදායෙන් දුසිම් ගණනක් විමසීම් කරයි, බලන ඕනෑම කෙනෙකුට එහි අනුවාදය සහ තාක්ෂණික එකතුව ප්රචාරය කරයි, සහ කාර්ය සාධනය සහ ප්රහාරක අවදානම යන දෙකම නිහඬව විශාල වන තුරු ප්ලගීන එකතු කිරීමට ඔබට ආරාධනා කරයි. මෙයින් කිසිවක් WordPress හි දෝෂයකට වඩා උපකාර කිරීමට කිසිවක් නොකරන යටිතල පහසුකම් මත එය ක්රියාත්මක කිරීමේ ප්රතිඵලයකි.
ශුභාරංචිය නම්, එම තීරණ කිහිපයකින්ම මෙයින් වැඩි ප්රමාණයක් විසඳා ගත හැකි වීමයි, එමෙන්ම ඒවා අන්තර්ගතය පිළිබඳව නොව තාක්ෂණික එකතුව (stack) පිළිබඳ තීරණ වේ. නිවැරදි ස්ථරයේදී දැඩි ලෙස හැඹිලිගත (cache) කරන්න, දත්ත සමුදාය කාර්යබහුල මාර්ගයෙන් (hot path) බැහැරව තබන්න, සැබවින්ම ප්රයෝජනවත් වන ප්ලගීන කිහිපය පමණක් ක්රියාත්මක කරන්න, සියල්ල යාවත්කාලීනව තබා ගන්න, සහ ගැටලුවක් පාලනය කර තබා ගැනීම සඳහා වෙබ් අඩවිය වෙන් කර තබන්න. මෙම ලිපිය එම පිරික්සුම් ලැයිස්තුව වන අතර, වේදිකාවේ ඇති සෑම WordPress අඩවියකටම අප එය යොදන අනුපිළිවෙලින් මෙහි දක්වා ඇත.
ප්ලගිනයක පමණක් නොව සර්වරයෙහි හැඹිලිගත කරන්න
WordPress වේගය කෙරෙහි බලපාන ප්රධානතම සාධකය වන්නේ බොහෝ පිවිසුම් සඳහා WordPress කිසිසේත්ම ධාවනය නොකිරීමයි. සාමාන්ය ඉල්ලීමකදී එක් බයිටයක් හෝ යැවීමට පෙර WordPress බූට් කර, ඔබගේ ප්ලගීන ධාවනය කර, දත්ත සමුදායෙන් විමසීම් සිදු කරයි; සම්පූර්ණ පිටු හැඹිලියක් (full-page cache) මඟින් ඊළඟ පිවිසුමේදී එම සම්පූර්ණ ආරම්භක ක්රියාවලිය මඟහැර සූදානම් කළ පිටුව කෙලින්ම වෙබ් සේවාදායකයෙන් ලබා දෙයි. එම හැඹිලිය පවතින්නේ කොතැනද යන්න වැදගත් වේ: හැඹිලි ප්ලගීනයක් පවතින්නේ PHP තුළ බැවින් හැඹිලියට ප්රතිචාර දැක්වීමට පෙර PHP ක්රියාත්මක වේ, නමුත් සේවාදායක මට්ටමේ හැඹිලියක් ඉල්ලීමක මුල් අවස්ථාවේදීම ප්රතිචාර දක්වන අතර සේවාදායකයට ක්ෂණිකව ඉවත් කළ හැකි ආකාරයෙන් පිටු රඳවා ගනී.
අප සත්කාරකත්වය සපයන සෑම WordPress අඩවියක්ම සර්වර් මට්ටමේ LSCache සහිත LiteSpeed Enterprise මත ධාවනය වන අතර, අපගේම හැඹිලි ප්ලගිනය මඟින් එයට WordPress නිවැරදිව සම්බන්ධ කරයි — පෙර-ස්ථාපනය කර ස්වයංක්රීයව යාවත්කාලීන වන බැවින්, වින්යාස කිරීමට හෝ යාවත්කාලීනව තබා ගැනීමට ඇති කාර්යයන් අඩු වේ. LiteSpeed නොවන මූලයක් මත එකම ප්ලගිනය සරලවම සම්පූර්ණ පිටු ශීර්ෂ නිකුත් නොකරන අතර වස්තු හැඹිලිය දිගටම ක්රියාත්මක වන අතරතුර බාධාවකින් තොරව පවතී, එබැවින් සංක්රමණය වූ අඩවියක් කිසි විටෙකත් අඩක් වින්යාස කර ඉතිරි නොවේ. ඔබගේම පිරික්සුම් ලැයිස්තුව සඳහා ප්රායෝගික රීතිය: සර්වරයේ එක් සම්පූර්ණ පිටු හැඹිලියක්, සහ එය මත දෙවන හැඹිලි ප්ලගිනයක් එක් නොකරන්න — ඒවා එකිනෙක ගැටේ.
වස්තු හැඹිලිය සහ දත්ත සමුදාය
සෑම ඉල්ලීමක්ම ස්ථිතික පිටුවක් විය නොහැක. ලොග් වී ඇති සැසි, පරිපාලක (admin), සෙවීම්, කරත්ත (carts) සහ ඕනෑම පුද්ගලාරෝපිත කොටසක් සඳහා PHP ධාවනය විය යුතු අතර, ඒ සඳහා ඉලක්කය යෙදුම මඟ හැරීමේ සිට දත්ත සමුදාය මඟ හැරීම දක්වා මාරු වේ. එක් එක් අඩවිය සඳහා වන වස්තු හැඹිලියක් (object cache) — අපගේ නඩුවේදී Redis — නැවත නැවත සිදුවන දත්ත සමුදා කියවීම් වල ප්රතිඵල මතකයේ තබා ගනී, එබැවින් සෑම පිවිසුමකදීම එකම විකල්ප, අස්ථිර දත්ත (transients) සහ සෙවීම් දත්ත සමුදායෙන් විමසනු නොලැබේ. සම්පූර්ණ පිටු හැඹිලියට උදව් කළ නොහැකි තැන්වලදී මෙහි බලපෑම හරියටම පෙන්නුම් කරයි: වඩා වේගවත් පරිපාලකයක්, වේගවත් කරත්ත සහ තදබදය යටතේ බෙහෙවින් අඩු දත්ත සමුදා පැටවීමක්.
වැදගත්ම වචනය වන්නේ එක් එක් අඩවියට වෙන් වූ යන්නයි. හවුල් වස්තු හැඹිලියක් (shared object cache) යනු අධික තදබදයක් ඇති හෝ දුර්වල ලෙස ලියන ලද එක් වෙබ් අඩවියකට අනෙක් සියලු දෙනාගේ හැඹිලිගත දත්ත ඉවත් කර එහි අසල්වැසියන් සඳහා දත්ත සමුදාය ක්ෂය කළ හැකි බවයි; එක් එක් අඩවියට වෙන් වූ දත්ත සමුදා සීමාවන් සමඟ ඒකාබද්ධ වූ කැපවූ හැඹිලියක් මඟින් එම හානි විය හැකි ප්රදේශය සීමා කර තබයි. ඔබගේ පිරික්සුම් ලැයිස්තුවේ, ලොග් වූ පරිශීලකයින් හෝ වෙළඳසැලක් ඇති ඕනෑම වෙබ් අඩවියක් සඳහා ස්ථාවර වස්තු හැඹිලියක් අනිවාර්ය ලෙස සලකන්න, තවද එය බදුකරුවන් අතර බෙදා ගන්නා හොස්ටිං පිළිබඳව ප්රවේශම් වන්න.
භාවිතා කිරීමට සුදුසු ප්ලගීන — සහ වේදිකාව මඟින් ප්රතිස්ථාපනය කරන ඒවා
ඔබ එක් කරන සෑම ප්ලගිනයක්ම ඉල්ලීම් මත ධාවනය වන කේතයක් වන අතර කවදා හෝ යමෙකු ඇතුළු විය හැකි දොරටුවක්ද වේ, එබැවින් අවංක ඉලක්කය වන්නේ උපරිම කාර්යයක් ඉටු කරන අවම ප්ලගීන ප්රමාණයක් තිබීමයි. හොඳ හොස්ට් එකක් මඟින් ඒවායේ සම්පූර්ණ ප්රවර්ගයක අවශ්යතාවය ඉවත් කරයි: සර්වර් මට්ටමේ හැඹිලිකරණය (caching), කළමනාකරණය කළ වස්තු හැඹිලිය (object cache) සහ වේදිකා උපස්ථයන් සමඟ, ඔබට හැඹිලි ප්ලගිනයක්, වෙනම වස්තු-හැඹිලි ප්ලගිනයක් හෝ උපස්ථ ප්ලගිනයක් අවශ්ය නොවේ — එම කාර්යයන් WordPress වලට පහළින් වඩා හොඳින් සිදු කෙරෙන අතර, ඒවා ඉහළින් ධාවනය කිරීමෙන් සිදුවන්නේ ගැටුම් සහ අමතර බරක් ඇතිවීම පමණි.
ධාවනය කිරීමට වටිනා ලෙස ඉතිරිව ඇත්තේ සැබෑ හැකියාවක් එක් කරන කුඩා කට්ටලයයි: ඔබගේ වෙබ් අඩවියේ ක්රියාකාරිත්වය සඳහා සැබවින්ම අවශ්ය ප්ලගීන, සහ — අපගේ වේදිකාව මත — අප විසින් සාදා සෑම වෙබ් අඩවියක් සමඟම ලබා දෙන ගබඩා-මට්ටමේ (repo-grade) ප්ලගීන දෙකයි. අපගේ කැෂේ (cache) ප්ලගීනය මඟින් WordPress සේවාදායක කැෂේ එකට සම්බන්ධ කරන අතර ස්මාර්ට් ඉවත් කිරීම් හසුරුවයි, එබැවින් සංස්කරණයකින් ඉවත් කරනු ලබන්නේ ඉවත් කළ යුතු පිටු පමණි. අපගේ පා සලකුණු (footprint) ප්ලගීනය මඟින් සම්මත WordPress ස්ථාපනයකින් විකාශනය වන සලකුණු — අනුවාදය සහ උත්පාදක ටැගය, සොයාගැනීමේ අන්ත ලක්ෂ්ය, XML-RPC, පිංබැක් සහ powered-by ශීර්ෂකය — සෑම ක්රියාත්මක කිරීමකදීම ඉවත් කරයි, එබැවින් ප්ලගීනයක් හෝ තේමා යාවත්කාලීනයක් මඟින් ඒවා නිශ්ශබ්දව නැවත ලබා දිය නොහැක. මේවා දෙකම WordPress.org ප්ලගීන-නාමාවලි ප්රමිතීන්ට අනුකූලව ගොඩනගා ඇති අතර, නොමිලේ වන අතර, ස්වයංක්රීයව යාවත්කාලීන වේ.
WordPress ආරක්ෂිතව සහ යාවත්කාලීනව තබා ගැනීම
බොහෝ WordPress අවදානම් වලට ලක්වීම් සූක්ෂ්ම ඒවා නොවේ; ඒවා පැරණි ඒවා වේ. ප්රසිද්ධ කරන ලද, දන්නා දුර්වලතාවක් සහිත යල් පැන ගිය core, theme හෝ plugin යනු වෙබ් අඩවි ප්රහාරයන්ට ලක්වන වඩාත් පොදු ක්රමයයි, එමඟින් යාවත්කාලීනව සිටීම පවතින ඉහළම වටිනාකමකින් යුත් ආරක්ෂක කාර්යය බවට පත් කරයි — එමෙන්ම වඩාත්ම වෙහෙසකර කාර්යයද වන බැවින් එය මඟ හැරේ. කළමනාකරණය කළ hosting මඟින් මෙම බර ඔබෙන් ඉවත් කළ යුතුය: WordPress යටතේ ඇති stack එක patch කිරීම සහ ඒවා පරීක්ෂා කිරීමට ඔබට staging පිටපතක් සහ නැවත යථා තත්ත්වයට පත් කිරීමට උපස්ථයක් ලබා දීමෙන් core සහ plugin යාවත්කාලීන කිරීම් යෙදීම ආරක්ෂිත කිරීම.
යාවත්කාලීන භාවයට අමතරව, ඔබ වෙනුවෙන් සීමාවන් බලාත්මක කරනු ඇතැයි අපේක්ෂා කරන්න: අමුත්තෙකු විසින් සොයා ගැනීමට පෙර ආසාදනයක් හඳුනා ගැනීම සඳහා පෙරනිමියෙන්ම ක්රියාත්මක වන අනිෂ්ට මෘදුකාංග පරිලෝකනය, එක් අවදානමට ලක් වූ වෙබ් අඩවියකට තවත් වෙබ් අඩවියකට ප්රවේශ විය නොහැකි වන පරිදි හුදකලා කිරීම, දාරයේ DDoS ආරක්ෂාව, සහ ස්වයංක්රීයව අලුත් කරන ලද සහතික සමඟ සෑම තැනකම TLS. ශක්තිමත් අක්තපත්ර, අවම වරප්රසාද සහිත ප්රවේශය, ඔබ තවදුරටත් භාවිත නොකරන ප්ලගීන ඉවත් කිරීම වැනි මූලික පිළිවෙත් කිසිවක් මෙයින් ප්රතිස්ථාපනය නොවේ — නමුත් එයින් අදහස් වන්නේ යටිතල පහසුකම් දුර්වල සම්බන්ධකය නොවන බවයි. ඔබගේ පිරික්සුම් ලැයිස්තුවේ, ඕනෑම සත්කාරකයෙකු සඳහා වන ප්රශ්නය සරල ය: ආරක්ෂාව යනු පෙරනිමියක් ද, නැතහොත් ඔබ මිලදී ගන්නා මිටියක් ද?
WooCommerce සහ ඔබ කිසි විටෙකත් හැඹිලිගත නොකළ යුතු පිටු
ආක්රමණශීලී හැඹිලිකරණය (caching) එහි විශාලතම වාසිය ලබා ගන්නා සහ එය නොසැලකිලිමත් වුවහොත් නරකම හානිය සිදු කරන ස්ථානය වෙළඳසැලකි. නාමාවලිය, නිෂ්පාදන සහ ප්රවර්ග පිටු යනු ඔබ සතු වැඩිම ගමනාගමනයක් සහිත සහ වැඩිපුරම හැඹිලිගත කළ හැකි පිටු වන අතර, ඒවා සම්පූර්ණ පිටු හැඹිලියකින් ලබා දීම වෙළඳසැලක වේගය සඳහා ඔබට කළ හැකි හොඳම එකම දෙයයි. නමුත් කරත්තය, පිටවීම සහ ගිණුම් පිටු පුද්ගලික වන අතර කිසි විටෙකත් බෙදාගත් හැඹිලියකින් ලබා නොදිය යුතුය — එසේ කළහොත් සාප්පු සවාරි යන්නෙකුට වෙනත් අයෙකුගේ කරත්තය පෙනෙනු ඇත, එය බිඳවැටුණු වෙළඳසැලක් මෙන්ම පෞද්ගලිකත්වය උල්ලංඝනය වීමක්ද වේ.
මේ දෙකම ලබා ගැනීමේ ක්රමය වන්නේ පිටුව හැඹිලිගත කිරීම සහ සජීවී කොටස් සඳහා සිදුරු සෑදීමයි. Edge Side Includes මඟින් ඉල්ලීමකට අනුව කරත්ත ඛණ්ඩය, කුඩා කරත්ත එකතුව සහ ගිණුම් තත්වය විදහා දක්වන අතර පිටුවේ ඉතිරි කොටස හැඹිලියෙන් ලබා දෙනු ලැබේ, තවද කරත්තය, පිරික්සුම, මගේ ගිණුම සහ ඕනෑම nonce හෝ සැසි පිටු පෙරනිමියෙන් බැහැර කර ඇත. නිෂ්පාදනයක්, මිලක් හෝ ඇණවුමක් වෙනස් වන විට ක්රියාත්මක වන බුද්ධිමත් ස්වයංක්රීය පවිත්රකරණය මඟින් නැවුම්බව පාලනය කරනු ලැබේ, එබැවින් පැරණි මිලක් කිසි විටෙකත් ඉතිරි නොවේ. ඔබ WooCommerce ධාවනය කරන්නේ නම්, පිරික්සුම් ලැයිස්තුවේ නිවැරදිවම සකසා ගත යුතු කොටස මෙයයි: හැඹිලියෙන් වේගවත් වෙළඳසැල් මුහුණත, එක් එක් පරිශීලකයා සඳහා සජීවී කරත්තය, කිසි විටෙකත් හැඹිලිගත නොවන පුද්ගලික දත්ත.
නිතර අසන ප්රශ්න
මට තවමත් WP Rocket වැනි කැෂිං ප්ලගිනයක් අවශ්යද?
නැත. සම්පූර්ණ පිටු හැඹිලිගත කිරීම (full-page caching) වෙබ් සේවාදායකය තුළ LiteSpeed හි LSCache මඟින් සිදු කරනු ලබන අතර, අපගේම හැඹිලි ප්ලගිනය මඟින් WordPress එයට සම්බන්ධ කර ස්මාර්ට් ඉවත් කිරීම් (smart purging) හසුරුවයි, තවද ඒ පිටුපස එක් එක් වෙබ් අඩවිය සඳහා වන Redis වස්තු හැඹිලියක් (object cache) පවතී. මීට අමතරව තවත් දෙවන සම්පූර්ණ පිටු හැඹිලි ප්ලගිනයක් එක් කිරීමෙන් උපකාරයක් වීමට වඩා බොහෝ විට සේවාදායක මට්ටමේ හැඹිලිය සමඟ ගැටලු ඇති කරයි, එබැවින් එය අවශ්ය නොවන අතර නිර්දේශ කරන්නේද නැත.
වේදිකාව මඟින් අනවශ්ය කරනු ලබන්නේ කුමන ප්ලගීනද?
කෑෂිං ප්ලගීන, වෙනම ඔබ්ජෙක්ට්-කෑෂ් ප්ලගීන සහ උපස්ථ ප්ලගීන මෙහිදී අනවශ්ය වේ, මන්ද එම කාර්යයන් WordPress වලට පහළ මට්ටමකින් සිදු කෙරේ — සර්වර් මට්ටමේ කෑෂිං, එක් එක් අඩවිය සඳහා කළමනාකරණය කළ ඔබ්ජෙක්ට් කෑෂයක් සහ වේදිකා මට්ටමේ උපස්ථ. ඒවා ඉවත් කිරීමෙන් ගැටුම් සහ ප්රහාරක අවදානම අඩු වේ. ක්රියාත්මක කිරීමට වටින්නේ ඔබේ වෙබ් අඩවියේ ක්රියාකාරිත්වයට සැබවින්ම අවශ්ය වන ප්ලගීන සහ පෙර-ස්ථාපනය කර ඇති අපගේ නොමිලේ ලබා දෙන කෑෂ් සහ footprint ප්ලගීන දෙක පමණි.
කෑෂිං මඟින් මගේ WooCommerce කරත්තය හෝ ලොග් වූ පිටු බිඳ වැටේවිද?
නැත. කරත්තය, පිටවීම, මගේ ගිණුම සහ ඕනෑම nonce හෝ සැසි පිටු පෙරනිමියෙන් හැඹිලියෙන් බැහැර කර ඇති අතර, Edge Side Includes මඟින් වෙනත් ආකාරයකින් හැඹිලිගත කර ඇති පිටුවල කරත්ත කොටස සහ එකතුව සජීවීව තබා ගනී. වෙළඳසැල් මුහුණත තවමත් හැඹිලියෙන් පූරණය වන අතරතුර සාප්පු සවාරි යන්නන්ට සැමවිටම ඔවුන්ගේම කූඩය සහ ක්රියාකාරී පිටවීමක් දැකිය හැකි අතර, නිෂ්පාදනයක්, මිලක් හෝ ඇණවුමක් වෙනස් වූ විට ස්මාර්ට් ස්වයංක්රීය පවිත්රකරණය මඟින් බලපෑමට ලක් වූ පිටු ඉවත් කරනු ලැබේ.
මා එය කළමනාකරණය නොකර ඔබ WordPress සුරක්ෂිතව තබා ගන්නේ කෙසේද?
අපි WordPress යටතේ ඇති තාක්ෂණික පද්ධතිය යාවත්කාලීන කරමු, පරීක්ෂණ පරිසරයන් සහ එක් ක්ලික් කිරීමකින් යථා තත්ත්වයට පත් කිරීම හරහා මූලික මෙන්ම ප්ලගීන යාවත්කාලීනයන් ආරක්ෂිතව යෙදීමට සලස්වමු, අනිෂ්ට මෘදුකාංග පරීක්ෂාව සහ DDoS ආරක්ෂණය පෙරනිමියෙන්ම ක්රියාත්මක කරමු, එක් අඩවියක සිදුවන අනාරක්ෂිත බවක් තවත් අඩවියකට නොපැතිරෙන සේ සෑම වෙබ් අඩවියක්ම වෙන් කර තබමු, එමෙන්ම TLS සහතික ස්වයංක්රීයව නිකුත් කර අලුත් කරමු. එමගින් යටිතල පහසුකම් දුර්වල පුරුකක් වීම වළක්වයි; ශක්තිමත් මුරපද භාවිතය සහ භාවිත නොකරන ප්ලගීන ඉවත් කිරීම වැනි මූලික ආරක්ෂක පියවරයන් තවමත් ඔබ සතු වගකීමකි.
සම්බන්ධිත
දින 14ක් නොමිලේ අත්හදා බලන්න
ඔබගේ පළමු වෙබ් අඩවි දින 14ක් නොමිලේ ආරම්භ කරන්න — කාඩ්පත් අවශ්ය නොවේ. දැනට පවතින වෙබ් අඩවියක් හෝ ජාලයක් මාරු කරනවාද? කිසිදු සීමාවකින් තොරව සංක්රමණයන් නොමිලේ සිදු කෙරේ.
නොමිලේ ආරම්භ කරන්න