multithreading - Grails performing time consuming tasks in controller vs another thread -


in grails have time consuming task reads 1000 csv files each containing 1 word per line. reads each file , moves word per line database.

what difference in memory consumed if perform task in controller (main thread) or in thread spawned in controller?

i have faced out of memory errors due jvm totally quit live website , had restart tomcat.

could due time consuming task in controller thread(hence more memory consumed)?

p.s. more interested in finding difference in memory consumed in controller thread , thread created in controller.

it depends on overall requirements, load (how this), architecture, available software , hardware.

first of all, task etl (extract transform load) systems. if can't afford 1 (or boss strictly against it) can use several other approaches offload controller.

  1. dedicated server - install db load onto box. define communication channels. asynchronously notified when load finishes , pass info onto user.

  2. in process processing. when spawn thread (or threads) heavy lifting. gpars come rescue here.

  3. you use grails built-in async features specified here

back original question. wouldn't think loading 100s of csv in controller. if implement this, i'd go etl it's suitable kind of tasks.


Comments

Popular posts from this blog

Magento/PHP - Get phones on all members in a customer group -

php - Bypass Geo Redirect for specific directories -

php - .htaccess mod_rewrite for dynamic url which has domain names -