Results 1 to 3 of 3

Thread: Middleware vs. multi-threaded approach

  1. #1
    Join Date
    Jan 2006
    Location
    Wellington, New Zealand
    Posts
    20

    Default Middleware vs. multi-threaded approach

    Hi,

    I am writing a one-shot migration tool to transfer critical data from a legacy system. The tool will be processing around 2 million files of around 50Tb total.

    Because the anticipated execution time is large (several months, based on prior migration exercises), I am hoping to use some sort of chunked processing. The Spring Batch FAQ indicates that using middleware (JMS, etc.) is highly beneficial, but I'm not sure if it's overkill in my situation and whether a multi-threaded approach would do just as well.

    The migration tool does minimal data processing, and the bottleneck is anticipated to be retrieving the data from the legacy system and having it picked up by the new system. To this end, the tool will be running on the same disk as the legacy system.

    Therefore, I anticipate that physically distributed processing afforded by middleware will hinder rather than assist. If all consumers will be running on the same box, is there any benefit in using this approach? I've never had any practical experience with JMS and the like before, so I'm not sure if there's other robust functionality that I wouldn't be getting by using Spring Batch alone.

    Thanks,
    Matt

  2. #2

    Default

    Well it all depends on what is your known bottleneck. If you think that a single machine is enough for your need configure a partition with a task executor and have a set of threads running in parallel.

    If you need to scale to more than one machine, more solutions are available.

    But if your job can run on a single one, don't bother considering those techniques for now.

    S.

  3. #3
    Join Date
    Jan 2006
    Location
    Wellington, New Zealand
    Posts
    20

    Default

    Thanks Stéphane; much appreciated. I thought that was the case but just wanted to clarify as both Spring Batch and the whole notion of middleware is new territory for me.

    M

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •