By: Geoffrey P. Pyrzynski - Entrepreneurship and Professor ...

1
Improving Content Management System Performance and the Web By: Geoffrey P. Pyrzynski - Entrepreneurship and Professor Mitchell D. Theys - Computer Science What makes a well designed website? What makes a website perform well? Major Performance Factors Valid XHTML & CSS - XHTML and CSS code should comply with the W3C standards, resulting in faster load time for browsers because the browser does not have to “guess” the page layout. Updated Components, Modules, Plugins - Updating these items provides security updates as well as code improvements to speed and extension functionality. Lean Module Loading - Load only the modules that are necessary to the page! Modules can even be set to load only onto certain pages to reduce data requests. Server Cache - Utilize system and component cache to prevent full page requests. Instead only the changed data will be sent. The cache will be regenerated after a set period of time. Server Environment - Joomla performs best in a 64 bit environment. 0 15 30 45 60 35.9 50.4 14.9 Average KB/Sec 0 10 20 30 40 17 17 39 HTTP Requests New Server Private Server Old Server 1 2 5 3 4 Characteristics 1.User Friendly - Well designed sites are constantly updated with new content and have it displayed in a neat and easily accessible manner to allow visitors to find the information they searching for quickly. 2.Backups/Portability - Have backups made at regular intervals and after major website events such as upgrades or additions for easy restoration due to possible server failure and attacks. 3.Employ Proper SEO Techniques -Utilize SEF URLS and place appropriate meta tags in the site content to attract human visitors as well as spiders. 4.Appropriate Meta Keywords and Description -The meta description is a one sentence snapshot of the site and meta keywords which describe the content more vividly go on every page. 5.Proper Image labeling - Images should have the proper text associated with them for proper download file names and blind visitors with screen readers who will hear the description of the picture or file. 0 2 4 6 8 Time(Sec) 3.74 0.536 8.39 Download Time 0 0.25 0.5 0.75 1 0.457 0.27 0.561 Generation Time 0 12500 25000 37500 50000 Bytes/Sec 7600 45496 7496 Download Speed Benchmark 3 Benchmark 4 Benchmark 5 Rapid Connect Test Simulated Private Server 0 15 30 45 60 HTTP Requests Download Speed Download Time Average KB/Sec Generation Time Test Runs Benchmark 1: Original site with “Legacy” code plugin turned on. Both 1.0 and 1.5 Joomla! components, Modules, and plugins are operating. Benchmark 2: Component, Module, and Plugins upgraded to Joomla! 1.5. Joomla! core code was updated to the latest version. Benchmark 3: Code Validation XHTML and CSS Validation errors were corrected to comply with W3C standards. Benchmark 4: Custom Template A template made specifically for these tests was deployed in an attempt to reduce HTTP requests. Benchmark 5: Cache Cache was employed to lower the amount of requests for the components and modules of the page. Rapid Connect Test: Tests to see if the time the tests were taken had an effect on the overall numbers. Sometimes the test was taken at a high traffic hour VS a lower traffic hour. Simulated Private Server: The website was installed on a local computer using Bitnami to simulate a private server to show how the site would perform with all network traffic removed and full server resources dedicated to it. 0 3.25 6.5 9.75 13 8 13 Page Load Time (seconds) 0 20 40 60 80 100 120 140 160 108 155 HTTP Requests Benchmark 2 Benchmark 1 HTTP Requests Download Speed Download TIme AVG KB/ Sec Generation Time Benchmark 3 30 2.163 9.61 17.0 2.97 Benchmark 4 18 1.803 8.67 24.6 3.94 Benchmark 5 30 3.168 9.34 18.5 2.3 Rapid Connect Test 39 7.496 8.39 14.9 0.56 Simulated Private Server Test 17 45.496 0.536 50.4 0.27 Scale Number of Requests Kilobytes per second Seconds Kilobytes per second Seconds Testing Conditions Trials were taken once an hour for 8 hours starting at 9:00 AM until 5:00 PM using the performance benchmarking website joomlaperformance.com.

