Long running process handled by HF or by Windows Service?

I have to run a process to collect tweets through Twitter Streaming API. This means that the process should run for many hours, even days, collecting tweets. Is it recommended to use HF in this type of scenerarios? Or should i go with something like a windows service instead?

Personally I would use a plain Windows service to stream the data, paying close attention to the documentation they provide about all of the edge-cases: (Don’t forget to reconnect on stall, request compression and handle back-filling / duplicates)


I’d probably have the Windows service just stream the data and create jobs for each item, then use Hangfire to handle the processing and back-filling. There are many ways to skin this cat though.

Thanks for the feedback! The app, based on configuration, sometimes uses the stream api and some other the rest api as a recurring job. I am using HF to handle the scheduling of the REST calls, and I wished I could have stayed using one mechanism to handle both types of requests, but I’d go with the windows service instead.