Solved

JSF reduces scalability

Posted on 2010-09-20
6
987 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
DevOps Toolchain Recommendations

Read this Gartner Research Note and discover how your IT organization can automate and optimize DevOps processes using a toolchain architecture.

 
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

DevOps Toolchain Recommendations

Read this Gartner Research Note and discover how your IT organization can automate and optimize DevOps processes using a toolchain architecture.

Question has a verified solution.

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

Suggested Solutions

Title # Comments Views Activity
Unable to start eclipse ? 17 134
backtracking recursion  code 19 54
maven project error 5 48
Error trying to install RTMT Win7 5 41
Java contains several comparison operators (e.g., <, <=, >, >=, ==, !=) that allow you to compare primitive values. However, these operators cannot be used to compare the contents of objects. Interface Comparable is used to allow objects of a cl…
Are you developing a Java application and want to create Excel Spreadsheets? You have come to the right place, this article will describe how you can create Excel Spreadsheets from a Java Application. For the purposes of this article, I will be u…
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:
This tutorial will introduce the viewer to VisualVM for the Java platform application. This video explains an example program and covers the Overview, Monitor, and Heap Dump tabs.

861 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

Need Help in Real-Time?

Connect with top rated Experts

26 Experts available now in Live!

Get 1:1 Help Now