SlideShare a Scribd company logo
1 of 41
The 3-Tier Architecture
Bill Cava
• Chief Evangelist, Ektron
• http://twitter.com/billcava
• bill.cava@ektron.com
AGENDA & OVERVIEW
• What’s New in 8.5: 3-Tier Architecture
• Benefits
  Scalability, Performance, Security, Availabilit
  y
• Ektron in a 3-Tier Architecture
  – Installation & Configuration
  – Developer Experience
     • Framework API: New API in v8.5
     • Framework UI: Templated .NET Server Controls
  – Implementing your Service Layer
• Demo!
what is the 3-tier architecture and are its benefits…

THE WHAT’S & WHY’S
1Tier   2Tier   3Tier   nTier
1-TIER ARCHITECTURE
              • Mainframes
              • Single Machine
              • Dumb Terminal
                access
              • Pro
                 – Simple
              • Con
                 – Expensive
                 – Tightly coupled
2-TIER ARCHITECTURE
           • Client
             – UI, Resources
               Aqcuisition, Business
               Rules
           • Server
             – Data storage, shared
               function
           • Pros
             – Shared resources
           • Cons
             – Managing
               connections, Ineffeci
               ent utilization
3-TIER ARCHITECTURE
• Presentation Tier
  – Front End
  – Display Tier
• Middle Tier
  – Application
    Server
• Data Tier
  – Storage Server
BENEFITS OF THIS ARCHITECTURE

• Security
• Scalability
• Performance
• Availability
SECURITY
• Publically accessible
  Presentation-Tier has
  no direct access to
  Data-Tier
• Business Logic
  contained w/in
  Middle-Tier isolated
• Structure of database
  hidden from
  Presentation-Tier
SCALABILITY
• Each tier
  independently
  scales horizontally
• Scale Presentation-
  Tier to handle
  connections
• Free database to
  handle database
  transactions
PERFORMANCE
• Cache requests
  between FE & MT
  – Serve data from
    memory
  – Minimize network
    utilization
  – Reduce MT and DT
    load
• Load Balancing
  possible at each tier
AVAILABILITY
• Redundancy of
  presentation-Tier
  and Middle-Tier
  servers for failover
• Caching between
  FE & MT means
  system continues to
  serve content if
  Middle-Tier
  unavailable
what ektron looks like in a 3-tier architecture

EKTRON & 3-TIER
EKTRON STILL SUPPORT 2-TIER!
• You can upgrade from < 8.5 to 8.5
  – This is supported and will continue to work
  – Upgraded site will be 2-Tier
  – Upgrading to 8.5 does NOT make your site “3-Tier”
• You can develop a new site on v8.5 using 2-
  Tier
  – Standard approach for building a website
• You can develop a new site on v8.5 using 3-
  Tier
VERSIONS PRIOR TO 8.5
VERSIONS PRIOR TO 8.5
VERSIONS PRIOR TO 8.5
VERSION 8.5
VERSION 8.5
GOING DEEPER INTO EKTRON 3-TIER
MIDDLE-TIER FOOTPRINT




Full Ektron Installation on Middle-Tier:
• Ektron DLLs
• Ektron Workarea
• Ektron Windows Services
• Ektron WCF Services
• Custom WCF Services
PRESENTATION-TIER FOOTPRINT




Minimal Footprint on Front-End
• Standard ASP.NET Web site
• Minimal set of Ektron.DLLs in ~/bin
• Configuration files (web.config, unity.config)
• Workarea not required
DEVELOPER EXPERIENCE




Developer Experience on Front-End
• Use Framework API & databind
• Use Templated Server Controls
• No difference in developer experience between the
  2-Tier and 3-tier architectures
    • Same exact code syntax
UNITY – DEPENDENCY INJECTION




 Unity Application Block – Dependency injection
 framework; Part of MS Enterprise Library
 • Dynamically register dependencies at runtime
 • Introduction to Unity http://msdn.microsoft.com/en-
    us/library/dd203319.aspx
 • Single unity.config on Front-End servers
DEREK SLIDE
COMMUNICATION FE-MT: WCF




