ශ්‍රී ලංකාවේ නවතම තාක්ෂණික පුවත් 2026-07-28, Tuesday
💻 ක්‍රමලේඛනය · 🕒 කියවීමට විනාඩි 2 · 👁 1

Laravel හි CQRS ක්‍රමය: Command සහ Query වෙන්කර පටලන ව්‍යාපාරික වැඩි දියුණුව

Laravel හි CQRS ක්‍රමය: Command සහ Query වෙන්කර පටලන ව්‍යාපාරික වැඩි දියුණුව

Laravel යෙදුම් වල "God Controller" කියන තත්ත්වය දැනට බොහෝ සංවර්ධකයින්ට අමාරුයක්. එක් endpoint එකක් එකවර validation, external API ඇමතුම, බහු DB tables වෙනස් කිරීම, පසුපස heavy multi‑join query එකක් ධාවනය කර UI තත්ත්වය ලබාදෙන්නෙයි. මේ නිසා read logic එකත් write logic එකත් එකට ගැලපෙයි, ස්කේලබල් නොවීම සහ performance අඩුවීම සිදුවේ.

Smart Tech Devs සමාගම මේ ගැටලුවට විසඳුමක් ලෙස CQRS (Command Query Responsibility Segregation) ආකෘතිය ඇතුළත් කර ඇත. CQRS කියන්නේ data mutate කරන methods (Commands) සහ data retrieve කරන methods (Queries) වෙන්ව පවත්වා ගැනීම. මෙය Laravel තුළ ක්‍රියාත්මක කිරීමෙන් write operations primary DB එකට, read operations read replica හෝ cache‑කළ projection එකකට යොමු කළ හැක.

Command (Writes) කොටස – Command එකක් system state එක වෙනස් කිරීමට අදහස් කරන request එකකි. Laravel හි Command එකක් Job හෝ Action class එකක් ලෙස encapsulate කරයි. Command එක data return නොකර, mutation පමණක් කරන අතර DB transaction එකකින් ආරක්ෂා කරයි.

උදාහරණයක් ලෙස PlaceOrderCommand class එකේ userId සහ cartItems ලබාගෙන, Order model එකක් නිර්මාණය කර, items createMany කර, OrderPlaced event එක dispatch කරයි. මෙය write side එකේ සරල, testable, isolated code එකක් බවට පත්වේ.

Query (Reads) කොටස – Query එක data ලබා ගැනීමට පමණක් භාවිතා වේ. Side‑effect නැති නිසා ORM bypass කර raw SQL හෝ query builder භාවිතා කර read performance වැඩි කරයි. GetUserOrderSummaryQuery class එක order_summary_projections table එකෙන් user‑specific summary එක raw read කර array එකක් return කරයි.

මෙම වෙන් කිරීමෙන් codebase එක modular, testable, සහ scalability‑friendly වේ. Write DB සහ Read DB වෙන්ව scale කිරීම, endpoint latency අඩු කිරීම, Event Sourcing හා micro‑services architecture වෙත ගමන් කිරීමේ පදනමක් සපයයි.

ශ්‍රී ලංකාවට ඇති වැදගත්කම

ශ්‍රී ලංකාවේ Laravel භාවිතා කරන සංවර්ධකයින්ට CQRS අනුගමනය කිරීමෙන්:

  • ඉතා වේගවත් UI response ලැබේ, පාරිභෝගික අත්දැකීම ඉහළ යයි.
  • කේතය තේරුම් ගැනීම හා unit testing පහසු වේ, ඉගෙනුම් වක්‍රය කෙටි වේ.
  • බිස්නස් අංශවල data read replica හෝ cache භාවිතයෙන් operational cost අඩු කරයි.
  • ඉදිරියේ Event Sourcing, micro‑services වැනි නවතම තාක්ෂණයන්ට මාරු වීම සූදානම් කරයි.

ඒ නිසා ශ්‍රී ලංකාවේ startups, e‑commerce platforms, සහ digital agencies සියලුම ව්‍යාපාරික පද්ධතිවල performance හා scalability වර්ධනය කරගත හැක.

ඉදිරියට, CQRS ආකෘතිය Laravel ප්‍රොජෙක්ට් වලට අනුයුක්ත කිරීමෙන්, දේශීය තාක්ෂණික ප්‍රවණතා අගුළු ඇරීමට, ගෝලීය තරඟකාරීත්වය ලබා ගැනීමට මග පෙන්වයි.

💡 ඔබේ Laravel project එකට CQRS අත්හදා බලන්න!
මූලාශ්‍රය මෙම ලිපිය AI මගින් රචිත මුල් සාරාංශයකි. සම්පූර්ණ වාර්තාව කියවන්න:
Dev.to ↗
#Laravel #CQRS #Performance #SriLanka #Developers