20.07.2023
1160
Node.js, server tərəfdən JavaScript proqramlaşdırma dilində istifadə edilən güclü və populyar bir mühitdir və o asinxron proqramlaşdırma və yüngüllük imkanları ilə təchiz edilmişdir. Son vaxtlar, Node.js-də əməliyyatları daha da optimallaşdırmaq üçün yeni bir xüsusiyyət verilmişdir: "işçilər" (workers).
Node.js işçiləri, asinxron şəkildə çalışan və mövcud əməliyyatları bloklamadan və ya yavaşlatmadan yeni əməliyyatları yerinə yetirmək üçün nizamlanmış ayrı mərhələlərdə çalışan proseslərdir. Məsələn, bütün yüklənən məlumatları işləmək üçün müstəqil bir işçi başa gətirilə bilər və bu əsas proqramın performansına təsir etməz.
Əməliyyatların Təsirini Azaltmaq: Əgər tətbiqiniz uzun müddət ərzində işləyən proseslərə sahibdirsə, işçilər əməliyyatların təsirini azaltmaq və buna görə də əsas tətbiqi daha responsiv edərək performansı artırmaq üçün əlverişli bir yol təklif edir.
Əməliyyatları Fərqli Kənar Proseslərdən İzolə Etmək: İşçilər, fərqli kənar proseslərdə işlədikləri üçün, bir işçinin xətalara yol açması əsas prosesin işini təsir etməz. Bu, proqramın sürət və təhlükəsizlik baxımından üstünlük qazanmasına kömək edir.
Node.js işçiləri istifadə etmək üçün worker_threads modulu tələb olunur. Bu modulu işlətmək üçün, tətbiqinizin başlanğıc mənbə kodunda aşağıdakı kimi modulu qoşmağınız lazımdır:
const { Worker } = require('worker_threads');
İşçi yaratmaq üçün Worker sinfini istifadə edərək yeni bir işçi obyekti yarada bilərsiniz. Məsələn:
const worker = new Worker('./path/to/worker.js', { workerData: 'Some data to pass to the worker' });
İşçinin işini başlatmaq üçün worker.postMessage() və ya worker.on('message', callback) istifadə edilir.
Node.js işçiləri, tətbiqin performansını artırmaq və daha effektiv işləmək üçün güclü imkanlar təqdim edir. Bu, asinxron və paralel işləmə imkanları ilə təchiz edilmiş Node.js ilə tətbiqinizi daha yüksək sürətdə çalışdırmağa kömək edə bilər. İşçilər, özlərini hər hansısa kompleks və uzun müddət ərzində işləyən proseslərin məhdudlaşdırılmasını və yüklənməni azaltmağa da nail olurlar.
Məqaləni hazırladı: Murad Məstəliyev
Təsdiqlədi: Əlinemət İsiyev