Date post: | 17-Dec-2014 |
Category: |
Technology |
Upload: | warren-buckley |
View: | 5,860 times |
Download: | 1 times |
CONDÉ NAST DIGITAL
Alex Norcliffe International Tech Lead for CondéNast International, now consultant Technology Architect
Email: [email protected] Twitter: alex_norcliffeURL: www.boxbinary.com
Peter MillerHead of Tech & Development, CondéNast UKEmail: [email protected] Twitter: petemillBlog: http://wishfulcode.blogspot.com/
ABOUT US
Development EnvironmentHandling traffi c – code scalabilityHandling traffi c – servers & the cloud
SCALING UMBRACO TO A LARGE, HIGH TRAFFIC PUBLISHING ENVIRONMENT
Industry-specifi c tools / data structures Shared components for multiple projects
ENVIRONMENT
Flexibility- Site Structure- Template confi guration
Workfl ow:- Notifi cations- Granular permissions
Great experience:- Convergence of tools- Slick editing interface
EDITORS WANT...
Rapid development Easy to extend
Integration with existing systems Open-source
No license fees for the product Share costs – become part of an evolving platform Avoid buying limited access to a vendor Leave more budget for creating great sites
Re-use content across multiple sites and domains Host many sites on one server set-up Non-technical user interface Low cost of support
WHY UMBRACO IS A GREAT CHOICE FOR LARGE PUBLISHERS
UMBRACO IN A LARGE PUBLISHING ENVIRONMENT
Use simple, custom (but generic!) DataTypes for component convergence.
Our goal is to give the editor’s one experience and a consistent flexibility.
UMBRACO IN A LARGE PUBLISHING ENVIRONMENT
Highly configurable, layout and structure-independent templates.
Logical inheritence of templates, even in code - base classes for similar layout templates that share the same data template.
DEVELOPMENT / EDITORIAL WORKFLOW
Build Server
Dev
Staging Live
Dev Umbraco
Editorial Umbraco
What’s “massive”? Unpredictable traffi c pattern Timezone of audience spread across globe Large amount of content: cache turnover rate High amount of pageviews
CondeNet UK + Italy combined = >100m PVs per month
HANDLING MASSIVE TRAFFIC
Scaling the code Code performance before adding caching
JetBrains dotTrace code profiler (Screenshot)
Even String.Concat rather than String.Format! BoxBinary WebCacheManager framework (Screenshot)
Memcached is great too Lucene indexing of external data sources
Comments, Image + Video assets OutputCaching “icing the cake”
HANDLING MASSIVE TRAFFIC
HANDLING TRAFFIC 2
SERVING TRAFFIC
Traditionally:•Managed Servers / Co-location•Multi-year contracts
Cloud Architecture:•Turn an entire data center on or off on-demand•Pick and choose services, managed by experts and you.
•Disposable image-based and role-based machines.•Peristent data stored in the right places
CLOUD MANAGEMENT / LOAD-BALANCED UMBRACO
•Maintain your best-practice hosting and deployment scenarios without a systems team•Easy to manage – consistent API, and tools developed in the community to use it
LOAD-BALANCED UMBRACO
•Disposable web-server templates• Scales up easily• Failures are OK
•NAS has advantages and disadvantages
•Store content safely, synchronise to web nodes
•Our team has integrated distributed source control to the build process• Push build output to a versioned repository• Web nodes pull• Easy to revert
MONITORING