Windows Communication Foundation is
• Used to communitcate between the Presentation-
  Tier and the Middle-Tier.
• Implemented as a Unity container
CACHING LAYER




The Caching Layer
• Caches all data retrieved from the middle-tier in
  memory on the servers in the presentation-tier
• Caching is implemented as another Unity container
• Is configured within the Unity config
getting things up & running in a 3-tier environment …

INSTALLATION &
CONFIGURATION
BASIC INSTALLATION
Middle Tier & Data Tier
• Perform full Ektron installation on the Middle-
  Tier / Data tier server using
  CMS400Basev85.exe (no difference)
  – Note: In 8.5 RC installation should be performed on the
    website root
  – As part of the installation, the 3TierMin site will be installed
    to: C:Program Files
    (x86)EktronCMS400v85startersites3TierMinContent
INSTALLATION
Presentation-Tier
1. From Middle-Tier, copy folder C:Program Files
   (x86)EktronCMS400v85startersites3TierMinCo
   ntent to your web directory on the Presentation
   Tier server
  –       This folder contains elements for a minimal-footprint front-end
          site, containing subset of DLLs from Middle-Tier to Presentation-Tier
          server
      •       Which DLLs you need depends on which features you use
      •       This documentation describes which DLLs are required
              http://bit.ly/ektron-3tier-installation-doc
      •       Note: not an issue to “just grab them all” -- even though you wont need
              them all -- and pair it down later
2. Open IIS on Presentation Tier server and make this
   folder a Web Site
INSTALLATION (CONT’D)
3. Update web.config & point to Middle-Tier

  <appSettings>
     <add
        key="ek_ServicesPath"
        value="http://[MT]/workarea/services/"/>
  </appSettings>
INSTALLATION (CONT’D)
4. Browse to http://[FE]/default.aspx
  –   You should be able to log into your front-end using any
      account defined within Ektron (Admin/Admin, etc).
5. Deploy your own templates and code to
   the Presentation-Tier

                         That’s it!

 … now let’s walk through the code footprint
              on the Front-End
development options in a 3-tier environment

DEVELOPING 3-TIER
TWO APPROACHES TO DEVELOPING IN 3-TIER
1. Use Framework APIs and/or Templated Server
   Controls directly on the Presentation-Tier Server
  –   Pros: Simpler (previous installation, ready to go)
  –   Cons: Chattiness of API calls over wire
2. Designing your own Service Layer on the Middle-
   Tier, consuming those services on the Presentation-
   Tier Server
  –   Pros:
      •   Designing a Service Oriented Architecture (SOA)
      •   Leveraging Middle-Tier for its strength
  –   Con: A little more complex to set up
APPROACH #2: DEVELOPING USING APIS
• On the Front-End, use the APIs directly
FREQUENTLY ASKED QUESTIONS
What about …
 – legacy APIs?
 – legacy Server Controls?
 – PageBuilder?
 – Widgets?
 – eSync?
    • data? code?
    • documents, images, etc.?
Questions?

Bill Cava
• Chief Evangelist, Ektron
• http://twitter.com/billcava
• bill.cava@ektron.com

More Related Content

What's hot

two tier and three tier
two tier and three tiertwo tier and three tier
two tier and three tierKashafnaz2
 
Differences Between Architectures
Differences Between ArchitecturesDifferences Between Architectures
Differences Between Architecturesprasadsmn
 
Client server architecture
Client server architectureClient server architecture
Client server architectureBhargav Amin
 
Client sever architecture
Client sever architectureClient sever architecture
Client sever architectureTahira Sadaf
 
Overview of 3-tier Client Server Architecture
Overview of 3-tier Client Server ArchitectureOverview of 3-tier Client Server Architecture
Overview of 3-tier Client Server ArchitectureMeghaj Mallick
 
Client Server Architecture in Database Management System
Client Server Architecture in Database Management SystemClient Server Architecture in Database Management System
Client Server Architecture in Database Management SystemPapan Sarkar
 
client server architecture
client server architecture client server architecture
client server architecture Saurabh Soni
 
Client Server models in JAVA
Client Server models in JAVAClient Server models in JAVA
Client Server models in JAVATech_MX
 
