• Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

J2EE1.6 specification requirement for scalability

 
Isuru Samaraweera
Ranch Hand
Posts: 54
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator

Hi All,
I would like to know whether container is obligated to provide transparent scaling mechanism to handle spikes in demand for EJBS by the specification?

As per my understanding and work experience it is not a specification imposed mandatory service to be provided by containers?

Please clarify this in EJB perspective


Thanks,
Isuru
 
Ulf Dittmer
Rancher
Posts: 42969
73
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I assume that by "J2EE 1.6" you mean "JEE 6", the most-recent-but-one version of the JEE standard (it hasn't been called J2EE since 2006).

The container can do very little to handle scalability, besides handling incoming requests as fast as possible. Some configurations play a role in this (max. JVM memory, size of thread pool for incoming connections, size of DB connection pool if applicable etc.), but those will vary according to the specifics of your app - you'd need to test and decide what good values are. While some containers provide load balancing features, that is outside the scope of JEE.
 
Isuru Samaraweera
Ranch Hand
Posts: 54
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi Ulf,
Thanks for the reply.Simply this means there is no contractual obligation specified in the JEE6 specification in scalability standpoint.

Am I correct?

Thanks,
isuru
 
Ulf Dittmer
Rancher
Posts: 42969
73
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
JEE describes functionalities a JEE server must provide. Non-functional and pragmatic aspects are where the server vendors can differentiate themselves.
 
Isuru Samaraweera
Ranch Hand
Posts: 54
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi Ulf,
Thanks for the reply.

So I can easily disregard the statement "The container provides a transparent scaling mechanism to handle dynamic work load as a contract between the container and the ejb it hosts".

Thanks,
isuru
 
Ulf Dittmer
Rancher
Posts: 42969
73
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I don't know the context of that statement, and in which circumstances you might want to consider or to ignore it. A server handles requests until it hits its limits, but it can't do anything to go beyond those. If the code it runs is designed poorly, it will be able to handle far fewer request than it might with well-designed code, but that, too, is something it can't do anything about.
 
Isuru Samaraweera
Ranch Hand
Posts: 54
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi Ulf,
Thanks for the reply.I got the solution for my doubt.
"Simply scalability is not defined as a contract between server and components it hosts"



Further digging into nonfunctional-requirements is it fair to say that " EJB can extend its services, such as security, to improve performance?



Thanks,
Isuru
 
Ulf Dittmer
Rancher
Posts: 42969
73
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
EJB is a defined standard, it better not be extended by server vendors that want to get certified. JEE servers can provide additional features outside of the APIs, though, like administrative capabilities etc.
 
Isuru Samaraweera
Ranch Hand
Posts: 54
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi Ulf,
Thanks for all fruitful clarifications.Can you please have a look at this post also and give your inputs?

http://www.coderanch.com/t/636202/java-Architect-SCEA/certification/EJB-Container-contract-related-Exception

Regards,
Isuru
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic