Upload
maxine-rivera
View
38
Download
1
Embed Size (px)
DESCRIPTION
Managing 150 Sites with Sitecore. @Drexel university. Scope. Drexel – 300+ schools, departments, programs Drexel College of Medicine – 100+ departments, programs Academy of Natural Sciences. Development…. Sitecore development started in late 2008 with a single pilot site - PowerPoint PPT Presentation
Citation preview
Managing 150 Sites with Sitecore@DREXEL UNIVERSITY
Scope◦ Drexel – 300+ schools, departments, programs◦ Drexel College of Medicine – 100+ departments, programs◦ Academy of Natural Sciences
Development…◦ Sitecore development started in late 2008 with a single pilot site◦ 2 devs + 2 bosses + 1 conference room = 1 live website… in just a few weeks!◦ Then… off to the races!
12/08
4/09
8/0912/0
94/1
08/1
012/1
04/1
18/1
112/1
14/1
28/1
212/1
24/1
38/1
312/1
30
20
40
60
80
100
120
140
160
Sites
12/08
4/09
8/0912/0
94/1
08/1
012/1
04/1
18/1
112/1
14/1
28/1
212/1
24/1
38/1
312/1
30
50
100
150
200
250
300
350
400
450
500
Templates
12/08
4/09
8/0912/0
94/1
08/1
012/1
04/1
18/1
112/1
14/1
28/1
212/1
24/1
38/1
312/1
30
20,000
40,000
60,000
80,000
100,000
120,000
140,000
Items
Development…◦ Sitecore development started in late 2008 with a single pilot site◦ 2 devs + 2 bosses + 1 conference room = 1 live website… in just a few weeks!◦ Then… off to the races!
12/08
3/09
6/09
9/0912/0
93/1
06/1
09/1
012/1
03/1
16/1
19/1
112/1
13/1
26/1
29/1
212/1
23/1
36/1
39/1
312/1
33/1
40
50100150200250300350400
Components
Renderings SubLayouts
Web Project Workflow … from a developer perspective
Is IA complete-ish?
Kick to curb
No
Is design complete-ish?Yes
Kick “upstairs”
No
Determine “Page Types” and
ComponentsYes
Build Templates tell client to start keying
content
Develop components as
necessary. Re-use when possible
Unrealistic/fabricated deadline?
Give Shane the bulk of the work. Finish
on time.Yes
Probably
Website Structure◦ A typical site hierarchy
◦ Site◦ Section
◦ Section Page◦ Basic Page
◦ Each site also has an “Extras” folder for component metadata items
◦ CSS is stored in Sitecore and rendered via a custom handler “~/stylesheets/”
V1 -> V2 ConversionoV1 suffered from field bloat and misuse
oV2 was a major shift in field allocation and designo Fewer fields – Easier for users. Avoid field misuse.
Adherence to University’s new site policieso Inherited CSSo Responsive Design
oUpgradeV1toV2.aspxo XML File that maps old templates to new templateso Root Item, Validate Mappings, Preview, Upgradeo Run once, Republish, and everyone is happy!
Import DataoData Preservation is key when bringing a new site into Sitecore
oAcademy of Natural Scienceso Old XML Art Collection archiveo Audubon Birds of America book plates
oDrexelo Custom CMS -> V1 News, In The News, and Press Releaseso -> V2 News and In The News merged with Drexel Now
oCollege of Medicineo Faculty o News
PROD EnvironmentContent Delivery (CD)
VM VM
Content Management (CM)
VM
SQL 2008 Instance
Core~3 GB
Master~55 GB
Web~43 GB
WebForms~0.3 GB
Other Environments
Code (Test) Software (Test) Future
CM CD
Core Master Web
CM/CD
Core Master Web
CM CD1
Core Master Web
CD2
Dev
Dev machines
Core Master Web
Flexible Components◦ Datasets and DatasetRenderers
◦ Allows our “techie users” to quickly render lists of data◦ Sources of data:
◦ Sitecore query◦ External SQL DB query◦ XML feed◦ Sharepoint List/View
◦ Multiple DatasetRenderers may use the same Dataset◦ Supports a small set of inline functions using a custom language
parser built with Irony.NET
Dataset
DatasetRenderers
6/10
8/1010/1
012/1
02/1
14/1
16/1
18/1
110/1
112/1
12/1
24/1
26/1
28/1
210/1
212/1
22/1
34/1
36/1
38/1
310/1
312/1
32/1
40
500
1000
1500
2000
2500
Dataset Component Usage
Flexible Components◦ Active Data Calendar
◦ Stand alone calendar system◦ Repository for all events at the university
◦ Drexel.edu/Events ◦ Hybrid of Sitecore and the Active Data Calendar app
◦ Components to surface all calendar data in Sitecore◦ Parameters to control what data gets pulled from the calendar
1/09
4/09
7/0910/0
91/1
04/1
07/1
010/1
01/1
14/1
17/1
110/1
11/1
24/1
27/1
210/1
21/1
34/1
37/1
310/1
31/1
44/1
40
50
100
150
200
250
300
350
Calendar Component Usage
V1 V2
Flexible Components◦ Custom 404 Handler
◦ URLs that do not resolve to items are parsed and used to query our Lucene index in order to present the user with our “best guesses” of what they were looking for.
◦ User is 301 redirected to the top matching page and presented a jQuery dialog with other matches.◦ Works across all sites. If no acceptable matches are found, we redirect the user to the homepage of that site.◦ DEMO: http://ansp.org/dinosaurs
Performance Things that really helped improve performance
◦ Adding the 2nd CD server◦ Updating DB cache values (/admin/cache.aspx)◦ Sitecore Debugger + Profiler◦ Component query optimization◦ Periodically analyzing the Sitecore log files
Development Practices◦ SVN for source control
◦ Deployments occur via Sitecore packages
◦ Files (except DLLs) are sync’d with DFS; DLLs copied manually to CD servers
◦ Packages are used to deploy to TEST environments as well thus, testing the package
◦ Conventions
◦ We have code to dynamically generate a Field IDs DLL like Sitecores’. It contains name/GUID mappings for all our template fields so we can use strongly typed field references in our code.
I got this!
Questions? Demos?
Paul Martinhttp://sitecorepm.wordpress.com@sitecorepm
Shane Bair