zk performance test - leading enterprise java web ... · zk performance test zk community,...

14
ZK Performance Test ZK Community, Professional, Enterprise Edition Sam Chuang Timothy Clare Potix Corportation

Upload: vokhuong

Post on 30-Jul-2018

253 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: ZK Performance Test - Leading Enterprise Java Web ... · ZK Performance Test ZK Community, Professional, ... therefore T1 -> T2 and T3 -> T4 were too small to make any ... Software

ZK Performance Test

ZK Community, Professional, Enterprise Edition

Sam Chuang Timothy Clare

Potix Corportation

Page 2: ZK Performance Test - Leading Enterprise Java Web ... · ZK Performance Test ZK Community, Professional, ... therefore T1 -> T2 and T3 -> T4 were too small to make any ... Software

Contents Introduction ..................................................................................................................................... 4

Terminology in testing ..................................................................................................................... 4

Technology .................................................................................................................................. 4

Products ....................................................................................................................................... 5

Test Results ...................................................................................................................................... 5

The Grid ....................................................................................................................................... 5

Testing Strategy ....................................................................................................................... 5

ZK Enterprise VS ZK Community/Professional – execution time –no paging .......................... 5

ZK Enterprise VS ZK Community/Professional – execution time –paging ............................... 7

ZK Enterprise VS ZK Community/Professional –memory usage–both paging modes ............. 8

The Tabbox .................................................................................................................................. 9

Testing Strategy ....................................................................................................................... 9

ZK Enterprise VS ZK Community/Professional – execution time ............................................ 9

The Combobox .......................................................................................................................... 10

Testing Strategy ..................................................................................................................... 10

ZK Enterprise VS ZK Community/Professional – execution time .......................................... 10

The Menu .................................................................................................................................. 11

Testing Strategy ..................................................................................................................... 11

ZK Enterprise VS ZK Community/Professional – execution time .......................................... 11

Testing methodology ..................................................................................................................... 12

Test environments ..................................................................................................................... 13

Hardware ............................................................................................................................... 13

Software ................................................................................................................................ 13

Network ................................................................................................................................. 13

Conclusion ..................................................................................................................................... 14

Page 3: ZK Performance Test - Leading Enterprise Java Web ... · ZK Performance Test ZK Community, Professional, ... therefore T1 -> T2 and T3 -> T4 were too small to make any ... Software

TABLE OF FIGURES

FIGURE 1. ZK EE VS ZK CE/PE - GRID EXECUTION TIME - NO PAGING ........................................................................... 6 FIGURE 2. ZK EE VS ZK CE/PE - GRID - EXECUTION TIME - PAGING .............................................................................. 7 FIGURE 3. ZK EE VS ZK CE/PE - MEMORY USAGE – BOTH PAGING MODES .................................................................... 8 FIGURE 4. ZK EE VS ZK CE/PE - TABBOX EXECUTION TIME ......................................................................................... 9 FIGURE 5. ZK EE VS ZK CE/PE - COMBOBOX - EXECUTION TIME ............................................................................... 10 FIGURE 6. ZK EE VS ZK CE/PE - MENU - EXECUTION TIME ....................................................................................... 11 FIGURE 7. THE LIFECYCLE OF A ZK REQUEST ............................................................................................................ 12

Page 4: ZK Performance Test - Leading Enterprise Java Web ... · ZK Performance Test ZK Community, Professional, ... therefore T1 -> T2 and T3 -> T4 were too small to make any ... Software

Introduction

Since ZK 5 a new architecture named Server+Client fusion is introduced. The advances in

architecture are transparent to the developer but boost performance using techniques such as

“client render on demand” and “server creation deference” which will delay the rendering and

creation of widgets until they are required.

With our change of architecture and three versions of ZK available to the user it makes sense to

do a comparison so one can make an informed choice as to which ZK package is suitable for

their purpose.

With this in mind there are 3 packages on test here:

ZK Community edition

ZK Professional edition

ZK Enterprise edition

In this performance test we chose several commonly used components and push their limits to

provide an accurate reflection of the performance of each package.

You can continue to view the results, or skip to the end to read how we measured the

performance, such as response time and the environment used.

Terminology in testing

This section outlines the various terms used in this document and the related meanings.

Technology

Term Meaning

Execution Time This is the time it takes for the entire

execution cycle to complete. For more

information please see

Testing methodology.

Page 5: ZK Performance Test - Leading Enterprise Java Web ... · ZK Performance Test ZK Community, Professional, ... therefore T1 -> T2 and T3 -> T4 were too small to make any ... Software

Products

