Serverless Workers (Lambda, IronWorker)

AWS Lambda
Iron.io Worker

Yapmak istediğiniz bir işiniz var. Örneğin dosya işlemek, resim işlemek, bildirim yapmak vs vs.. Bu işleri yapmak için sunucu, ortam vs düşünmeden sadece Job(Görevinizi) tanımlayıp çalıştırabileceğiniz sistemler mevcut.

AWS Lambda’dan daha önceden bahsetmiştim. IronWorker’da benzer işleve sahip, sadece Lambda’ya göre daha esnek.

Lambda sadece AWS bulutunda , AWS servisleri ile entegre olurken IronWorker Private/Public Bulutlar ile çalışarak daha bağımsız kullanılabiliyor.

Kullanım Alanları

  • Image Processing alanında bu worker’ları kullanabilirsiniz. ImageMagick , GraphicsMagicks, LibGD kütüphaneleri kullanarak resimler üzerinde farklı düzenlemeleri batch olarak gerçekleştirebilirsiniz.
  • Web Crawling / Data Extraction alanında bu worker’ları kullanabilirsiniz. PhantomJS, CasperJS, Nutch, ve Nokogiri kütüphaneleri kullanarak web crawling işlemlerini sağlayıp bu sayfalar üzerinden veri çıkarabilirsiniz.
  • Bildirim (Push Notification, SMS, Email) alanında worker’ları kullanabilirsiniz. Push Notificationda iOS için APN, Android’de GCM servislerini kullanmanız gerekebilir. Bu işlemleri bir kademe daha soyutlaştıran AWS SNS(Simple Notification Service) veya Parse altyapısını kullanabilirsiniz. Parse kapandı. Çok sayıda kullanıcıya eposta atmak istediğinizde SendGrid, Mailgun, ve Mandrill platformlarını kullanabilirsiniz. Çok sayıda kullanıcıya SMS göndermek için Nexmo ve Twilio altyapılarını kullanabilirsiniz.
  • Data Processing : Paralel işlenmesi gereken veriniz var ise bunlar için Worker altyapılarını kullanabilirsiniz. Bu veriler webhook ile başka sistemlerden trigger edilebilir, cronjob ile belli alanlar belli süreler ile taranabilir. Mobil cihazlardan eventler arkaplanda sizin sisteminize gönderilebilir. Sonuç itibari ile PDF, HTML, Image, JSON, XML , Ses, Video vb verileri paralel olarak işleme ihtiyacı duyabilirsiniz.