Mail queue — elektron pochta serverida hali yakuniy manzilga yetkazilmagan xabarlar vaqtincha saqlanadigan navbatdir. Xabar jo‘natish agenti uni darhol topshira olmasa, xatni yo‘qotish o‘rniga diskka yozadi va keyinroq qayta urinadi. Shu sababli navbat SMTP infratuzilmasining uzilishlarga chidamliligini ta’minlaydi.
Navbatga tushish sabablari
Xabar bir necha holatda navbatga qo‘yiladi. Qabul qiluvchi domenning MX serveri vaqtincha ishlamasligi, DNS javobi kelmasligi yoki tarmoq ulanishi uzilishi mumkin. Masofaviy server 4xx turidagi vaqtinchalik SMTP javobini qaytarsa ham yetkazish keyinga qoldiriladi. Mahalliy server yuklamani cheklaganda yoki ma’lum domen uchun ulanishlar sonini boshqarganda navbat bufer vazifasini bajaradi.
5xx doimiy xato odatda qayta urinishga sabab bo‘lmaydi. Bunday holatda server jo‘natuvchiga delivery status notification, ya’ni yetkazish holati haqidagi xabar yaratadi. 4xx va 5xx javoblarini to‘g‘ri ajratish navbatning keraksiz o‘sishini oldini oladi.
Navbat yozuvining tarkibi
Pochta tizimi xabarning mazmuni bilan birga xizmat metama’lumotlarini saqlaydi. Odatdagi yozuv quyidagilarni o‘z ichiga oladi:
- noyob queue ID;
- envelope sender va qabul qiluvchilar ro‘yxati;
- xabarning qabul qilingan vaqti;
- keyingi urinish vaqti va urinishlar soni;
- oxirgi SMTP javobi;
- xabar tanasi yoki unga olib boruvchi fayl manzili.
Envelope manzillari xatning From va To sarlavhalaridan farq qilishi mumkin. Yetkazish qarori SMTP konvertidagi ma’lumot asosida bajariladi, foydalanuvchiga ko‘rinadigan sarlavhalar esa xabar mazmunining bir qismidir.
Qayta urinish mexanizmi
Queue runner deb ataladigan jarayon navbatni davriy tekshiradi. U muddati yetgan yozuvlarni tanlaydi, DNS orqali manzil serverini topadi va SMTP sessiyasini qayta boshlaydi. Tizimlar ko‘pincha urinishlar orasidagi vaqtni bosqichma-bosqich uzaytiradi. Bu ishlamayotgan serverga doimiy so‘rov yuborib, tarmoq va protsessor resurslarini sarflashdan saqlaydi.
Xabar cheksiz saqlanmaydi. Belgilangan queue lifetime tugagach, tizim uni muvaffaqiyatsiz deb belgilaydi. Jo‘natuvchi manzili haqiqiy bo‘lsa, kechikish yoki yakuniy xato haqida xabar yuboriladi. Bo‘sh reverse-path bilan kelgan xizmat xabariga yana bounce yaratish mumkin emas, aks holda xato xabarlari halqasi paydo bo‘ladi.
Kuzatuv va boshqarish
Administrator navbat uzunligi, eng eski xabar yoshi, domenlar bo‘yicha kechikish va xato kodlarini kuzatadi. Navbatning birdan o‘sishi DNS nosozligi, tashqi provayder bloklashi, noto‘g‘ri autentifikatsiya yoki spam yuborayotgan hisob belgisi bo‘lishi mumkin. Faqat xabarlar soni yetarli ko‘rsatkich emas: o‘n ming kichik xat va yuzta juda katta ilova diskka turlicha ta’sir qiladi.
Navbat yozuvini majburan qayta yuborish, ushlab turish yoki o‘chirish vakolatli boshqaruv amallari hisoblanadi. Xabarni sababsiz o‘chirish ma’lumot yo‘qolishiga olib keladi. Shu bois queue ID, amalni bajargan operator va natija audit jurnalida qayd etiladi. Navbat katalogi oddiy pochta qutisi emas; uning fayllarini qo‘lda tahrirlash indeks va metama’lumotlarning buzilishiga sabab bo‘lishi mumkin.
Saqlash va xavfsizlik
Navbat diskda saqlangani uchun bo‘sh joy, fayl tizimi kechikishi va ruxsatlar muhimdir. Xabarlar maxfiy yoki shaxsiy ma’lumot tashishi mumkin, shuning uchun katalog faqat pochta xizmati hisobiga ochiladi. Disk shifrlanishi saqlanayotgan nusxani, TLS esa qayta uzatish paytidagi trafikni himoya qiladi. Bu ikki himoya bir-birining o‘rnini bosmaydi.
Bog‘liq tushunchalar
SMTP, MTA, Queue runner, Bounce, MX record, Delivery status notification