Term Meaning

ZK EE ZK Enterprise Edition

ZK PE ZK Professional Edition

ZK CE ZK Community Edition

Version: ZK 6, ZK 5

Test Results

This section details the results of all the tests carried out. The following components were tested:

The Grid

The Tabbox

The Combobox

The Menu

The Grid

The Grid is naturally the first component to test as of all the components it is the most popular.

Testing Strategy

To test the Grid performance, we increased the number of rows in the Grid and measured the

time it takes for the Grid to execute and then the memory usage.

The Grid supports two modes, paging and non-paging. Paging mode only provides the Grid with

the number of rows which are visible to the user. These tests were done using paging and non

paging mode. During the test the page size was set to 20.

ZK Enterprise VS ZK Community/Professional – execution time –no paging

Page 6: ZK Performance Test - Leading Enterprise Java Web ... · ZK Performance Test ZK Community, Professional, ... therefore T1 -> T2 and T3 -> T4 were too small to make any ... Software

The test tests the performance of ZK Enterprise Grid against ZK Community/Professional’s Grid.

In this case both Grids are in non paging mode.

Figure 1. ZK EE VS ZK CE/PE - Grid execution time - no paging

In Figure 1 the lower the execution time the better and in the most extreme case ZK Enterprise

is 30 times faster than ZK Community and Professional editions.

0

2000

4000

6000

8000

10000

12000

50

10

0

50

0

1,0

00

2,0

00

3,0

00

4,0

00

5,0

00

6,0

00

7,0

00

8,0

00

9,0

00

10

,00

0

Exe

cuti

on

Tim

e (

ms)

ZK EE VS CE/PE - Grid execution time - no paging

ZK Enterprise (non-paging)

ZK Community/Professional (non-paging)

Page 7: ZK Performance Test - Leading Enterprise Java Web ... · ZK Performance Test ZK Community, Professional, ... therefore T1 -> T2 and T3 -> T4 were too small to make any ... Software

ZK Enterprise VS ZK Community/Professional – execution time –paging

After testing the performance of the different ZK package Grids it makes sense to compare the

performance of the Grids in paging mode. Here are the results.

Figure 2. ZK EE VS ZK CE/PE - Grid - execution time - paging

In Figure 2 the lower the execution time the better and in the most extreme case ZK Enterprise

is 13 times faster than ZK Community and Professional editions.

0

500

1000

1500

2000

2500

3000

3500

4000

Exe

cuti

on

Tim

e (

ms)

ZK EE VS CE/PE - Grid - execution time - paging

ZK Enterprise (paging)

ZK Community/Professional (paging)

Page 8: ZK Performance Test - Leading Enterprise Java Web ... · ZK Performance Test ZK Community, Professional, ... therefore T1 -> T2 and T3 -> T4 were too small to make any ... Software

ZK Enterprise VS ZK Community/Professional –memory usage–both paging modes

The final test was to compare the server-side memory usage of all the ZK packages in paging and

non-paging modes.

Figure 3. ZK EE VS ZK CE/PE - memory usage – both paging modes

In Figure 3 the less memory consumed the better. In this case we see that whether it be paging

or non-paging the memory usage of ZK Enterprise is substantially lower than that of the

Community and Professional versions. With reduced memory usage the server is therefore able

to support more concurrent connections enabling applications to scale much better.

0

20

40

60

80

100

120

140

160

180

200

50,000 100,000 150,000 200,000

Me

mo

ry u

sed

(M

B)

Number of row

ZK EE VS CE/PE –memory usage–both paging modes

ZK Enterprise (paging)

ZK Enterprise (non-paging)

ZK Community/Professional (paging)

ZK Community/Professional (non-paging)

Page 9: ZK Performance Test - Leading Enterprise Java Web ... · ZK Performance Test ZK Community, Professional, ... therefore T1 -> T2 and T3 -> T4 were too small to make any ... Software

The Tabbox

The next item that was tested is the Tabbox, we first defined a testing strategy, compared the

three ZK packages against each other.

Testing Strategy

To test the Tabbox performance we tested how long it would take for a page to execute a

certain amount of Tabboxes. In this test, the number of Tabs within Tabs varied. For example if

we had approximately 20x5 Tabs, this means there were 20 Tabs displayed on screen each

containing a Tabbox with 5 Tabs.

ZK Enterprise VS ZK Community/Professional – execution time

Having established the speed of ZK Enterprise edition we tested the three ZK versions against

each other. Here are the results.

Figure 4. ZK EE VS ZK CE/PE - Tabbox execution time

0

2000

4000

6000

8000