3 tierarchitecture-091103063446-phpapp01
3 tierarchitecture-091103063446-phpapp013 tierarchitecture-091103063446-phpapp01
3 tierarchitecture-091103063446-phpapp01asif khan
 
Dbms level of architecture2
Dbms level of architecture2Dbms level of architecture2
Dbms level of architecture2Akshaya Parida
 
Odbc and data access objects
Odbc and data access objectsOdbc and data access objects
Odbc and data access objectsSangeetha Sg
 
Client Server Architecture
Client Server ArchitectureClient Server Architecture
Client Server ArchitectureRence Montanes
 
Chapter2
Chapter2Chapter2
Chapter2suks_87
 

What's hot (20)

3 tier architecture
3 tier architecture3 tier architecture
3 tier architecture
 
3 Tier Architecture
3 Tier Architecture3 Tier Architecture
3 Tier Architecture
 
two tier and three tier
two tier and three tiertwo tier and three tier
two tier and three tier
 
2 tier and 3 tier architecture
2 tier and 3 tier architecture2 tier and 3 tier architecture
2 tier and 3 tier architecture
 
3 tier architecture
3 tier architecture3 tier architecture
3 tier architecture
 
Technical Architectures
Technical ArchitecturesTechnical Architectures
Technical Architectures
 
Differences Between Architectures
Differences Between ArchitecturesDifferences Between Architectures
Differences Between Architectures
 
Client server architecture
Client server architectureClient server architecture
Client server architecture
 
Client sever architecture
Client sever architectureClient sever architecture
Client sever architecture
 
Overview of 3-tier Client Server Architecture
Overview of 3-tier Client Server ArchitectureOverview of 3-tier Client Server Architecture
Overview of 3-tier Client Server Architecture
 
Client server architecture
Client server architectureClient server architecture
Client server architecture
 
Client Server Architecture in Database Management System
Client Server Architecture in Database Management SystemClient Server Architecture in Database Management System
Client Server Architecture in Database Management System
 
client server architecture
client server architecture client server architecture
client server architecture
 
Client Server models in JAVA
Client Server models in JAVAClient Server models in JAVA
Client Server models in JAVA
 
3 tierarchitecture-091103063446-phpapp01
3 tierarchitecture-091103063446-phpapp013 tierarchitecture-091103063446-phpapp01
3 tierarchitecture-091103063446-phpapp01
 
Dbms level of architecture2
Dbms level of architecture2Dbms level of architecture2
Dbms level of architecture2
 
Odbc and data access objects
Odbc and data access objectsOdbc and data access objects
Odbc and data access objects
 
Client Server Architecture
Client Server ArchitectureClient Server Architecture
Client Server Architecture
 
Client Server Architecture ppt
Client Server Architecture pptClient Server Architecture ppt
Client Server Architecture ppt
 
Chapter2
Chapter2Chapter2
Chapter2
 

Similar to Ektron 3-Tier Architecture

Enterprise java unit-1_chapter-2
Enterprise java unit-1_chapter-2Enterprise java unit-1_chapter-2
Enterprise java unit-1_chapter-2sandeep54552
 
enterprisejavaunit-1chapter-2-210914075956.pdf
enterprisejavaunit-1chapter-2-210914075956.pdfenterprisejavaunit-1chapter-2-210914075956.pdf
enterprisejavaunit-1chapter-2-210914075956.pdfEidTahir
 
Cloud compiler - Minor Project by students of CBPGEC
Cloud compiler - Minor Project by students of CBPGEC  Cloud compiler - Minor Project by students of CBPGEC
Cloud compiler - Minor Project by students of CBPGEC vipin kumar
 
Introduction and Basics to web technology .pptx
Introduction and Basics to web technology .pptxIntroduction and Basics to web technology .pptx
Introduction and Basics to web technology .pptxLEENASAHU42
 
.NET microservices with Azure Service Fabric
.NET microservices with Azure Service Fabric.NET microservices with Azure Service Fabric
.NET microservices with Azure Service FabricDavide Benvegnù
 
