Go Premium for a chance to win a PS4. Enter to Win

x
?
Solved

JSF reduces scalability

Posted on 2010-09-20
6
Medium Priority
?
1,055 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 200 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
VIDEO: THE CONCERTO CLOUD FOR HEALTHCARE

Modern healthcare requires a modern cloud. View this brief video to understand how the Concerto Cloud for Healthcare can help your organization.

 
LVL 6

Assisted Solution

by:__geof__
__geof__ earned 400 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 400 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

Concerto's Cloud Advisory Services

Want to avoid the missteps to gaining all the benefits of the cloud? Learn more about the different assessment options from our Cloud Advisory team.

Question has a verified solution.

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

For beginner Java programmers or at least those new to the Eclipse IDE, the following tutorial will show some (four) ways in which you can import your Java projects to your Eclipse workbench. Introduction While learning Java can be done with…
Go is an acronym of golang, is a programming language developed Google in 2007. Go is a new language that is mostly in the C family, with significant input from Pascal/Modula/Oberon family. Hence Go arisen as low-level language with fast compilation…
Viewers learn about the scanner class in this video and are introduced to receiving user input for their programs. Additionally, objects, conditional statements, and loops are used to help reinforce the concepts. Introduce Scanner class: Importing…
Viewers learn how to read error messages and identify possible mistakes that could cause hours of frustration. Coding is as much about debugging your code as it is about writing it. Define Error Message: Line Numbers: Type of Error: Break Down…
Suggested Courses

886 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