Transcript of By: Geoffrey P. Pyrzynski - Entrepreneurship and Professor ...

Improving Content Management System Performance and the WebBy: Geoffrey P. Pyrzynski - Entrepreneurship and Professor Mitchell D. Theys - Computer Science

What makes a well designed website? What makes a website perform well?

Major Performance Factors•Valid XHTML & CSS - XHTML and CSS code should comply with the W3C standards, resulting in faster load time for

browsers because the browser does not have to “guess” the page layout.•Updated Components, Modules, Plugins - Updating these items provides security updates as well as code

improvements to speed and extension functionality.•Lean Module Loading- Load only the modules that are necessary to the page! Modules can even be set to load only

onto certain pages to reduce data requests.•Server Cache - Utilize system and component cache to prevent full page requests. Instead only the changed data

will be sent. The cache will be regenerated after a set period of time.•Server Environment - Joomla performs best in a 64 bit environment.

0

15

30

45

60

35.9

50.4

14.9

Average KB/Sec0

10

20

30

40

17 17

39

HTTP Requests

New Server Private Server Old Server

12

534

Characteristics1.User Friendly - Well designed sites are constantly updated with new content and have it displayed in a neat and

easily accessible manner to allow visitors to find the information they searching for quickly.2.Backups/Portability - Have backups made at regular intervals and after major website events such as upgrades or

additions for easy restoration due to possible server failure and attacks. 3.Employ Proper SEO Techniques -Utilize SEF URLS and place appropriate meta tags in the site content to attract

human visitors as well as spiders.4.Appropriate Meta Keywords and Description-The meta description is a one sentence snapshot of the site and

meta keywords which describe the content more vividly go on every page.5.Proper Image labeling - Images should have the proper text associated with them for proper download file names

and blind visitors with screen readers who will hear the description of the picture or file.

0

2

4

6

8

Time(Sec)3.74

0.536

8.39

Download Time0

0.25

0.5

0.75

1

0.457

0.27

0.561

Generation Time0

12500

25000

37500

50000

Bytes/Sec

7600

45496

7496Download Speed

Benchmark 3 Benchmark 4 Benchmark 5 Rapid Connect Test Simulated Private Server

0

15

30

45

60

HTTP Requests Download Speed Download Time Average KB/Sec Generation Time

Test RunsBenchmark 1:

Original site with “Legacy” code plugin turned on. Both 1.0 and 1.5 Joomla! components, Modules, and plugins are operating.

Benchmark 2:Component, Module, and Plugins upgraded to Joomla! 1.5. Joomla! core code was updated to the latest version.

Benchmark 3: Code Validation

XHTML and CSS Validation errors were corrected to comply with W3C standards.

Benchmark 4: Custom Template

A template made specifically for these tests was deployed in an attempt to reduce HTTP requests.

Benchmark 5: CacheCache was employed to lower the amount of requests for the components and modules of the page.

Rapid Connect Test:Tests to see if the time the tests were taken had an effect on the overall numbers. Sometimes the test was taken at a high traffic hour VS a lower traffic hour.

Simulated Private Server: The website was installed on a local computer using Bitnami to simulate a private server to show how the site would perform with all network traffic removed and full server resources dedicated to it.

0

3.25

6.5

9.75

13

8

13

Page Load Time (seconds)020406080100120140160

108

155

HTTP Requests

Benchmark 2 Benchmark 1

HTTP Requests

Download Speed

Download TIme

AVG KB/ Sec

Generation Time

Benchmark 3

30 2.163 9.61 17.0 2.97

Benchmark 4

18 1.803 8.67 24.6 3.94

Benchmark 5

30 3.168 9.34 18.5 2.3

Rapid Connect Test

39 7.496 8.39 14.9 0.56

Simulated Private Server Test

17 45.496 0.536 50.4 0.27

Scale Number of Requests

Kilobytes per

second

Seconds Kilobytes per

second

Seconds

Testing ConditionsTrials were taken once an hour for 8 hours starting at 9:00 AM until 5:00 PM using the performance benchmarking website joomlaperformance.com.