Stay productive_while_slicing_up_the_monolith
Stay productive_while_slicing_up_the_monolithStay productive_while_slicing_up_the_monolith
Stay productive_while_slicing_up_the_monolithMarkus Eisele
 
New Approaches to Faster Oracle Forms System Performance
New Approaches to Faster Oracle Forms System PerformanceNew Approaches to Faster Oracle Forms System Performance
New Approaches to Faster Oracle Forms System PerformanceCorrelsense
 
3 tier architecture
3 tier architecture3 tier architecture
3 tier architecturetahir khan
 
Data center proposal
Data center proposalData center proposal
Data center proposalMuhammad Ahad
 
Service Fabric – building tomorrows applications today
Service Fabric – building tomorrows applications todayService Fabric – building tomorrows applications today
Service Fabric – building tomorrows applications todayBizTalk360
 
Client server architecture
Client server architectureClient server architecture
Client server architectureRituBhargava7
 
Continuous Integration with Amazon ECS and Docker
Continuous Integration with Amazon ECS and DockerContinuous Integration with Amazon ECS and Docker
Continuous Integration with Amazon ECS and DockerAmazon Web Services
 
Whats new in Enterprise 5.0 Product Suite
Whats new in Enterprise 5.0 Product SuiteWhats new in Enterprise 5.0 Product Suite
Whats new in Enterprise 5.0 Product SuiteMicro Focus
 
Oracle Forms Introduction
Oracle Forms IntroductionOracle Forms Introduction
Oracle Forms IntroductionSekhar Byna
 
Edge 2016 Session 1886 Building your own docker container cloud on ibm power...
Edge 2016 Session 1886  Building your own docker container cloud on ibm power...Edge 2016 Session 1886  Building your own docker container cloud on ibm power...
Edge 2016 Session 1886 Building your own docker container cloud on ibm power...Yong Feng
 
Rouky Martin Resume
Rouky Martin ResumeRouky Martin Resume
Rouky Martin Resumeroukym
 
Choosing the Best Approach for Monitoring Citrix User Experience: Should You ...
Choosing the Best Approach for Monitoring Citrix User Experience: Should You ...Choosing the Best Approach for Monitoring Citrix User Experience: Should You ...
Choosing the Best Approach for Monitoring Citrix User Experience: Should You ...eG Innovations
 

Similar to Ektron 3-Tier Architecture (20)

Enterprise java unit-1_chapter-2
Enterprise java unit-1_chapter-2Enterprise java unit-1_chapter-2
Enterprise java unit-1_chapter-2
 
enterprisejavaunit-1chapter-2-210914075956.pdf
enterprisejavaunit-1chapter-2-210914075956.pdfenterprisejavaunit-1chapter-2-210914075956.pdf
enterprisejavaunit-1chapter-2-210914075956.pdf
 
Cloud compiler - Minor Project by students of CBPGEC
Cloud compiler - Minor Project by students of CBPGEC  Cloud compiler - Minor Project by students of CBPGEC
Cloud compiler - Minor Project by students of CBPGEC
 
Introduction and Basics to web technology .pptx
Introduction and Basics to web technology .pptxIntroduction and Basics to web technology .pptx
Introduction and Basics to web technology .pptx
 
IBM Notes in the Cloud
IBM Notes in the CloudIBM Notes in the Cloud
IBM Notes in the Cloud
 
.NET microservices with Azure Service Fabric
.NET microservices with Azure Service Fabric.NET microservices with Azure Service Fabric
.NET microservices with Azure Service Fabric
 
Stay productive_while_slicing_up_the_monolith
Stay productive_while_slicing_up_the_monolithStay productive_while_slicing_up_the_monolith
Stay productive_while_slicing_up_the_monolith
 
New Approaches to Faster Oracle Forms System Performance
New Approaches to Faster Oracle Forms System PerformanceNew Approaches to Faster Oracle Forms System Performance
New Approaches to Faster Oracle Forms System Performance
 
3 tier architecture
3 tier architecture3 tier architecture
3 tier architecture
 
Data center proposal
Data center proposalData center proposal
Data center proposal
 
Service Fabric – building tomorrows applications today
Service Fabric – building tomorrows applications todayService Fabric – building tomorrows applications today
Service Fabric – building tomorrows applications today
 
