SlideShare une entreprise Scribd logo
1  sur  26
Migrating Java Applications from Weblogic to vFabric“Cloud Application Platform – Start your Journey to PaaS”
Migrating from Weblogic to vFabric - Opening Remarks Cloud Application Platform – Start your journey to PaaS Migration has real business benefits Increased agility and reliability Reduced deployment downtimes Scales to future growth Reduced Cap-Ex and Op-Ex costs Reduced Hardware Footprint Highly adaptive to business and customer needs
Migrating Java Applications from Weblogic to vFabric  Agenda Rationale for migration Steps in migration Taking advantage of the new platform Concluding Remarks
Problem Context Enterprise custom Java applications are expensive and complex to build, deploy, scale and manage Typical problems: Development Obsolete toolkits and no clear choice of toolkit (Struts, anyone?) No fully integrated stack resulting in lack of control and risk  Operational Lack of support for developer-friendly tools Lack of industry and community Industry Shortage of skill sets Fragmented market space leading to uncertainty. VMware problem: Higher % of downtime leading to poor customer satisfaction; and high cost of development and operations
More details on the VMware problem Business expects agility, reliability and lower costs… … but I have performance, instability, manageability monitoring and analyzing issues with current platform! We used to own the servers running our apps. Now we don’t know if the apps can get the resources they need to run well. We’ve spent a fortune on monitoring tools. Why are our end users still the first to know about performance problems and why do they take so long to solve? VMware IT … what is needed is a scalable, robust, and manageable platform that is built on modern tools and technologies! faster service execution at lower cost…
Why migrate? General solution to our problem: Migrate to a new platform. Constraints:  Retain functionality Address perceived issues Creating a business case Due to platform issues there is a high cost for  downtimes  ad-hoc fixing of problems  not having the right monitoring tools development with a disparate technology stack.  hardware costs to scale with complex resources intensive application servers Migration Costs new platform creation code migration cost of testing
Sample Business case template Migration of technology stacks is an IT ask Challenge: Creating a business case  with quantitative and qualitative benefits/outcomes with supporting data and a cost model with the projected cost savings.  Core value proposition: Increase the availability and resiliency and reduce development and operational costs. Our Business case: Quantitative: Reduce ongoing development and operational costs by 15% Reduce hardware costs by 30% Reduce downtime support requests by 25% Reduce software costs by 40% Qualitative: Improve reliability, availability and scale of customer-facing portals  Standardize technology stack with a full fledged integrated platform Increase agility, productivity and reusability Embrace open source with abundant skill-set availability Strategic: Cloud Application Platform – Start the journey to the PaaS
Steps in migration Defining the scope Defining the new target platform Defining a development platform Steps in porting the application Pattern translations Compatibility library creation Testing the application Creating standard deployment Run books, training of Ops resources Enhancing the platform Operational enhancements Embark the PaaS journey
Defining the scope of migration Factors to consider Changes in architecture? Functionality changes? Code refactoring? Elimination of dead code, general clean up Modularization to support future code changes Code changes to follow the new patterns for the new platform Fixing known bugs & metrics for code quality Typical choices: Migrate the code as is: minimal changes As part of migration make changes that address current issues Guideline: Use business case to create a migration strategy  Define phases and success criteria  Guided by business case and visibility requirements
Our scope Summary: We had to change the architecture to support the business case, and the code to support those architecture changes; and code changes to Spring paradigm such as IoC. No new functionality.
Defining the new target platform General framework Which components of vFabric to use? Which third party (legacy components) to integrate? Other improvement choices Caching (Gemfire) Monitoring and Metrics (Hyperic) Operational improvements: vCloud director, vCO What we did: Full fledged vFabric stack to unlock the full potential Spring WS for the back-end service Integrations Spring Security for securing the apps Optimized application performance using Gemfire Stability and availability with fault-tolerant cluster deployment on light-weight tc Servers Proactive monitoring, complete diagnostics and mgmt using Hyperic Application workloads provisioning and mgmt using vCloud Director and vCO
New Target platform Target Custom Web Applications Platform Presentation – AJAX, CSS, JQuery Frameworks & Tools Portals/Widgets – Spring Web MVC, Spring Web Flow, Spring Framework 3.0 Web Service Integration – Spring WS Security – Spring Security Persistence – Hibernate Audit/Logging - Apache LDAP – Spring LDAP Caching – Gemfire Alert Mgmt - Custom Common Application Services Platform Services GemFire Apache Web Server Spring tc App Server Hyperic Cloud Infrastructure and Management Cloud Application Platform – Start journey to PaaS
Defining a development platform Using a virtualized devenv STS and other tools Local installations of vFabric tc Server, Gemfire, Hyperic  Processes for setting up and self-provisioning the virtual environments What we did: Used primarily STS as the development IDE, Maven build manager, Bamboo build server Sonar as the development quality management platform Automated self-provisioning of fully configured Dev IDE (STS) and deployment environments (vFabric tc Server, Gemfire, Hyperic) using vCloud Director and vCenter Orchestrator.
Architectural changes
Porting the application What we did… ,[object Object]
Configuration changes to move to vFabrictc Server – Cloud App Platform
WL portal code changed to Spring MVC
Security code (Authentication and Authz) changed to Spring Security
Pattern based refactoring
Migration of the code to configuration (eg: Spring Security)
Inversion of control paradigm to modularize the code – mostly addressing the low hanging fruit.What we found… ,[object Object]
Weblogic modified Beehive was being used for MVC layer.
Weblogic netuix tag libraries were used on the portal
Weblogic Personalization was being used for AuthN and AuthZ
Non-scalable practices:
RMI was used for Integration Layer

