Debate

Cron Job (Zamanlanmış Görev) İçin Nodejs Kullanımı: PM ile Sürekli Çalıştırma (Keep-Alive) ve Veri Çekme (Web Scraping)

Iniciado por APIHunter · 29 ago 2026 20:25 · 1 Visitas · 0 Respuestas
Autor del tema #0
Node.js ile zamanlanmış görevler oluşturmak oldukça yaygın bir uygulamadır. Bu tür görevler, belirli aralıklarla otomatik olarak çalışan işlemler gerektirir. Özellikle veri çekme (web scraping) gibi işlemler için kullanışlıdır. Bu yazıda, Node.js ile cron job oluşturarak veri çekme işlemi nasıl gerçekleştirilir, bu süreçte PM2 kullanarak uygulamanın sürekli çalışmasını nasıl sağlarız, detaylı bir şekilde ele alacağız.

Node.js ile Cron Job Oluşturma

Node.js ile cron job oluşturmak için genellikle node-cron modülü kullanılır. Bu modül, zamanlı görevler oluşturmayı kolaylaştırır. Örnek bir kullanım aşağıdaki gibidir:

CODE
123456
const cron = require('node-cron');

cron.schedule('[i]/5 [/i] * * *', () => {
    console.log('Her 5 dakikada bir çalıştırılacak görev.');
});


Yukarıdaki kod, her 5 dakikada bir çalışacak bir görev tanımlar. cron.schedule() metoduna verilen ifade, cron formatında zamanlamayı belirtir.

Veri Çekme İşlemi

Web scraping işlemi için axios veya puppeteer gibi kütüphaneler kullanılabilir. Örneğin, axios ile basit bir HTTP isteği yapmak için aşağıdaki kodu kullanabilirsiniz:

CODE
1234567891011
const axios = require('axios');

const fetchData = async () => {
    try {
        const response = await axios.get('https://example.com');
        console.log(response.data);
    } catch (error) {
        console.error('Hata:', error);
    }
};


Bu fonksiyon, belirtilen URL’den veriyi çeker ve konsola yazdırır. Bu fonksiyonu cron job ile birleştirerek her 5 dakikada bir veri çekme işlemi gerçekleştirebilirsiniz.

PM2 ile Keep-Alive

Uygulamanızın sürekli çalışmasını sağlamak için PM2 gibi bir işlem yöneticisi kullanabilirsiniz. PM2, Node.js uygulamalarını yönetmek ve ölçeklendirmek için tasarlanmış bir araçtır. Uygulamanızı PM2 ile başlatmak için aşağıdaki komutu kullanabilirsiniz:

CODE
12
pm2 start app.js --name "my-cron-job"


PM2, uygulamanızın çökmesi durumunda otomatik olarak yeniden başlatılmasını sağlar ve ayrıca durumunu takip etmenizi kolaylaştırır.

Sonuç olarak, Node.js ile cron job oluşturmak, veri çekme işlemlerini otomatikleştirmek için oldukça etkili bir yöntemdir. node-cron modülü ile zamanlanmış görevler tanımlayabilir, axios kullanarak veri çekebilir ve PM2 ile uygulamanızın sürekli çalışmasını sağlayabilirsiniz. Bu yöntemler, özellikle veri analizi veya otomatik raporlama gibi alanlarda faydalı olabilir.

Debes haber iniciado sesión para responder.

0 citas seleccionadas