Ra framework 0.1
Ra framework 0.1Ra framework 0.1
Ra framework 0.1
 
Client server architecture
Client server architectureClient server architecture
Client server architecture
 
Continuous Integration with Amazon ECS and Docker
Continuous Integration with Amazon ECS and DockerContinuous Integration with Amazon ECS and Docker
Continuous Integration with Amazon ECS and Docker
 
Whats new in Enterprise 5.0 Product Suite
Whats new in Enterprise 5.0 Product SuiteWhats new in Enterprise 5.0 Product Suite
Whats new in Enterprise 5.0 Product Suite
 
Oracle Forms Introduction
Oracle Forms IntroductionOracle Forms Introduction
Oracle Forms Introduction
 
Edge 2016 Session 1886 Building your own docker container cloud on ibm power...
Edge 2016 Session 1886  Building your own docker container cloud on ibm power...Edge 2016 Session 1886  Building your own docker container cloud on ibm power...
Edge 2016 Session 1886 Building your own docker container cloud on ibm power...
 
3tier architecture
3tier architecture3tier architecture
3tier architecture
 
Rouky Martin Resume
Rouky Martin ResumeRouky Martin Resume
Rouky Martin Resume
 
Choosing the Best Approach for Monitoring Citrix User Experience: Should You ...
Choosing the Best Approach for Monitoring Citrix User Experience: Should You ...Choosing the Best Approach for Monitoring Citrix User Experience: Should You ...
Choosing the Best Approach for Monitoring Citrix User Experience: Should You ...
 

Recently uploaded

Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhisoniya singh
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 

Recently uploaded (20)

Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 