Contenu connexe

Tendances

Integrated lifecycle management with rommana
Integrated lifecycle management with rommanaIntegrated lifecycle management with rommana
Integrated lifecycle management with rommanaRommana Software
 
VMworld 2013: Practicing What We Preach: VMware IT on vCenter Operations Mana...
VMworld 2013: Practicing What We Preach: VMware IT on vCenter Operations Mana...VMworld 2013: Practicing What We Preach: VMware IT on vCenter Operations Mana...
VMworld 2013: Practicing What We Preach: VMware IT on vCenter Operations Mana...VMworld
 
Datasheet subversionpluginforrd
Datasheet subversionpluginforrdDatasheet subversionpluginforrd
Datasheet subversionpluginforrdMidVision
 
Measuring DevOps Impact to Boost Effectiveness
Measuring DevOps Impact to Boost EffectivenessMeasuring DevOps Impact to Boost Effectiveness
Measuring DevOps Impact to Boost EffectivenessVMware Tanzu
 
Cloud_Testing_The_future_of_softwareV1.04
Cloud_Testing_The_future_of_softwareV1.04Cloud_Testing_The_future_of_softwareV1.04
Cloud_Testing_The_future_of_softwareV1.04Mrityunjaya Hikkalgutti
 
Datasheet datapowerpluginforrd
Datasheet datapowerpluginforrdDatasheet datapowerpluginforrd
Datasheet datapowerpluginforrdMidVision
 
Datasheet agentpluginforrd
Datasheet agentpluginforrdDatasheet agentpluginforrd
Datasheet agentpluginforrdMidVision
 
VMworld 2013: Moving Enterprise Application Dev/Test to VMware’s Internal Pri...
VMworld 2013: Moving Enterprise Application Dev/Test to VMware’s Internal Pri...VMworld 2013: Moving Enterprise Application Dev/Test to VMware’s Internal Pri...
VMworld 2013: Moving Enterprise Application Dev/Test to VMware’s Internal Pri...VMworld
 
Enterprise QA and Application Testing Services
Enterprise QA and Application Testing ServicesEnterprise QA and Application Testing Services
Enterprise QA and Application Testing ServicesHemang Rindani
 
6.11.2013 - 2013 - Continuous Delivery - Testing for Agile Through Continuo...
6.11.2013   - 2013 - Continuous Delivery - Testing for Agile Through Continuo...6.11.2013   - 2013 - Continuous Delivery - Testing for Agile Through Continuo...
6.11.2013 - 2013 - Continuous Delivery - Testing for Agile Through Continuo...IBM Rational
 
Datasheet apachepluginforrd
Datasheet apachepluginforrdDatasheet apachepluginforrd
Datasheet apachepluginforrdMidVision
 
Datasheet cruisecontrolpluginforrd
Datasheet cruisecontrolpluginforrdDatasheet cruisecontrolpluginforrd
Datasheet cruisecontrolpluginforrdMidVision
 
Datasheet scriptspluginforrd
Datasheet scriptspluginforrdDatasheet scriptspluginforrd
Datasheet scriptspluginforrdMidVision
 
Microsoft ALM Platform Overview
Microsoft ALM Platform OverviewMicrosoft ALM Platform Overview
Microsoft ALM Platform OverviewSteve Lange
 
Neotys PAC 2018 - Ramya Ramalinga Moorthy
Neotys PAC 2018 - Ramya Ramalinga MoorthyNeotys PAC 2018 - Ramya Ramalinga Moorthy
Neotys PAC 2018 - Ramya Ramalinga MoorthyNeotys_Partner
 
Pure Systems Patterns of Expertise - John Kaemmerer and Gerry Kovan, 11th Sep...
Pure Systems Patterns of Expertise - John Kaemmerer and Gerry Kovan, 11th Sep...Pure Systems Patterns of Expertise - John Kaemmerer and Gerry Kovan, 11th Sep...
Pure Systems Patterns of Expertise - John Kaemmerer and Gerry Kovan, 11th Sep...IBM Systems UKI
 

Tendances (20)

Integrated lifecycle management with rommana
Integrated lifecycle management with rommanaIntegrated lifecycle management with rommana
Integrated lifecycle management with rommana
 
VMworld 2013: Practicing What We Preach: VMware IT on vCenter Operations Mana...
VMworld 2013: Practicing What We Preach: VMware IT on vCenter Operations Mana...VMworld 2013: Practicing What We Preach: VMware IT on vCenter Operations Mana...
VMworld 2013: Practicing What We Preach: VMware IT on vCenter Operations Mana...
 
Datasheet subversionpluginforrd
Datasheet subversionpluginforrdDatasheet subversionpluginforrd
Datasheet subversionpluginforrd
 
Measuring DevOps Impact to Boost Effectiveness
Measuring DevOps Impact to Boost EffectivenessMeasuring DevOps Impact to Boost Effectiveness
Measuring DevOps Impact to Boost Effectiveness
 
Cloud_Testing_The_future_of_softwareV1.04
Cloud_Testing_The_future_of_softwareV1.04Cloud_Testing_The_future_of_softwareV1.04
Cloud_Testing_The_future_of_softwareV1.04
 
Amq Overview Continuous Quality Assurance
Amq Overview Continuous Quality AssuranceAmq Overview Continuous Quality Assurance
Amq Overview Continuous Quality Assurance
 
Datasheet datapowerpluginforrd
Datasheet datapowerpluginforrdDatasheet datapowerpluginforrd
Datasheet datapowerpluginforrd
 
