Skip to content

Microservices

Mikroservislar arxitekturasi — bu katta, monolit dasturni kichik, mustaqil va o’zaro bog’langan xizmatlarga (servislarga) bo’lish usulidir. Har bir servis:

  • Bitta aniq biznes vazifani bajaradi.
  • Mustaqil ishlaydi (deploy qilinadi).
  • Boshqa servislar bilan API (HTTP, gRPC) yoki Event Bus orqali muloqot qiladi.
  • O’zining shaxsiy ma’lumotlar bazasiga ega bo’lishi mumkin.
MonolitMikroservislar
Bitta Codebase: Hamma narsa bitta joyda.Bo’lingan Codebase: Har bir servis alohida repozitoriyda.
Oson Deployment: Bitta faylni serverga qo’yish kifoya.Murakkab Deployment: O’nlab servislarni orkestratsiya qilish kerak (K8s).
Scaling: Butun dasturni ko’paytirish kerak.Scaling: Faqat yuklama tushayotgan servisni ko’paytirish mumkin.
Tech Stack: Bitta til va framework.Tech Stack: Har bir servis har xil tilda yozilishi mumkin.

Foydalanuvchi so’rovlarini qabul qilib, kerakli mikroservisga yo’naltiruvchi “darvoza”. U shuningdek avtorizatsiya va rate limiting vazifalarini ham bajaradi.

Servislar bir-birini topishi uchun (IP manzillari o’zgarib turishi mumkin) ishlatiladigan mexanizm (masalan, Consul, Eureka).

Har bir servisning ma’lumotlari izolyatsiya qilingan bo’lishi kerak. Bir servis boshqa servisning bazasiga to’g’ridan-to’g’ri kirmasligi lozim.