10000

12000

14000

16000

20 100 200 300 400 500 600 700

Exe

cuti

on

Tim

e (

ms)

Number of tabboxes on the page

ZK EE vs CE/PE - Tabbox - execution time

ZK Enterprise

ZK Community/Professional

Page 10: ZK Performance Test - Leading Enterprise Java Web ... · ZK Performance Test ZK Community, Professional, ... therefore T1 -> T2 and T3 -> T4 were too small to make any ... Software

In Figure 4, the lower the load time the better and in the most extreme case ZK Enterprise is 8

times faster than ZK Community and Professional editions.

The Combobox

The next component to test is the Combobox which is very prevalent in today’s data driven

applications.

Testing Strategy

To test the Combobox performance we increased the number of items in the Combobox and

measured the time it takes to execute.

ZK Enterprise VS ZK Community/Professional – execution time

We now need to analyze the performance of the different ZK packages.

Figure 5. ZK EE VS ZK CE/PE - Combobox - execution time

0

1000

2000

3000

4000

5000

6000

7000

50

10

0

50

0

1,0

00

2,0

00

3,0

00

4,0

00

5,0

00

6,0

00

7,0

00

8,0

00

9,0

00

10

,00

0

Exe

cuti

on

Tim

e (

ms)

Number of items in the combobox

ZK EE VS CE/PE - Combobox - execution time

ZK Enterprise

ZK Community/Professional

Page 11: ZK Performance Test - Leading Enterprise Java Web ... · ZK Performance Test ZK Community, Professional, ... therefore T1 -> T2 and T3 -> T4 were too small to make any ... Software

In Figure 5 the lower the load time the better and in the most extreme case ZK Enterprise is

twice as fast as ZK Community and Professional editions.

The Menu

The next item that was tested is the Menu. We first defined a testing strategy, compare the

three ZK packages against each other.

Testing Strategy

To test the Menu’s performance we tested how long it would take for a page to execute a

certain amount of Menu’s and MenuItems.

ZK Enterprise VS ZK Community/Professional – execution time

We now need to analyze the performance of the different ZK packages.

Figure 6. ZK EE VS ZK CE/PE - Menu - execution time

0

1000

2000

3000

4000

5000

6000

7000

8000

Exe

cuti

on

Tim

e (

ms)

Number of menu items

ZK EE VS CE/PE - Menu - execution time

ZK Enterprise

ZK Community/Professional

Page 12: ZK Performance Test - Leading Enterprise Java Web ... · ZK Performance Test ZK Community, Professional, ... therefore T1 -> T2 and T3 -> T4 were too small to make any ... Software

In Figure 6 the lower the load time the better and in the most extreme case ZK Enterprise is 7

times faster than ZK Community and Professional editions.

Testing methodology

The testing methodology uses the time it takes on request to complete is journey from client to

server and back again. This also includes the time taken for the rendering and size

determination at the client.

Figure 7 is a graphical representation of a complete ZK request cycle.

Figure 7. The lifecycle of a ZK request

The time it takes the request to complete its journey is effectively T5 – T1 from Figure 7 and is

known as the execution time. However, in the case of this document the server and client were

both running on local host, therefore T1 -> T2 and T3 -> T4 were too small to make any

difference.

Page 13: ZK Performance Test - Leading Enterprise Java Web ... · ZK Performance Test ZK Community, Professional, ... therefore T1 -> T2 and T3 -> T4 were too small to make any ... Software

Test environments

The test environment was as follows:

Hardware

AMD Dual Core Processor 4000+ 2.1 GHz

Memory : 2GB

Hard Disk : HDS72808 0PLA380 SCSI Disk

Software

OS : WINDOW Vista Business

JDK : SUN JDK 1.6.0

Browser: IE8

Server :

o TOMCAT 6.0.20

o Memory : 1593 MB

Network

Network Adaptor : NVIDIA nForce Networking Controller

Server and Client browser are running on the same machine

Page 14: ZK Performance Test - Leading Enterprise Java Web ... · ZK Performance Test ZK Community, Professional, ... therefore T1 -> T2 and T3 -> T4 were too small to make any ... Software

Conclusion

In conclusion, to choose which edition is entirely up to the user and developer. If one’s

application requires the highest level of server scalability and performance then ZK EE is well

worth the investment.

While the performance indicated in these tests will depend on the type of applications that you

are using, we can still use these tests as an excellent base to assess the performance of the ZK

versions.

The results of these tests demonstrate that CE and PE still run very well, however, it is clear

should the application be required to handle an extreme amount of data then ZK EE is the

preferred option.