Faster! Optimize Your Cascade Experience
2012 Cascade Server User’s ConferenceJustin Klingman, Manager, Web Software DevelopmentBeacon Technologies, Inc. | beacontechnologies.com
September 17, 2012
@JustinVT99 #csuc12
2012 Cascade Server User’s Conference
2
Mission:◦ AUTOMATE, GROW, and CONNECT Your Business
Services Offered:◦ Web Development, Digital Marketing, Web Hosting
Currently supporting 185 active Web clients
Hannon Hill Development and Hosting Partner◦ > 80 sites in 25 Cascade instances since 2005
Beacon Technologies
09/17/2012
2012 Cascade Server User’s Conference
3
Session Overview
09/17/2012
Objective: Speed up your Cascade experience
Infrastructure Index Blocks: Problems & Solutions Data Definitions Publishing Tips for End Users Used Cascade 7 w/32-bit engine and
legacy (6.x) caching
2012 Cascade Server User’s Conference
4
Minimum CPU is Dual Core; recommend Quad Core with 4GB of RAM
Separate Application and Database◦ Server #1: Cascade software (front-end)◦ Server #2: Database Server (back-end)
Notes:◦ Servers should not be used for other applications◦ If using virtual servers, use 15K RPM SCSI Drives
on separate disk drives and RAID spindles in your SAN Provides greater disk access speed
09/17/2012
Infrastructure | Hardware
2012 Cascade Server User’s Conference
5
Upgrade Cascade! Use latest supported OS and Database
versions 64-bit OS and Java
◦ Much faster with raised memory allocation 74% decrease in page rendering in our testing
◦ 64-bit allows for more memory to be allocated Java Settings
◦ Allocate > 1.5 GB RAM (64-bit only)◦ Investigate Initial RAM, Max RAM, and
MaxPermSize settings
09/17/2012
Infrastructure | Software
2012 Cascade Server User’s Conference
6
Network◦ Use Gigabit connections between all servers◦ Avoid FTP publishing if possible◦ Best publishing methods
Cascade Windows → Windows: Windows File Transfer Cascade Windows → Linux: Samba Cascade Linux → Linux: NFS
Restart Cascade weekly
09/17/2012
Infrastructure | Network / Restart
2012 Cascade Server User’s Conference
7
One of the biggest factors in page rendering & publishing times
Don’t index more than you need◦ Carefully enable Index Block options◦ Deactivate / Delete unused assets
Index Blocks
09/17/2012
2012 Cascade Server User’s Conference
8 09/17/2012
Index Blocks | Top Navigation w/ Dropdown
2012 Cascade Server User’s Conference
9 09/17/2012
Index Blocks | Top Navigation w/ Dropdown
2012 Cascade Server User’s Conference
10
09/17/2012
Index Blocks | Top Navigation w/ Dropdown
Experiment: Top Navigation dropdown menu showing sub-links under each main item◦ GREAT feature for your Web site visitors◦ Requires indexing all site folders, but only 3 levels
deep
2012 Cascade Server User’s Conference
11
09/17/2012
Index Blocks | Top Navigation w/ Dropdown
Optimized index block:
2012 Cascade Server User’s Conference
12
Change one option at a time to show performance impact
Results◦ 1,200 pages, single page rendered(minimal publishing
differences)
09/17/2012
Index Blocks | Top Navigation w/ Dropdown
Block Option Optimized Render
Non-optimized Render
Depth of Index 3
0:10
4 0:18
Max Rendered Assets
0 (unlimited) 200 0:05
Indexed Asset Types
Pages / Blocks Pages / Blocks /Files 0:20
Page XML Do not render page XML inline
Render page XML inline 1:13
Indexed Asset Content
Regular Content /User Metadata
Regular Content /System Metadata / User Metadata
0:11
Other Indexed Info <not selected> Append Calling Page Data 0:11
2012 Cascade Server User’s Conference
13
Optimal Solution: Feed Block◦ Publish XML file of Top Navigation◦ In Cascade, Feed Block reads published XML file
(like external RSS feed)◦ Top navigation is rendered normally, but is faster
since Cascade isn’t processing index block◦ Top Navigation XML is published manually, using
scheduled Publish Set, or Workflow Publish Trigger Format: If page’s “Last Published On” value does not
exist, it has never been published, so hide
09/17/2012
Index Blocks | Top Navigation w/ Dropdown
<xsl:apply-templates select=“system-page[last-published-on]”>
2012 Cascade Server User’s Conference
14
Optimal Solution: Feed Block◦ Advantage:
Cuts render time in half (0:10 → 0:05)◦ Disadvantage:
Navigation changes not displayed in Cascade until XML is published
09/17/2012
Index Blocks | Top Navigation w/ Dropdown
2012 Cascade Server User’s Conference
15
09/17/2012
Index Blocks | Left Navigation
2012 Cascade Server User’s Conference
16
Accordion / Fly-out Navigation:◦ Subfolder navigation
appears without changing pages
◦ Disadvantage: Must index entire site Relative indexing cannot see
into parent folders
09/17/2012
Index Blocks | Left Navigation
2012 Cascade Server User’s Conference
17
Optimal Solution: Relative Indexing◦ Index the current page’s parent folders and
siblings◦ Doesn’t
index everypage in asection
◦ OptimizedIndex Block:
09/17/2012
Index Blocks | Left Navigation
2012 Cascade Server User’s Conference
18
Results◦ 70-page section, single page rendered
If Accordion is needed, use Feed Block◦ Same solution as Top Navigation◦ Disadvantages:
Navigation changes not displayed in Cascade until XML is published
Accordion cannot be viewed in Cascade Requires .NET, PHP to process XML file
09/17/2012
Index Blocks | Left Navigation
Solution Render
Accordion 0:31
Relative Indexing 0:10
2012 Cascade Server User’s Conference
19
Usually have to index content from pages Much faster to index Metadata only Example: Faculty Directory
◦ Listing Page: Name, College, Phone, Email◦ Optimized Index Block
09/17/2012
Index Blocks | Listing Pages
2012 Cascade Server User’s Conference
20
Example: Faculty Directory◦ Data Definition: Index page content◦ Metadata: Only index page metadata◦ Results
(450 Faculty pages)
09/17/2012
Index Blocks | Listing Pages
Data Definition Metadata
0:29 0:10
2012 Cascade Server User’s Conference
21
How do you know what data you need and don’t need?◦ Need to see the data the page is seeing◦ “XML” configuration in each Configuration Set
09/17/2012
Index Blocks | Know Your Data
2012 Cascade Server User’s Conference
22
How do you know what data you need and don’t need?◦ Edit page and attach appropriate block to XML
configuration (e.g. “Press Releases”)◦ View XML configuration to see the XML the page
is seeing◦ Edit Index
Block optionsto find optimalsettings
09/17/2012
Index Blocks | Know Your Data
2012 Cascade Server User’s Conference
23
The bigger they are, the harder they fall(or render, or save)
Use Data Definition Blocks◦ Breaks up fields in page’s Data Definition
09/17/2012
Data Definitions
2012 Cascade Server User’s Conference
24
Do full-site publishes at night when server load is light
Publish only what’s needed
Avoid full-site publishes when possible◦ Solution: Includes for common template regions
Publishing over Network is faster than FTP
09/17/2012
Publishing
2012 Cascade Server User’s Conference
25
Choose your Web browser wisely◦ My #1 choice is Google Chrome,
followed by Firefox, Safari◦ Aren’t I forgetting a browser?
Browsing in Cascade◦ Use context menus◦ Don’t have to wait for a page to
load before selecting action(Edit, Publish, etc.)
09/17/2012
For End Users
2012 Cascade Server User’s Conference
26
Gather list of modules / regions to evaluate Benchmark current setup
◦ Metrics: “Rendering Time”and “Slow Regions”
◦ Publish times: single page,full site
Index Block◦ Evaluate XSLT to determine what data it needs◦ Create XML Configuration for all Configuration
Sets◦ Attach index block to see what the page is seeing◦ Tune Index Blocks settings to get minimum data
09/17/2012
Audit Process
2012 Cascade Server User’s Conference
27
Modules◦ Consider different approach (e.g. Feed Block)◦ Listing Pages: Data Definition vs. Metadata
Data Definitions◦ Opportunities to split into Data Definition Blocks
09/17/2012
Audit Process
2012 Cascade Server User’s Conference
28
Infrastructure◦ Cascade / OS / DB versions◦ Front- and back-end architecture & specs
1 or 2 servers? Processor / Memory / Disk
◦ Java Engine 32- or 64-bit? Memory allocated
◦ Publishing Via Network or FTP?
09/17/2012
Audit Process
2012 Cascade Server User’s Conference
29
09/17/2012
FREE Performance Audit A “look under the hood”
◦ Page render/publishspeed, configuration, code andinfrastructure implementation
Valuable insights & actionable recommendations◦ Improve the user experience and
simplify maintenance QR code, card in Swag Bag, stop
by our booth, see Rick Boccard or me, or visitbeacontechnologies.com/cascade-server-analysis/
2012 Cascade Server User’s Conference
30
Contact Information:Justin KlingmanBeacon Technologies, Inc.beacontechnologies.comjklingman@beacontechnologies.com336.232.5685@JustinVT99
Questions?
09/17/2012