Ektron 3-Tier Architecture

  • 2. Bill Cava • Chief Evangelist, Ektron • http://twitter.com/billcava • bill.cava@ektron.com
  • 3. AGENDA & OVERVIEW • What’s New in 8.5: 3-Tier Architecture • Benefits Scalability, Performance, Security, Availabilit y • Ektron in a 3-Tier Architecture – Installation & Configuration – Developer Experience • Framework API: New API in v8.5 • Framework UI: Templated .NET Server Controls – Implementing your Service Layer • Demo!
  • 4. what is the 3-tier architecture and are its benefits… THE WHAT’S & WHY’S
  • 5. 1Tier 2Tier 3Tier nTier
  • 6. 1-TIER ARCHITECTURE • Mainframes • Single Machine • Dumb Terminal access • Pro – Simple • Con – Expensive – Tightly coupled
  • 7. 2-TIER ARCHITECTURE • Client – UI, Resources Aqcuisition, Business Rules • Server – Data storage, shared function • Pros – Shared resources • Cons – Managing connections, Ineffeci ent utilization
  • 8. 3-TIER ARCHITECTURE • Presentation Tier – Front End – Display Tier • Middle Tier – Application Server • Data Tier – Storage Server
  • 9.
  • 10. BENEFITS OF THIS ARCHITECTURE • Security • Scalability • Performance • Availability
  • 11. SECURITY • Publically accessible Presentation-Tier has no direct access to Data-Tier • Business Logic contained w/in Middle-Tier isolated • Structure of database hidden from Presentation-Tier
  • 12. SCALABILITY • Each tier independently scales horizontally • Scale Presentation- Tier to handle connections • Free database to handle database transactions
  • 13. PERFORMANCE • Cache requests between FE & MT – Serve data from memory – Minimize network utilization – Reduce MT and DT load • Load Balancing possible at each tier
  • 14. AVAILABILITY • Redundancy of presentation-Tier and Middle-Tier servers for failover • Caching between FE & MT means system continues to serve content if Middle-Tier unavailable
  • 15. what ektron looks like in a 3-tier architecture EKTRON & 3-TIER
  • 16. EKTRON STILL SUPPORT 2-TIER! • You can upgrade from < 8.5 to 8.5 – This is supported and will continue to work – Upgraded site will be 2-Tier – Upgrading to 8.5 does NOT make your site “3-Tier” • You can develop a new site on v8.5 using 2- Tier – Standard approach for building a website • You can develop a new site on v8.5 using 3- Tier
  • 20.
  • 23. GOING DEEPER INTO EKTRON 3-TIER
  • 24. MIDDLE-TIER FOOTPRINT Full Ektron Installation on Middle-Tier: • Ektron DLLs • Ektron Workarea • Ektron Windows Services • Ektron WCF Services • Custom WCF Services
  • 25. PRESENTATION-TIER FOOTPRINT Minimal Footprint on Front-End • Standard ASP.NET Web site • Minimal set of Ektron.DLLs in ~/bin • Configuration files (web.config, unity.config) • Workarea not required
  • 26. DEVELOPER EXPERIENCE Developer Experience on Front-End • Use Framework API & databind • Use Templated Server Controls • No difference in developer experience between the 2-Tier and 3-tier architectures • Same exact code syntax
  • 27. UNITY – DEPENDENCY INJECTION Unity Application Block – Dependency injection framework; Part of MS Enterprise Library • Dynamically register dependencies at runtime • Introduction to Unity http://msdn.microsoft.com/en- us/library/dd203319.aspx • Single unity.config on Front-End servers
  • 29. COMMUNICATION FE-MT: WCF Windows Communication Foundation is • Used to communitcate between the Presentation- Tier and the Middle-Tier. • Implemented as a Unity container
  • 30. CACHING LAYER The Caching Layer • Caches all data retrieved from the middle-tier in memory on the servers in the presentation-tier • Caching is implemented as another Unity container • Is configured within the Unity config
  • 31.
  • 32. getting things up & running in a 3-tier environment … INSTALLATION & CONFIGURATION
  • 33. BASIC INSTALLATION Middle Tier & Data Tier • Perform full Ektron installation on the Middle- Tier / Data tier server using CMS400Basev85.exe (no difference) – Note: In 8.5 RC installation should be performed on the website root – As part of the installation, the 3TierMin site will be installed to: C:Program Files (x86)EktronCMS400v85startersites3TierMinContent
  • 34. INSTALLATION Presentation-Tier 1. From Middle-Tier, copy folder C:Program Files (x86)EktronCMS400v85startersites3TierMinCo ntent to your web directory on the Presentation Tier server – This folder contains elements for a minimal-footprint front-end site, containing subset of DLLs from Middle-Tier to Presentation-Tier server • Which DLLs you need depends on which features you use • This documentation describes which DLLs are required http://bit.ly/ektron-3tier-installation-doc • Note: not an issue to “just grab them all” -- even though you wont need them all -- and pair it down later 2. Open IIS on Presentation Tier server and make this folder a Web Site
  • 35. INSTALLATION (CONT’D) 3. Update web.config & point to Middle-Tier <appSettings> <add key="ek_ServicesPath" value="http://[MT]/workarea/services/"/> </appSettings>
  • 36. INSTALLATION (CONT’D) 4. Browse to http://[FE]/default.aspx – You should be able to log into your front-end using any account defined within Ektron (Admin/Admin, etc). 5. Deploy your own templates and code to the Presentation-Tier That’s it! … now let’s walk through the code footprint on the Front-End
  • 37. development options in a 3-tier environment DEVELOPING 3-TIER
  • 38. TWO APPROACHES TO DEVELOPING IN 3-TIER 1. Use Framework APIs and/or Templated Server Controls directly on the Presentation-Tier Server – Pros: Simpler (previous installation, ready to go) – Cons: Chattiness of API calls over wire 2. Designing your own Service Layer on the Middle- Tier, consuming those services on the Presentation- Tier Server – Pros: • Designing a Service Oriented Architecture (SOA) • Leveraging Middle-Tier for its strength – Con: A little more complex to set up
  • 39. APPROACH #2: DEVELOPING USING APIS • On the Front-End, use the APIs directly
  • 40. FREQUENTLY ASKED QUESTIONS What about … – legacy APIs? – legacy Server Controls? – PageBuilder? – Widgets? – eSync? • data? code? • documents, images, etc.?
  • 41. Questions? Bill Cava • Chief Evangelist, Ektron • http://twitter.com/billcava • bill.cava@ektron.com