java - How to design an enterprise application with many independent processes? -


how should design application comprised of numerous (but identical) independent processes need communicate data enterprise application , monitored , accessible web interface?

here's more concrete example in java:

  1. the independent processes multiple instances of standalone j2se application receives on initialization data "user" entity , starts doing stuff regarding "user" (this infinite process , batch sort of design wrong here , similarly, starting time of these processes irrelevant)

  2. the enterprise application set of j2ee beans , web-services implement business logic, db access etc.. , (for example) hosted on glassfish.

  3. the web front set of jsps (perhaps on glassfish) work beans.

now ideally, want way processes in (1) able invoke methods beans in (2), also beans in (2) able , update processes (1) things.

so these required flows of executions, assuming there 10 independent process of (1) running 10 different users (consider "user" identifiable by, say, number):

  • something happens in 1 of processes of (1) , invoke method enterprise application (2) data.
  • one of real, human, users (which identified web app) clicks on web-page of (3), invokes method in (2), , "magical" entity (which have no idea how name) finds independent process (1) responsible particular user , updates process new data.

my best approach far expose these j2se apps jmx , go there, have 1 thing don't understand - or should holding key-pair list of sort "the process @ uri x responsible user y" , directing calls accordingly.

btw, please feel free give advice outside of java platform (!), long platform can scaled easily.

edit: also, there way "host" such independent processes on app-server? re-spawn processes if fail, allow deployment , monitoring of such processes on remote machines etc.?

there has been time since have used java message service in past afraid not up-to-date technical details, description seems suit case, handle communication between adminstration gui , client processes.

there various options (i believe interested asynchronous communication) should take on latest developments examine if fits case or not.

regarding data size server exchange processes believe different topic , must answer depends. better send data in message? or message notification client notified , connect enterprise bean check new state? prefer latter case should decide based on requirements. wouldn't blindly exclude first option unless had apparent evidence wouldn't work.

regarding scaling don't think can worse scaling of rest of beans. server concerned processes clients need served.

please take above advice grain of salt: don't know specifics of problem/design. speaking more in general way.

i hope helps


Comments

Popular posts from this blog

matlab - Deleting rows with specific rules -

php - MySQLi multi_query results for later use -