Solved

JSF reduces scalability

Posted on 2010-09-20
6
1,009 Views
Last Modified: 2012-05-10
JSF reduces scalability because it must store the view's component tree between requests.
I don't  understand this text.

Could you please explain this ?
0
Comment
Question by:cofactor
  • 2
  • 2
  • 2
6 Comments
 
LVL 10

Expert Comment

by:Hegemon
ID: 33714490
I think I can but please post the question in full.
0
 

Author Comment

by:cofactor
ID: 33714702
umm...thats not required you know....that will confuse you . I just need to understand what that text  means . If  there were a context to this text , then I would have definitely posted.
Anyway,  as you are asking the details here it is ...

A company has been using servlet and JSP technology for over seven years. The company's IT  department is considering migrating to JSF technology. Which two drawbacks must the ITdepartment consider during this migration? (Choose two.)

A. JSF provides only a static set of built-in components.
B. JSF reduces scalability because it synchronizes the creation of the form's component tree.
C. JSF reduces scalability because it must store the view's component tree between requests.
D. JSF reduces scalability because of the additional computational overhead of the JSF life cycle.
E. JSF provides no built-in components forcing the development team to build everything from scratch.
Answer:  C,D
I  just would like to understand the details of  C.  As I told ,  you may not need all these details  so could you please explain C  only ?  I'm looking into books and not  able to come to a conclusion.
0
 
LVL 10

Accepted Solution

by:
Hegemon earned 50 total points
ID: 33714807
Ok I'll explain it but I don't necessarily agree with the statement.

Let's define scalability as the ability to cope with increased loads by adding additional hardware / servers forming a cluster.

A JSF view state is held in a form of a component tree stored in HttpSession. The answer (C) implies that for the application to be scalable, session state should be replicated across the cluster but the replication of the component tree is difficult or impossible (that's what the answer says).

I don't quite agree with both (C) and (D).

(C) I think it is actually possible to replicate the whole session state, including JSF component tree, across the cluster. However, in a busy environment, replicating it after every request has a negative impact on performance.

As per (D), in my view, the question has nothing to do with scalability at all. Additional computational overhead affects performance but not scalability. On the contrary, in increase the scalability to copy with the additional overhead.

So probably both answers should read "JSF _CAN_ have negative impact on performance comparing to vanilla servlets"
0
How our DevOps Teams Maximize Uptime

Our Dev teams are like yours. They’re continually cranking out code for new features/bugs fixes, testing, deploying, responding to production monitoring events and more. It’s complex. So, we thought you’d like to see what’s working for us. Read the use case whitepaper.

 
LVL 6

Assisted Solution

by:__geof__
__geof__ earned 100 total points
ID: 33715802
I think that it all depends on the definition of scalability. As you said: " the ability to cope with increased loads", it does take a noticeable amount of memory to store the view tree and, if you need to do so on multiple servers, it will decrease performance considerably thus reduce scalability.
0
 

Author Comment

by:cofactor
ID: 33723034
>>>A JSF view state is held in a form of a component tree stored in HttpSession
could you please explain this part a bit more. what kind of componenet tree ? any example please.
0
 
LVL 6

Assisted Solution

by:__geof__
__geof__ earned 100 total points
ID: 33723070
Have you had an error page in JSF? There you can usually see the component tree. Here is a picture that represent a component tree (http://img89.imageshack.us/i/136rs.jpg/) It is stire as xml.
0

Featured Post

Master Your Team's Linux and Cloud Stack!

The average business loses $13.5M per year to ineffective training (per 1,000 employees). Keep ahead of the competition and combine in-person quality with online cost and flexibility by training with Linux Academy.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
MySQL  on Tomcat 8 71
how to install java on RHEL image on EC2 4 41
ejb wildfly example 2 28
Running JavaFX on the Raspberry Pi 27 47
In this post we will learn how to connect and configure Android Device (Smartphone etc.) with Android Studio. After that we will run a simple Hello World Program.
Basic understanding on "OO- Object Orientation" is needed for designing a logical solution to solve a problem. Basic OOAD is a prerequisite for a coder to ensure that they follow the basic design of OO. This would help developers to understand the b…
Viewers will learn about the regular for loop in Java and how to use it. Definition: Break the for loop down into 3 parts: Syntax when using for loops: Example using a for loop:
The viewer will learn how to implement Singleton Design Pattern in Java.

821 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question