开发者

What to prefer a windows service or process integrated with asp.net website to encode files?

开发者 https://www.devze.com 2023-04-05 05:25 出处:网络
I have to create a website where users will upload the files and after that those files will be encoded with the help of an encoder exe. I want to know if I should integrate the file encoding log开发者

I have to create a website where users will upload the files and after that those files will be encoded with the help of an encoder exe. I want to know if I should integrate the file encoding log开发者_开发百科ic with the file uploading logic or create a different windows service which will be hitting the database in a definite time interval and will encode the non encoded files?

Thanks in advance.


Since encoding files is a "long-running task" it shouldn't per part of ASP.NET itself... I would strongly recommend use of Windows Service... esp. if you already have a DB this can easily be scaled if needed...

EDIT - as per comment:

long-running thread in ASP.NET means among other things:

  • you use up IIS resources (threads from the IIS thread pool)
  • it can be recycled whenever IIS feels like it (IIS does recycle the app pool in some configurable interval but also when memory or CPU gets scarce)

A Windows Service has the nice feature of running without having a user logged in interactively and thus you could scale such a solution by adding more systems and installing the Windows Service... for an alternative approach (Task scheduler based) see answer from David Piras


I agree with Yahia but would also tell about another way to do it out of the ASP.NET process and without overhead of creating and installing and maintaining a Windows Service.

You can create a UI less console application that gets called by windows task scheduler at every some minutes or once a day or as you wish to configure it: it can accept command line parameters and connect to the database and do the required job. all like you wish but without overhead of a service always running. in the end hou get same results. :-)

it really depends if you will reuse your Agent-like service for other things or not. relying on windows task scheduler allows you to do not implement time based triggering as Windows will do it, reliably, for you.

0

精彩评论

暂无评论...
验证码 换一张
取 消