Datasheet agentpluginforrd
Datasheet agentpluginforrdDatasheet agentpluginforrd
Datasheet agentpluginforrd
 
VMworld 2013: Moving Enterprise Application Dev/Test to VMware’s Internal Pri...
VMworld 2013: Moving Enterprise Application Dev/Test to VMware’s Internal Pri...VMworld 2013: Moving Enterprise Application Dev/Test to VMware’s Internal Pri...
VMworld 2013: Moving Enterprise Application Dev/Test to VMware’s Internal Pri...
 
Enterprise QA and Application Testing Services
Enterprise QA and Application Testing ServicesEnterprise QA and Application Testing Services
Enterprise QA and Application Testing Services
 
6.11.2013 - 2013 - Continuous Delivery - Testing for Agile Through Continuo...
6.11.2013   - 2013 - Continuous Delivery - Testing for Agile Through Continuo...6.11.2013   - 2013 - Continuous Delivery - Testing for Agile Through Continuo...
6.11.2013 - 2013 - Continuous Delivery - Testing for Agile Through Continuo...
 
Operational Management Challenges for Converged Infrastructure
Operational Management Challenges for Converged Infrastructure Operational Management Challenges for Converged Infrastructure
Operational Management Challenges for Converged Infrastructure
 
Datasheet apachepluginforrd
Datasheet apachepluginforrdDatasheet apachepluginforrd
Datasheet apachepluginforrd
 
Datasheet cruisecontrolpluginforrd
Datasheet cruisecontrolpluginforrdDatasheet cruisecontrolpluginforrd
Datasheet cruisecontrolpluginforrd
 
Cloud Testing Framework
Cloud Testing FrameworkCloud Testing Framework
Cloud Testing Framework
 
Datasheet scriptspluginforrd
Datasheet scriptspluginforrdDatasheet scriptspluginforrd
Datasheet scriptspluginforrd
 
Microsoft ALM Platform Overview
Microsoft ALM Platform OverviewMicrosoft ALM Platform Overview
Microsoft ALM Platform Overview
 
Neotys PAC 2018 - Ramya Ramalinga Moorthy
Neotys PAC 2018 - Ramya Ramalinga MoorthyNeotys PAC 2018 - Ramya Ramalinga Moorthy
Neotys PAC 2018 - Ramya Ramalinga Moorthy
 
Shalini Sharma Resume
Shalini Sharma ResumeShalini Sharma Resume
Shalini Sharma Resume
 
Pure Systems Patterns of Expertise - John Kaemmerer and Gerry Kovan, 11th Sep...
Pure Systems Patterns of Expertise - John Kaemmerer and Gerry Kovan, 11th Sep...Pure Systems Patterns of Expertise - John Kaemmerer and Gerry Kovan, 11th Sep...
Pure Systems Patterns of Expertise - John Kaemmerer and Gerry Kovan, 11th Sep...
 

Similaire à Migration from Weblogic to vFabric Cloud App Platform

Cap2194 migration from weblogic to v fabric - cloud application platform
Cap2194  migration from weblogic to v fabric - cloud application platformCap2194  migration from weblogic to v fabric - cloud application platform
Cap2194 migration from weblogic to v fabric - cloud application platformRamarao Kanneganti
 
VMworld 2013: How to Replace Websphere Application Server (WAS) with TCserver
VMworld 2013: How to Replace Websphere Application Server (WAS) with TCserver VMworld 2013: How to Replace Websphere Application Server (WAS) with TCserver
VMworld 2013: How to Replace Websphere Application Server (WAS) with TCserver VMworld
 
CSC AWS re:Invent Enterprise DevOps session
CSC AWS re:Invent Enterprise DevOps sessionCSC AWS re:Invent Enterprise DevOps session
CSC AWS re:Invent Enterprise DevOps sessionTom Laszewski
 
Gain Insights, Make Decisions, and Take Action Across a Streamlined and Autom...
Gain Insights, Make Decisions, and Take Action Across a Streamlined and Autom...Gain Insights, Make Decisions, and Take Action Across a Streamlined and Autom...
Gain Insights, Make Decisions, and Take Action Across a Streamlined and Autom...Arraya Solutions
 
