Win a copy of The Little Book of Impediments (e-book only) this week in the Agile and Other Processes forum!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

distributable

 
Nadine McKenzie
Ranch Hand
Posts: 53
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
There has been much discussion (and confusion) regarding "distributable". In my struggle to understand this somewhat elusive concept, here's my attemp at quantifying the ratios. Please correct me if I'm wrong..
In a non-distributable environment
1-JVM may : n-webapp
1-webapp : 1-servlet-context object
1-webapp : 1-servlet-container
In a distributable environment (ratios remain the same except there can be more than one JVM):
: n-JVM
1-JVM : n-webapp
1-webapp : 1-servlet-context object
1-webapp : 1-servlet-container
 
tony lee
Ranch Hand
Posts: 52
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi,
This is what I think -
In a non-distributable environment
1-JVM may : n-webapp : WEB-INF/a, WEB-INF/b, ..
1-webapp : 1-servlet-context object
1-container : 1-JVM
In a distributable environment -
n-container : n-JVM
1-JVM : n*m-webapp //m is the # of apps on a server
1-webapp : n-local-servlet-context object //local context objs don't share.
 
tony lee
Ranch Hand
Posts: 52
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hello,
If we have mutiple web applications, how can we manage them in the file system? Should be
ROOT/a, ROOT/b..
 
Axel Janssen
Ranch Hand
Posts: 2166
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Tony,
root. no.
webapps\a webapps\b
Another interesting topic with distributable are session-object.
I am presuming, that they might be distribitubable among servers of a cluster with some mechanism, which is vendor-dependant. But its not good to use sessions too much in distributed apps, because the distribution process via serialization or some other mechanism creates a lot of network traffic between the servers in the cluster.
I am not sure. Please, anybody comment on this.
Axel
 
R K Singh
Ranch Hand
Posts: 5384
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I think Tony's perception makes more sense.
 
Axel Janssen
Ranch Hand
Posts: 2166
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Ravish,
please explain?
 
Peter den Haan
author
Ranch Hand
Posts: 3252
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Originally posted by tony lee:
If we have mutiple web applications, how can we manage them in the file system?
What makes you assume that a web-application lives in the filesystem anyway? It may live in a database instead (e.g. Silverstream). The specification explicitly leaves that option open.
Really, where multiple web-applications live is an implementation detail of the Web container. Many popular ones do it in a way like the one you suggested (e.g. Tomcat, Orion), others don't.
- Peter
 
Peter den Haan
author
Ranch Hand
Posts: 3252
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Originally posted by tony lee:
In a distributable environment -
n-container : n-JVM
1-JVM : n*m-webapp //m is the # of apps on a server
1-webapp : n-local-servlet-context object //local context objs don't share.
Not quite sure about n*m-webapp. Really, if you are distributing a webapp over n containers then it is still one single webapp that happens to run on multiple JVMs. It needs to be identical on all of them, or all hell will break loose during the deserialization of session information -- remember, a distributed container needs to share session information between all the webapp instances using Java serialization.
So I would call it m-webapp. But it depends on what exactly you mean by this of course.
- Peter
 
tony lee
Ranch Hand
Posts: 52
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Thank you, Peter. I appreciate it.
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic