Crafter case: European Bank Piergiorgio Lucidi Open Source ECM Specialist Certified Alfresco Instructor and Engineer Alfresco Wiki Gardener and Forum Moderator
Summary Background Goals Challenges High level architecture Results
Background - The bank European Bank Accounts Credit Cards Mortgages Savings Insurances Promoters
Background – The problem Managing web contents using different CMS without any orchestration Many vertical applications for each domain of interest that must exchange data in the same way
Background – What they have New websites requirements A new Domain Model specific design of each page – components – images – metadata – sections – associations – search requirements » relevance » advanced search » suggester
Goals Replace the current WCM infrastructure Public websites Internal websites and applications Other needs related to publishing contents
Goals They want a central WCM system for all their distributed systems Heterogeneous Portals Java applications Apps based on other technologies Redundancy management different apps can host the same content without copies track where each content is deployed
Goals High level of customization Very specific page types and components Content Modeling Crafter modeling (WCM side) Alfresco modeling (Repository side) High reuse of page templates Integration / delivery with external applications Apps retrieve contents Contents are delivered by Crafter Engine
Challenges Avoid the fragmentation of contents Tracking of deployed contents Allow editors to use a unique UI Contents pushed on different targets Simplify the architecture Hardware Software
High level architecture Back-end Alfresco Cluster (2 nodes) Crafter Studio Crafter Preview (2 Delivery Node) Front-end Crafter Delivery Node (4 nodes) Crafter Engine Apache Solr MongoDB (social features)
High level architecture - BE DB Alfresco Lucene Index Load Balancer Crafter Studio Load Balancer Crafter Preview
Crafter Delivery 3 Crafter Delivery 2 High level architecture - FE Load Balancer Crafter Delivery 1 Crafter Delivery 4 Back End (BE) Alfresco / Crafter Back End (BE) Alfresco / Crafter Push contents
Crafter Delivery 3 Crafter Delivery 2 High level architecture - FE Load Balancer Crafter Delivery 1 Crafter Delivery 4 MongoDB User generated contents (UGC)
Results Integration with Enterprises Spring bean injection Groovy templates Alfresco rules scripting actions TinyMCE customization REST calls for creating custom contents
Results Great load test results very complex pages loaded in 1,3 seconds (!!!) Refined content management content types components metadata associations Refined advanced search
Thank you for your attention!