vCloud Automation Center and Pivotal Cloud Foundry – Better PaaS Solution (VM...
vCloud Automation Center and Pivotal Cloud Foundry – Better PaaS Solution (VM...vCloud Automation Center and Pivotal Cloud Foundry – Better PaaS Solution (VM...
vCloud Automation Center and Pivotal Cloud Foundry – Better PaaS Solution (VM...VMware Tanzu
 
IT Modernization For Process Modernization
IT Modernization For Process ModernizationIT Modernization For Process Modernization
IT Modernization For Process ModernizationDheeraj Remella
 
vCAC and VMware SDE
vCAC and VMware SDEvCAC and VMware SDE
vCAC and VMware SDEVMUG IT
 
Modernizing Testing as Apps Re-Architect
Modernizing Testing as Apps Re-ArchitectModernizing Testing as Apps Re-Architect
Modernizing Testing as Apps Re-ArchitectDevOps.com
 
VMworld 2013: VMware and Puppet: How to Plan, Deploy & Manage Modern Applicat...
VMworld 2013: VMware and Puppet: How to Plan, Deploy & Manage Modern Applicat...VMworld 2013: VMware and Puppet: How to Plan, Deploy & Manage Modern Applicat...
VMworld 2013: VMware and Puppet: How to Plan, Deploy & Manage Modern Applicat...VMworld
 
(ENT210) Accelerating Business Innovation with DevOps on AWS | AWS re:Invent ...
(ENT210) Accelerating Business Innovation with DevOps on AWS | AWS re:Invent ...(ENT210) Accelerating Business Innovation with DevOps on AWS | AWS re:Invent ...
(ENT210) Accelerating Business Innovation with DevOps on AWS | AWS re:Invent ...Amazon Web Services
 
Presentation business critical applications in a virtual env
Presentation   business critical applications in a virtual envPresentation   business critical applications in a virtual env
Presentation business critical applications in a virtual envsolarisyourep
 
Presentation business critical applications in a virtual env
Presentation   business critical applications in a virtual envPresentation   business critical applications in a virtual env
Presentation business critical applications in a virtual envxKinAnx
 
DevOps and Application Delivery for Hybrid Cloud - DevOpsSummit session
DevOps and Application Delivery for Hybrid Cloud  - DevOpsSummit sessionDevOps and Application Delivery for Hybrid Cloud  - DevOpsSummit session
DevOps and Application Delivery for Hybrid Cloud - DevOpsSummit sessionSanjeev Sharma
 
vFabric for i ISVs and MSPs
vFabric for i ISVs and MSPsvFabric for i ISVs and MSPs
vFabric for i ISVs and MSPsVMware vFabric
 
Simplify and Scale Enterprise Spring Apps in the Cloud | March 23, 2023
Simplify and Scale Enterprise Spring Apps in the Cloud | March 23, 2023Simplify and Scale Enterprise Spring Apps in the Cloud | March 23, 2023
Simplify and Scale Enterprise Spring Apps in the Cloud | March 23, 2023VMware Tanzu
 
Application Modernization with PKS / Kubernetes
Application Modernization with PKS / KubernetesApplication Modernization with PKS / Kubernetes
Application Modernization with PKS / KubernetesPaul Czarkowski
 
Aberdeen Oil & Gas Event - Cloud Adoption Framework
Aberdeen Oil & Gas Event - Cloud Adoption FrameworkAberdeen Oil & Gas Event - Cloud Adoption Framework
Aberdeen Oil & Gas Event - Cloud Adoption FrameworkAmazon Web Services
 
Java Application Modernization Patterns and Stories from the IBM Garage
Java Application Modernization Patterns and Stories from the IBM GarageJava Application Modernization Patterns and Stories from the IBM Garage
Java Application Modernization Patterns and Stories from the IBM GarageHolly Cummins
 
VMworld 2013: Architecting the Software-Defined Data Center
VMworld 2013: Architecting the Software-Defined Data Center VMworld 2013: Architecting the Software-Defined Data Center
VMworld 2013: Architecting the Software-Defined Data Center VMworld
 

Similaire à Migration from Weblogic to vFabric Cloud App Platform (20)

Cap2194 migration from weblogic to v fabric - cloud application platform
Cap2194  migration from weblogic to v fabric - cloud application platformCap2194  migration from weblogic to v fabric - cloud application platform
Cap2194 migration from weblogic to v fabric - cloud application platform
 
VMworld 2013: How to Replace Websphere Application Server (WAS) with TCserver
VMworld 2013: How to Replace Websphere Application Server (WAS) with TCserver VMworld 2013: How to Replace Websphere Application Server (WAS) with TCserver
VMworld 2013: How to Replace Websphere Application Server (WAS) with TCserver
 
CSC AWS re:Invent Enterprise DevOps session
CSC AWS re:Invent Enterprise DevOps sessionCSC AWS re:Invent Enterprise DevOps session
CSC AWS re:Invent Enterprise DevOps session
 
Gain Insights, Make Decisions, and Take Action Across a Streamlined and Autom...
Gain Insights, Make Decisions, and Take Action Across a Streamlined and Autom...Gain Insights, Make Decisions, and Take Action Across a Streamlined and Autom...
Gain Insights, Make Decisions, and Take Action Across a Streamlined and Autom...
 
vCloud Automation Center and Pivotal Cloud Foundry – Better PaaS Solution (VM...
vCloud Automation Center and Pivotal Cloud Foundry – Better PaaS Solution (VM...vCloud Automation Center and Pivotal Cloud Foundry – Better PaaS Solution (VM...
vCloud Automation Center and Pivotal Cloud Foundry – Better PaaS Solution (VM...
 
Si so product 1 day technical
Si so product 1 day technicalSi so product 1 day technical
Si so product 1 day technical
 
IT Modernization For Process Modernization
IT Modernization For Process ModernizationIT Modernization For Process Modernization
IT Modernization For Process Modernization
 
vCAC and VMware SDE
vCAC and VMware SDEvCAC and VMware SDE
vCAC and VMware SDE
 
Modernizing Testing as Apps Re-Architect
Modernizing Testing as Apps Re-ArchitectModernizing Testing as Apps Re-Architect
Modernizing Testing as Apps Re-Architect
 
VMworld 2013: VMware and Puppet: How to Plan, Deploy & Manage Modern Applicat...
VMworld 2013: VMware and Puppet: How to Plan, Deploy & Manage Modern Applicat...VMworld 2013: VMware and Puppet: How to Plan, Deploy & Manage Modern Applicat...
VMworld 2013: VMware and Puppet: How to Plan, Deploy & Manage Modern Applicat...
 
(ENT210) Accelerating Business Innovation with DevOps on AWS | AWS re:Invent ...
(ENT210) Accelerating Business Innovation with DevOps on AWS | AWS re:Invent ...(ENT210) Accelerating Business Innovation with DevOps on AWS | AWS re:Invent ...
(ENT210) Accelerating Business Innovation with DevOps on AWS | AWS re:Invent ...
 
Presentation business critical applications in a virtual env
Presentation   business critical applications in a virtual envPresentation   business critical applications in a virtual env
Presentation business critical applications in a virtual env
 
Presentation business critical applications in a virtual env
Presentation   business critical applications in a virtual envPresentation   business critical applications in a virtual env
Presentation business critical applications in a virtual env
 
DevOps and Application Delivery for Hybrid Cloud - DevOpsSummit session
DevOps and Application Delivery for Hybrid Cloud  - DevOpsSummit sessionDevOps and Application Delivery for Hybrid Cloud  - DevOpsSummit session
DevOps and Application Delivery for Hybrid Cloud - DevOpsSummit session
 
vFabric for i ISVs and MSPs
vFabric for i ISVs and MSPsvFabric for i ISVs and MSPs
vFabric for i ISVs and MSPs
 
Simplify and Scale Enterprise Spring Apps in the Cloud | March 23, 2023
Simplify and Scale Enterprise Spring Apps in the Cloud | March 23, 2023Simplify and Scale Enterprise Spring Apps in the Cloud | March 23, 2023
Simplify and Scale Enterprise Spring Apps in the Cloud | March 23, 2023
 
Application Modernization with PKS / Kubernetes
Application Modernization with PKS / KubernetesApplication Modernization with PKS / Kubernetes
Application Modernization with PKS / Kubernetes
 
Aberdeen Oil & Gas Event - Cloud Adoption Framework
Aberdeen Oil & Gas Event - Cloud Adoption FrameworkAberdeen Oil & Gas Event - Cloud Adoption Framework
Aberdeen Oil & Gas Event - Cloud Adoption Framework
 
Java Application Modernization Patterns and Stories from the IBM Garage
Java Application Modernization Patterns and Stories from the IBM GarageJava Application Modernization Patterns and Stories from the IBM Garage
Java Application Modernization Patterns and Stories from the IBM Garage
 
VMworld 2013: Architecting the Software-Defined Data Center
VMworld 2013: Architecting the Software-Defined Data Center VMworld 2013: Architecting the Software-Defined Data Center
VMworld 2013: Architecting the Software-Defined Data Center
 

Plus de VMware vFabric

VMware vFabric - CIO Webinar - Al Sargent
VMware vFabric - CIO Webinar - Al SargentVMware vFabric - CIO Webinar - Al Sargent
VMware vFabric - CIO Webinar - Al SargentVMware vFabric
 
Spring One 2012 Presentation – Effective design patterns with NewSQL
Spring One 2012 Presentation – Effective design patterns with NewSQLSpring One 2012 Presentation – Effective design patterns with NewSQL
Spring One 2012 Presentation – Effective design patterns with NewSQLVMware vFabric
 
vFabric - Ideal Platform for SaaS Apps
vFabric - Ideal Platform for SaaS AppsvFabric - Ideal Platform for SaaS Apps
vFabric - Ideal Platform for SaaS AppsVMware vFabric
 
vFabric Data Director - DB as a Service
vFabric Data Director - DB as a ServicevFabric Data Director - DB as a Service
vFabric Data Director - DB as a ServiceVMware vFabric
 
Introduction to Cloud Foundry
Introduction to Cloud FoundryIntroduction to Cloud Foundry
Introduction to Cloud FoundryVMware vFabric
 
Introduction to Cloud Application Platform
Introduction to Cloud Application PlatformIntroduction to Cloud Application Platform
Introduction to Cloud Application PlatformVMware vFabric
 
7 steps to Enterprise PaaS
7 steps to Enterprise PaaS7 steps to Enterprise PaaS
7 steps to Enterprise PaaSVMware vFabric
 
Application management for hybrid cloud
Application management for hybrid cloudApplication management for hybrid cloud
Application management for hybrid cloudVMware vFabric
 
VMware vFabric Data Director for DB as a Service
VMware vFabric Data Director for DB as a ServiceVMware vFabric Data Director for DB as a Service
VMware vFabric Data Director for DB as a ServiceVMware vFabric
 
VMware vFabric gemfire for high performance, resilient distributed apps
VMware vFabric gemfire for high performance, resilient distributed appsVMware vFabric gemfire for high performance, resilient distributed apps
VMware vFabric gemfire for high performance, resilient distributed appsVMware vFabric
 
Data fabric and VMware
Data fabric and VMwareData fabric and VMware
Data fabric and VMwareVMware vFabric
 
vFabric SQLFire for high performance data
vFabric SQLFire for high performance datavFabric SQLFire for high performance data
vFabric SQLFire for high performance dataVMware vFabric
 

Plus de VMware vFabric (13)

VMware vFabric - CIO Webinar - Al Sargent
VMware vFabric - CIO Webinar - Al SargentVMware vFabric - CIO Webinar - Al Sargent
VMware vFabric - CIO Webinar - Al Sargent
 
Spring One 2012 Presentation – Effective design patterns with NewSQL
Spring One 2012 Presentation – Effective design patterns with NewSQLSpring One 2012 Presentation – Effective design patterns with NewSQL
Spring One 2012 Presentation – Effective design patterns with NewSQL
 
vFabric - Ideal Platform for SaaS Apps
vFabric - Ideal Platform for SaaS AppsvFabric - Ideal Platform for SaaS Apps
vFabric - Ideal Platform for SaaS Apps
 
New trends in data
New trends in dataNew trends in data
New trends in data
 
vFabric Data Director - DB as a Service
vFabric Data Director - DB as a ServicevFabric Data Director - DB as a Service
vFabric Data Director - DB as a Service
 
Introduction to Cloud Foundry
Introduction to Cloud FoundryIntroduction to Cloud Foundry
Introduction to Cloud Foundry
 
Introduction to Cloud Application Platform
Introduction to Cloud Application PlatformIntroduction to Cloud Application Platform
Introduction to Cloud Application Platform
 
7 steps to Enterprise PaaS
7 steps to Enterprise PaaS7 steps to Enterprise PaaS
7 steps to Enterprise PaaS
 
Application management for hybrid cloud
Application management for hybrid cloudApplication management for hybrid cloud
Application management for hybrid cloud
 
VMware vFabric Data Director for DB as a Service
VMware vFabric Data Director for DB as a ServiceVMware vFabric Data Director for DB as a Service
VMware vFabric Data Director for DB as a Service
 
VMware vFabric gemfire for high performance, resilient distributed apps
VMware vFabric gemfire for high performance, resilient distributed appsVMware vFabric gemfire for high performance, resilient distributed apps
VMware vFabric gemfire for high performance, resilient distributed apps
 
Data fabric and VMware
Data fabric and VMwareData fabric and VMware
Data fabric and VMware
 
vFabric SQLFire for high performance data
vFabric SQLFire for high performance datavFabric SQLFire for high performance data
vFabric SQLFire for high performance data
 

Dernier

Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyKhushali Kathiriya
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...apidays
 
A Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source MilvusA Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source MilvusZilliz
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxRustici Software
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businesspanagenda
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native ApplicationsWSO2
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfOverkill Security
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 

Dernier (20)

Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
 
A Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source MilvusA Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source Milvus
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 

Migration from Weblogic to vFabric Cloud App Platform

  • 1. Migrating Java Applications from Weblogic to vFabric“Cloud Application Platform – Start your Journey to PaaS”
  • 2. Migrating from Weblogic to vFabric - Opening Remarks Cloud Application Platform – Start your journey to PaaS Migration has real business benefits Increased agility and reliability Reduced deployment downtimes Scales to future growth Reduced Cap-Ex and Op-Ex costs Reduced Hardware Footprint Highly adaptive to business and customer needs
  • 3. Migrating Java Applications from Weblogic to vFabric Agenda Rationale for migration Steps in migration Taking advantage of the new platform Concluding Remarks
  • 4. Problem Context Enterprise custom Java applications are expensive and complex to build, deploy, scale and manage Typical problems: Development Obsolete toolkits and no clear choice of toolkit (Struts, anyone?) No fully integrated stack resulting in lack of control and risk Operational Lack of support for developer-friendly tools Lack of industry and community Industry Shortage of skill sets Fragmented market space leading to uncertainty. VMware problem: Higher % of downtime leading to poor customer satisfaction; and high cost of development and operations
  • 5. More details on the VMware problem Business expects agility, reliability and lower costs… … but I have performance, instability, manageability monitoring and analyzing issues with current platform! We used to own the servers running our apps. Now we don’t know if the apps can get the resources they need to run well. We’ve spent a fortune on monitoring tools. Why are our end users still the first to know about performance problems and why do they take so long to solve? VMware IT … what is needed is a scalable, robust, and manageable platform that is built on modern tools and technologies! faster service execution at lower cost…
  • 6. Why migrate? General solution to our problem: Migrate to a new platform. Constraints: Retain functionality Address perceived issues Creating a business case Due to platform issues there is a high cost for downtimes ad-hoc fixing of problems not having the right monitoring tools development with a disparate technology stack. hardware costs to scale with complex resources intensive application servers Migration Costs new platform creation code migration cost of testing
  • 7. Sample Business case template Migration of technology stacks is an IT ask Challenge: Creating a business case with quantitative and qualitative benefits/outcomes with supporting data and a cost model with the projected cost savings. Core value proposition: Increase the availability and resiliency and reduce development and operational costs. Our Business case: Quantitative: Reduce ongoing development and operational costs by 15% Reduce hardware costs by 30% Reduce downtime support requests by 25% Reduce software costs by 40% Qualitative: Improve reliability, availability and scale of customer-facing portals Standardize technology stack with a full fledged integrated platform Increase agility, productivity and reusability Embrace open source with abundant skill-set availability Strategic: Cloud Application Platform – Start the journey to the PaaS
  • 8. Steps in migration Defining the scope Defining the new target platform Defining a development platform Steps in porting the application Pattern translations Compatibility library creation Testing the application Creating standard deployment Run books, training of Ops resources Enhancing the platform Operational enhancements Embark the PaaS journey
  • 9. Defining the scope of migration Factors to consider Changes in architecture? Functionality changes? Code refactoring? Elimination of dead code, general clean up Modularization to support future code changes Code changes to follow the new patterns for the new platform Fixing known bugs & metrics for code quality Typical choices: Migrate the code as is: minimal changes As part of migration make changes that address current issues Guideline: Use business case to create a migration strategy Define phases and success criteria Guided by business case and visibility requirements
  • 10. Our scope Summary: We had to change the architecture to support the business case, and the code to support those architecture changes; and code changes to Spring paradigm such as IoC. No new functionality.
  • 11. Defining the new target platform General framework Which components of vFabric to use? Which third party (legacy components) to integrate? Other improvement choices Caching (Gemfire) Monitoring and Metrics (Hyperic) Operational improvements: vCloud director, vCO What we did: Full fledged vFabric stack to unlock the full potential Spring WS for the back-end service Integrations Spring Security for securing the apps Optimized application performance using Gemfire Stability and availability with fault-tolerant cluster deployment on light-weight tc Servers Proactive monitoring, complete diagnostics and mgmt using Hyperic Application workloads provisioning and mgmt using vCloud Director and vCO
  • 12. New Target platform Target Custom Web Applications Platform Presentation – AJAX, CSS, JQuery Frameworks & Tools Portals/Widgets – Spring Web MVC, Spring Web Flow, Spring Framework 3.0 Web Service Integration – Spring WS Security – Spring Security Persistence – Hibernate Audit/Logging - Apache LDAP – Spring LDAP Caching – Gemfire Alert Mgmt - Custom Common Application Services Platform Services GemFire Apache Web Server Spring tc App Server Hyperic Cloud Infrastructure and Management Cloud Application Platform – Start journey to PaaS
  • 13. Defining a development platform Using a virtualized devenv STS and other tools Local installations of vFabric tc Server, Gemfire, Hyperic Processes for setting up and self-provisioning the virtual environments What we did: Used primarily STS as the development IDE, Maven build manager, Bamboo build server Sonar as the development quality management platform Automated self-provisioning of fully configured Dev IDE (STS) and deployment environments (vFabric tc Server, Gemfire, Hyperic) using vCloud Director and vCenter Orchestrator.
  • 15.
  • 16. Configuration changes to move to vFabrictc Server – Cloud App Platform
  • 17. WL portal code changed to Spring MVC
  • 18. Security code (Authentication and Authz) changed to Spring Security
  • 20. Migration of the code to configuration (eg: Spring Security)
  • 21.
  • 22. Weblogic modified Beehive was being used for MVC layer.
  • 23. Weblogic netuix tag libraries were used on the portal
  • 24. Weblogic Personalization was being used for AuthN and AuthZ
  • 26. RMI was used for Integration Layer
  • 27.
  • 28. Testing Functional testing: Re-used the existing automated functional tests: 90% of tests are these. Modification to support new front end enhancements (Middleware offline mode is new, tc Server session fail-over is new) Operational testing New performance test cases needed to be added. New test cases to test offline mode vFabric fault-tolerance capability. the Gemfire caching the instance provisioning predictability
  • 29. Deployment Process Pain point addressed: Long downtime for upgrades WL Server deployment times were 20 minutes per node. WL Server startup times were 20 minutes per node. This lead to at-least 40 min added downtime if all portals were to be handled in parallel. Upgraded to Maven 2 Easier management of components Simplified build process New deployment scripts written Ant and Shell scripts for file movement and management Bamboo plugins for release management
  • 30. Deployment Architecture Earlier pain points: 14 portals on 42 VMs. 28 managed nodes and 14 admin nodes Unequal load – rarely used apps also consumed a VM. Lack of proactive Monitoring of Application Server Resources No centralized management; Maintenance and support troubles New deployment architecture Cloud Ready Application Platform – Journey to the PaaS Consolidated to 14 VMs from 42 VMs Critical apps: 4 nodes; rest 2 nodes each + 2 admin/Hyperic nodes + 2 nodes Gemfire App Clusters by SLA, Usage Customer facing critical; Customer facing non-critical; Non web apps; Internal apps
  • 32. Deployment Architecture Easier maintainability Hyperic reduced the need for admin nodes One Admin Cluster used to manage multiple Application Clusters Proactive Monitoring and Alerting Connection Pools, Threads, Thread-Locks, Heap are monitored constantly. Optimized Performance GemFire in-memory data grid improved performance Optimized the JVM heap usage on tc Servers using Gemfire client – server caching Provided tc server session failover Provided a high performance, scalable, and fault tolerant cache solution Provide application level, user level caching
  • 33. Lessons learned Lockdown the scope and avoid functionality scope creek. Be prepared to re-factor code as there is no one-to-one pattern translations for all the patterns Lockdown the target platform components and avoid introducing new components. Define usage patterns of new frameworks, components for faster on-ramp and code quality. Define the criteria and the scope of different caching levels usage for optimal performance. Allocate large amount of time for performance tests as tuning of new platform is an iterative process. Minimize business UAT test time as no functionality change involved and compliment with automated regression testing.
  • 34.
  • 35. Reduced OPEX costs by at-least 15%
  • 36. Savings of $300k+/year with the retirement of Oracle WebLogic licenses=~ 66% App Server VMs =~ 71% App Server Clusters
  • 37.
  • 38. Reduced downtimes by 5 times
  • 39. Improved performance of key transactions by using Gemfire
  • 40. Improved Security using Spring security and Spring LDAP* Data sampled over 3 month averages before and after deployment
  • 41. Concluding Remarks Cloud Application Platform ready – Start the journey to PaaS Migration to new platform need not be an IT exercise – it has real business benefits.  We presented the aspects of the business case. The ROI can substantially be increased by addressing the non-functional aspects of the application supported by the new platform.  We showed how we used increased virtualization, modified deployment architecture, monitoring to reduce the costs and increase the reliability. More business impact can be made by adding flexibility to the application provided by vFabric platform.  We shared some architecture patterns we used to make the application more flexible – JSON support, Spring WS etc. ThankYou!
  • 42. Q & A

Notes de l'éditeur

  1. Most people do not migrate because they see it only as IT optimization. But, with proper business case, they can incorporate aspects that will deliver business benefits as well.
  2. This is the story of how VMware successfully migrated its portals used in customer purchases and support to Springsource stack addressing the technical issues while responding to the needs of business.
  3. Any enterprise that built a complex piece of machinery to support their applications must be feeling the same way. They invested a lot in making a complex setup work, but it cannot keep with the times. The trend is now how organizations are focusing on what brings value to them. It means, cloud and PAAS to address the technical needs, while IT focuses on delivering what is needed for the business.
  4. Original applications - Weblogic portal (Beehive) with local enhancementsIssuesPerformance: was not scaling with increasing number users and amount of data.Difficulty of managing: Adding a feature took long time to add; cleanup; un-deploy and deploy resulting in longer downtime.Application instability : Frequent reboots were requiredDifficulty of analysis: No built in application monitoring; external monitoring did not provide internal details or proactive alerts. What was needed:A scalable, robust, and manageable platform that is built on modern tools and technologies.
  5. There was a debate on functionality improvement. We resolved it by saying: We want to enable resilient architecture – even if the components went down the users should be able to conduct their business.Whatever we need to change from functionality perspective to achieve the above goal, we will do.Any cleanup that is easy and supports the IT goals (HA, maintainability etc), we will do.Other functionality changes will be entertained only on the need basis (In general, no changes).
  6. The business case template includes:ROI realization: When, what will change and how much it will save.Assumptions: What the current assumptions about the cost of downtime etc.Eventually, it provides a framework for us to create a plan and a time table.
  7. These are standard steps. The main interesting part is lot of enhancements we can bring to operations, once we moved to the platform.
  8. One major Constraint / requirement was, all of the user bookmarked URLs should work after migration with out any change. For example: On Weblogic, Login page was www.vmware.com/mysupport/login.portalThe same URL should work on Spring TcServer as well.
  9. We went with the standard reference platform of spring source. It was easy; it was proven; and it supported our needs.
  10. Why we did these changes:Moving to standardization and modern technologies: RMI is tough to debug and support.Reducing the tight coupling: Even if some components (some of those are not in our hands – they have different downtimes and different availability schedules) are down, the application still works.Non-functional enhancements: Caching to use Gemfire. Deployment changes: Cleaning up earlier disparate standards as well as introducing new standardized tools.
  11. We could have considered emulation library as well, but in the long run, it is more painful than it is worth. We are not thinking this code as legacy – it is a living code and as such deserves no such short term fixes.
  12. Pattern – Usage of “Member-Variables” in ControllersvFabric: Convert to Session variables in Spring MVC.@SessionAttributes(“sessionAttributeName”)public class MySessionVarClass {... ... }void myRequestMappingMethod(@ModelAttribute(“sessionAttributeName”) MySessionVarClassmsvc) {}Pattern – Persisting Application Logging to DatabaseDue to the use of Multiple logging frameworks, a multiple implementation were usedStandardized on Log4J.Used enhanced version Log4JDBAppender.Pattern – JSON SupportWL – no OOB support for JSON Serialization and DeserializationJSPs were used for de-serializing to JSON.Define object model on the Controller layer, and de-serialize them to JSON leveraging Spring-Jackson JSON Libraries.public @ResponseBodyOutputClasssaveSomething(@RequestBodySomeInputClass input) { //Little bit of logic to call Service Layer .. .. .. //Some more logic to convert service response to UI Object return output;}Pattern – Controller AnnotationsBeehive Pageflow Annotations converted to Spring MVC RequestMappingsNetuix tag libraries converted to MVC and JSTL Tag libraries.Pattern – AuthorizationWL – Container Authorization was leveragedSpring Security with Configuration based Access control and Role-User MappingPattern – Exception and Error HandlingWL – no common mechanism for error handlingClassify exceptions into Business and System Exceptions and populate appropriate codes. Use Spring MVC Exception Resolver to display appropriate error messages / pages
  13. Maven 1 lacked support for JSP tagsLeverage Project Lifecycles – QA is interested in running automated integration tests only!Transitive dependencies – Large number of Open Source Libraries were used – difficult to manage with Maven1So, we migrated to maven2
  14. The VMware Cloud Application Platform combines the Spring Framework for building new applications together with a complete set of Application Platform Services required to run and manage these applications.[CLICK] Spring Framework: Spring is a comprehensive family of developer frameworks and tools that enable developers build innovative new applications in a familiar and productive way while enabling the choice of where to run those applications, whether inside the datacenter or on private, hybrid, or public clouds. Spring enables developers to create applications that: Provide a rich, modern user experience across a range of platforms, browsers and personal devices Integrate applications using proven Enterprise Application Integration patterns, including batch processing Access data in a wide range of structured and unstructured formats Leverage popular social media services and cloud service API’s[CLICK] VMware vFabric: VMware vFabric is a comprehensive family of application services uniquely optimized for cloud computing including lightweight application server, global data management, cloud-ready messaging, dynamic load balancing and application performance management. [CLICK] The products behind these services include: Lightweight Application Server: tc Server, an enterprise version of Apache Tomcat, is optimized for Spring and VMware vSphere and can be instantaneously provisioned to meet the scalability needs of modern applications Data Management Services: GemFire speeds application performance and eliminates database bottlenecks by providing real-time access to globally distributed data Cloud-ready Messaging Service: RabbitMQ facilitates communications between applications inside and outside the datacenter Dynamic Load Balancer: ERS, an enterprise version Apache web server, ensures optimal performance by distributing and balancing application load Application Performance Management: Hyperic enables proactive performance management through transparent visibility into modern applications deployed across physical, virtual, and cloud environments Policy-Driven Automation: Foundry is the tentative name for a new offering still under development that is focused on policy-based automation of application and platform configuration and provisioning tasks.