• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Si so product 1 day technical
 

Si so product 1 day technical

on

  • 1,343 views

 

Statistics

Views

Total Views
1,343
Views on SlideShare
1,341
Embed Views
2

Actions

Likes
0
Downloads
27
Comments
0

1 Embed 2

http://www.techgig.com 2

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment
  • This presentation is focused primarily on application infrastructure for the cloud generation of applications.Our agenda, or roadmap if you will, will cover three topics:[CLICK] Briefly cover VMware’s vision for the next decade of information technology and discussing how VMware is taking a uniquely comprehensive approach to enabling the next major era of IT across three major layers:Cloud Infrastructure, Cloud Application Platform, and End User Computing[CLICK] We will then drill down into the cloud application platform and the key drivers we are seeing that are driving requirements in this space[CLICK] And then we will drill down specifically into VMware vFabric, VMware’s cloud application platform solution that: Is comprised of Spring and new VMware vFabric product family: Modern application framework and integrated platform services Maximizes speed and innovation: enabling customers to bring new apps to market faster and with less complexity Extends the benefits of virtualization to the application: Provides an evolutionary path to the cloud whether private, public or hybrid
  • In a traditional application development approach, a line of business decides they have need of some new capability that will improve business operations, revenue, … whatever. They commission the construction of a new system, and at this time, the LOB IT group will then look at the budget they have, scope the work, then begin procuring hardware and software for at least the development environment, and, if they are forward thinking, will commission the production and staging environments as well so that they can cut down on the months of work involved in physically provisioning hardware, network, security, software packages, databases, etc. In this example, the customer is looking to build a system that requires 11 servers that deliver appropriate capabilities required by the application. The physical approach is costly, in that this environment is replicated in dev/stage/and production, it is very costly. If you are the development lead on this project, and your job depends on your ability to deliver an application that performs and never fails, how much hardware/software/bandwidth, etc. are you going to buy? Answer: All of it! You will look at the budget you are given, and you will overprovision everything that you can to make sure that nothing breaks, there is redundency at every layer, etc. This is why customers have spent so much on heavy-weight infrastructure! It is costly, but I have way too much storage, way too much disc, way too much RAM, CPU, fans, bandwidth, etc. However, it is completely static. If you do run out of capacity in this environment, can you save the environment from denying requests by dynamically scaling? No. If you decide that IBM will give you a better price on application infrastructure than Oracle will, can you easily pick up your application and run it in a new environment? Not using traditional development approaches. If you dedicate yourself to a traditional vendor’s tools and development approaches, then you will find yourself bound to a particular application stack. So, what VMware is driving towards is a more portable and productive development paradigm that can not only deploy to that traditional IT approach, but can effectively deploy to an internal cloud of server resources, or a public or hybrid cloud. This paradigm is Spring. When developers build applications using Spring, then they can deploy their code almost anywhere. You can run Spring in Oracle, in IBM, in RedHat, in open-source, even in .Net. As opposed to the previous approach, CIOs can make strategic decisions about deployment platform changes without overwhelming cost, as Spring can literally be lifted from one platform, and dropped into another. This portability allows for transparency of the underlying implementation and allows for a new kind of infrastructure.Remember how overprovisioned the old way of doing business was? When the CIO is looking at cloud, your requirements for infrastructure change. You are no longer interested in overprovisioning, you are focused on optimal utilization of the available resources. That means, you are no longer interested in deploying gigs of infrastructure when only megs are needed. Leveraging virtualization, and this lighter weight approach to infrastructure, IT can move more towards self-service provisioning by requesting sets of virtual machines to run tests, to spin up development environments and then give the resources back to the pool for someone else. What does this do to cost when several development shops leverage the same set of hardware rather than build out distinct environments? What does that do to cost? What does that mean in terms of faster time to market? I can now look to dynamically scale as provisioning virtual resources is trivial compared to physical.Questions?
  • This Use Case is intended to illustrate the kind of applications and platform behavior that VMware’s Cloud Application Platform addresses:The travel company has rolled out its new Hotel Booking application In order to drive up bookings, they are running a special promotion that will only be available for 7 hours – from 9am to 4pm. At 9 am, buyers start booking rooms at the special promotional rates. If you don’t have a system to automatically handle increasing usage, your app will fall over and revenue will be impeded. However, if you’re using VMware’s Cloud Application Platform, you can have the information necessary to automatically scale up application instances, meet the usage spikes, and enable the company to meet its revenue goals. Conversely, as usage declines towards the end of the day, you can set the appropriate policy to automatically scale down app instances, freeing up virtual infrastructure for other needs, such as an Order Tracking application. Since transparent insight into performance is able to gathered across the application and underlying infrastructure platform, you have the flexibility to set policy at whatever level of your application that is needed.
  • VMware’s Cloud Application Platform addresses the needs of BOTH developers and operations by combining market-leading developer frameworks and tools with integrated application platform services to deliver speed, portability, and optimized use of cloud resources.The Modern Frameworks and Tools enable developers to build innovative new applications in a familiar and productive way while enabling the choice of where to run those applications (inside the datacenter or on private, hybrid, or public clouds). The Modern Platform Services are much more agile and designed for virtualization. Unlike traditional middleware platforms, these platform services provide lightweight footprints that make the best use of the underlying virtual infrastructure platform as well as enable businesses to bring applications to market faster and with less complexity: new applications can be delivered in days or weeks rather than months or years, and at scale.[CLICK]These two layers in our cloud application platform are Spring family of frameworks and tools and the VMware vFabric family of platform services. Let’s take a look at these in a little more detail…
  • http://www.indeed.com/jobtrends?q=websphere+and+java+and+developer%2C+weblogic+and+java+and+developer%2C+spring+and+java+and+developer&l=Gartner: Spring: Past, Present and Future, 15 June 2009Evans Data Corporation, Spring Usage Study, November 2008
  • Spring is bringing a modern application architecture to a number of traditional enterprise applications today. This example shows what many application developers within the Spring community are doing to successfully architect new Web 2.0 applications that go well beyond the limits of today’s enterprise portal technologies.Many start on their journey by adopting the Grails. Grails delivers a new age of Java web application productivity, enabling Web 2.0 projects to be delivered in weeks instead of months. Powered by Spring, Grails out-performs the competition. Grails provides dynamic, agile web development without compromises. In addition to leveraging Spring-powered plugins for Mobile, Security, REST and MVC, Grails provides a object relational mapping tool (GORM) that full leverages the broad SQL and NoSQL data access capabilities of Spring, as well as many other plugins to speed-up the development of your web 2.0 application, such as the new plugin for RabbitMQ.[CLICK]With RabbitMQ serving as a message broker, Grails developers are able to fully re-use back-end, headless enterprise services built in Spring that provide access to a wide-range of internal and external data sources. Caching is often used within this services tier to dramatically improve the performance of these enterprise services, providing a seamless experience for the end-user.[CLICK]With Gemfire serving as an enterprise data fabric, Spring developers are able to provide real-time access to globally distributed data that is kept fully in-synch with existing file systems, databases, and other data systems from across the enterprise. Performance Management for these web 2.0 applications is provided by Hyperic—which can be easily extended with custom user interfaces such as a dashboard for analyzing active web sessions and associated website traffic in real-time.
  • This example shows what many application developers within the Spring community are doing to successfully architect new enterprise integration applications that extend their core Spring expertise towards re-invigorating their enterprise SOA / ESB strategies at a fraction of the cost.Many start on their journey by introducing Spring Integration (SI) into their existing back-end, headless enterprise Spring services. Spring Integration provides an embedded message bus that runs within any Spring application context, where all components are Spring-managed beans. Spring Integration also provides an Application Integration Framework, connecting to other systems with adapters. Both unidirectional channel adapters and bi-directional messaging gateways are provided out of the box with Spring Integration – all completely configurable through simple, intuitive XML namespaces for use within your Spring application.[CLICK]With RabbitMQ serving as a message broker, Spring Integration developers are able to fully distribute their enterprise services as needed across the enterprise. Since changing a Spring Integration Channel from Java-NIO to AMQP, REST, JMS, or even SOAP is as simple as changing the configuration within the Spring Application Context, architects can defer decisions around if/how to distribute their enterprise services until usage patterns and load are clearly understood.[CLICK]Caching is often used within these enterprise services to dramatically improve their performance, and with Gemfire serving as an enterprise data fabric, Spring developers are able to push data to the “edge” of their enterprise integration clouds—providing real-time access to globally distributed data that is kept fully in-synch with existing file systems, databases, and other data systems from across the enterprise. End-to-end management and monitoring of these highly distributed applications is provided by Hyperic—which can be easily extended with custom user interfaces such as a dashboard for monitoring business transactions as they flow through the distributed enterprise integration cloud, complete with custom alerts for those transactions that require exception handling along the way.
  • This example shows what many application developers within the Spring community are doing to successfully architect new distributed, partitioned batch processing applications that extend their core Spring expertise towards modernizing their legacy mainframe applications at a fraction of the cost.Many start on their journey by introducing Spring Batch to orchestrate their existing back-end, headless enterprise Spring services within robust batch applications vital to the daily operations of their enterprise systems. Spring Batch provides reusable functions that are essential in processing large volumes of records, including logging/tracing, transaction management, job processing statistics, job restart, skip, and resource management. Spring Batchalso provides more advanced technical services and features that will enable extremely high-volume and high performance batch jobs through optimization and partitioning techniques. [CLICK]With RabbitMQ serving as a message broker, parallel processing allows multiple batch runs / jobs to run in parallel to minimize the total elapsed batch processing time. This is not a problem as long as the jobs are not sharing the same files, data or index spaces. If they do, this service should be implemented using partitioned data. While caching is often used within batch processing to dramatically improve their performance, the Gemfire data fabric supports the robust partitioning requirements of modern enterprise batch processing applications.[CLICK]Using partitioning allows multiple versions of large batch applications to run concurrently. The purpose of this is to reduce the elapsed time required to process long batch jobs. Processes which can be successfully partitioned are those where the input file can be split and/or the main data set partitioned to allow the application to run against different sets of data. In addition, processes which are partitioned must be designed to only process their assigned data set. A partitioning architecture within Spring Batch can be closely tied to the data partitioning strategy within Gemfire.End-to-end management and monitoring of these enterprise batch processing applications is provided by Hyperic—which can be easily extended with custom user interfaces such as the batch admin tool used for scheduling, monitoring and managing batch jobs, complete with custom alerts for those jobs that require exception handling along the way.
  • VMware’s Cloud Application Platform addresses the needs of BOTH developers and operations by combining market-leading developer frameworks and tools with integrated application platform services to deliver speed, portability, and optimized use of cloud resources.The Modern Frameworks and Tools enable developers to build innovative new applications in a familiar and productive way while enabling the choice of where to run those applications (inside the datacenter or on private, hybrid, or public clouds). The Modern Platform Services are much more agile and designed for virtualization. Unlike traditional middleware platforms, these platform services provide lightweight footprints that make the best use of the underlying virtual infrastructure platform as well as enable businesses to bring applications to market faster and with less complexity: new applications can be delivered in days or weeks rather than months or years, and at scale.[CLICK]These two layers in our cloud application platform are Spring family of frameworks and tools and the VMware vFabric family of platform services. Let’s take a look at these in a little more detail…
  • Now that the Developers have the necessary tools and frameworks to build the new hotel room booking application, they need a platform that can optimally run the application.Modern platforms provide lighter-weight application runtimes, efficiently manage access to large volumes of data, and open up new ways for applications inside and outside the datacenter to communicate through:[CLICK] Lightweight application server that can be instantaneously provisioned and elastically scaled[CLICK] Data management platform that provides real-time access to globally distributed data[CLICK] Cloud-ready messaging service that facilitates communications between applications inside and outside the datacenterMoreover, modern platforms need to be built with performance in mind. By providing transparent visibility into the performance of the applications and underlying infrastructure, new levels of agility can be driven through policy-driven automation and application-level SLAs that drive proactive operational behavior through such services as: [CLICK] Web server / load balancing service that is able to dynamically route requests to an application server for processing[CLICK] Proactive performance management services powered by transparent visibility into applications and infrastructure [CLICK] Policy-based configuration and provisioning services that automate the process of running and managing an application
  • If you remember the picture we spoke about at the beginning, traditional IT has loved heavyweight enterprise application servers. These servers are required to host applications. Traditional JEE servers are very large engines that provide a large number of enterprise capabilities (such as monitoring, management, support, etc.). Because of these command and control capabilities, IT Ops has favored these large engines of enterprises past. On the opposite end of the spectrum is this very lightweight container called Tomcat. Tomcat is free and a fraction of the size of JEE servers. As an example, WebLogic and WebSphere are both around a gig in size. Tomcat is around 9 meg. What VMware is doing with vFabric tcServer is bring all of these enterprise capabilities to the Tomcat application container. So, if you are deploying 1 instance of WebLogic to an HP Superdome, do you care that WebLogic requires a lot of CPU, memory, etc.? Not really. If you are looking to deploy 50 VMs to a more cost effective vBlock, do you want a huge WL instance in every VM? No way. It becomes imperative to drive more efficiency with a light-weight approach, especially if I can still get those enterprise capabilities. This is not even considering price, where tcServer is typically 1/10th the cost with a very strong long term TCO.
  • SpringSource Tool Suite (STS) provides the best way for a developer to get started with Spring or Grails.Since it embeds the developer edition of tc Server, developers get the benefits of using the Spring Insight performance dashboard which automatically instrucments their existing Spring applications and provides deep insight into Spring application performance.STS provides a rich set of visual tools, wizards, code generation tools and tutorials that help a developer create applications very quickly.STS enables developers to deploy their applications onto any Java application server (tc Server, WebLogic, etc), deploy into VMware Workstation and VMware Lab Manager environments, and deploy into cloud platforms such as Cloud Foundry. The key point here is that we provide c consistent developer experience no matter what the deployment target may be (developer desktop, data center, or cloud)
  • http://static.springsource.com/projects/tc-server/6.0/getstart/cgscreateinst.html#cgscreateinst__templatesCreate multiple instances of tc Server with a single set of binaries. This adds the following value for customers:A single installation of tc Server (that uses the SpringSource layout) supports multiple running tc Server instances.One set of binaries means easy upgrades of all the associated instances.Multiple separate instances allows testing of configuration and code changes without touching the production instance.
  • tc Server also enhances its Tomcat compatible core with advanced diagnostics. For example, tc Server supports request level diagnostics that detect slow running requests and identifies the time spent during the request in garbage collection and database operations - frequent causes of slow requests. The diagnostics for database operations provide access to the SQL that triggered the slow request making root cause analysis significantly simpler.
  • Automatically monitors execution times for code that uses @Controller, @Service, @Component, @Transactional, and @Repository stereotyped annotations:Metrics: AverageElapsedExecutionTime(ms), ExecutionsPerSecond, InvocationCount, MaximumExecutionTime(ms), MinimumExecutionTime(ms), ThrownExceptionCount NOTE: @Controller, @Service, and @Component are typically key endpoints within an application worth measuring, and @Repository and @Transactional handle data access and transaction management, both of which are worth measuring. People using these Spring annotations get these metrics collected automatically (no extra work on their part). We also monitor execution times and enable operations to be executed across a range of standard Spring components such as:Platform Transaction Manager:Metrics: CommitsPerSecond, FailedCommits, FailedResumes, FailedRollbacks, FailedSuspends, ResumesPerSecond, RollbacksPerSecond, SuspendsPerSecond Hibernate Session Factory has over 40 metrics exposed including:Metrics: QueryExecutionMaxTime(ms), QueryExecutionCount, QueryCacheHitCount, QueryCacheMissCount, EntityLoadCount, EntityInsertCount, , EntityUpdateCount, EntityDeleteCount, … Default Message Listener Container:Metrics: ActiveConsumers, AverageElapsedTimePerMessage(ms), FailedMessages, MessagesPerSecond, MessagesReceived, ScheduledConsumersOperations: start, stop, set Concurrent Consumers, set Max Concurrent Consumers, scale Max Concurrent Consumers, set Max Messages Per Task, set Idle Task Execution Limit JMS Template:Metrics: AverageElapsedTimePerMessageSent(ms), FailedMessageSends, MessagesSent, MessagesSentPerSecondOperations: set Receive Timeout Java Mail Sender: Metrics: AverageElapsedTimePerMessage(ms), FailedMessages, MessagesSent, MessagesPerSecondOperations: setHost, setPort Thread Pool Task Executor:Metrics: ActiveTasks, LargestPoolSize, PoolSize, QueueSizeOperations: set Core Pool Size, set Max Pool Size, set Keep Alive Seconds
  • Automatically monitors execution times for code that uses @Controller, @Service, @Component, @Transactional, and @Repository stereotyped annotations:Metrics: AverageElapsedExecutionTime(ms), ExecutionsPerSecond, InvocationCount, MaximumExecutionTime(ms), MinimumExecutionTime(ms), ThrownExceptionCount NOTE: @Controller, @Service, and @Component are typically key endpoints within an application worth measuring, and @Repository and @Transactional handle data access and transaction management, both of which are worth measuring. People using these Spring annotations get these metrics collected automatically (no extra work on their part). We also monitor execution times and enable operations to be executed across a range of standard Spring components such as:Platform Transaction Manager:Metrics: CommitsPerSecond, FailedCommits, FailedResumes, FailedRollbacks, FailedSuspends, ResumesPerSecond, RollbacksPerSecond, SuspendsPerSecond Hibernate Session Factory has over 40 metrics exposed including:Metrics: QueryExecutionMaxTime(ms), QueryExecutionCount, QueryCacheHitCount, QueryCacheMissCount, EntityLoadCount, EntityInsertCount, , EntityUpdateCount, EntityDeleteCount, … Default Message Listener Container:Metrics: ActiveConsumers, AverageElapsedTimePerMessage(ms), FailedMessages, MessagesPerSecond, MessagesReceived, ScheduledConsumersOperations: start, stop, set Concurrent Consumers, set Max Concurrent Consumers, scale Max Concurrent Consumers, set Max Messages Per Task, set Idle Task Execution Limit JMS Template:Metrics: AverageElapsedTimePerMessageSent(ms), FailedMessageSends, MessagesSent, MessagesSentPerSecondOperations: set Receive Timeout Java Mail Sender: Metrics: AverageElapsedTimePerMessage(ms), FailedMessages, MessagesSent, MessagesPerSecondOperations: setHost, setPort Thread Pool Task Executor:Metrics: ActiveTasks, LargestPoolSize, PoolSize, QueueSizeOperations: set Core Pool Size, set Max Pool Size, set Keep Alive Seconds
  • http://static.springsource.com/projects/tc-server/6.0/getstart/cgscreateinst.html#cgscreateinst__templatesCreate multiple instances of tc Server with a single set of binaries. This adds the following value for customers:A single installation of tc Server (that uses the SpringSource layout) supports multiple running tc Server instances.One set of binaries means easy upgrades of all the associated instances.Multiple separate instances allows testing of configuration and code changes without touching the production instance.
  • http://static.springsource.com/projects/tc-server/6.0/getstart/cgscreateinst.html#cgscreateinst__templatesCreate multiple instances of tc Server with a single set of binaries. This adds the following value for customers:A single installation of tc Server (that uses the SpringSource layout) supports multiple running tc Server instances.One set of binaries means easy upgrades of all the associated instances.Multiple separate instances allows testing of configuration and code changes without touching the production instance.
  • http://static.springsource.com/projects/tc-server/6.0/getstart/cgscreateinst.html#cgscreateinst__templatesCreate multiple instances of tc Server with a single set of binaries. This adds the following value for customers:A single installation of tc Server (that uses the SpringSource layout) supports multiple running tc Server instances.One set of binaries means easy upgrades of all the associated instances.Multiple separate instances allows testing of configuration and code changes without touching the production instance.
  • Now that the Developers have the necessary tools and frameworks to build the new hotel room booking application, they need a platform that can optimally run the application.Modern platforms provide lighter-weight application runtimes, efficiently manage access to large volumes of data, and open up new ways for applications inside and outside the datacenter to communicate through:[CLICK] Lightweight application server that can be instantaneously provisioned and elastically scaled[CLICK] Data management platform that provides real-time access to globally distributed data[CLICK] Cloud-ready messaging service that facilitates communications between applications inside and outside the datacenterMoreover, modern platforms need to be built with performance in mind. By providing transparent visibility into the performance of the applications and underlying infrastructure, new levels of agility can be driven through policy-driven automation and application-level SLAs that drive proactive operational behavior through such services as: [CLICK] Web server / load balancing service that is able to dynamically route requests to an application server for processing[CLICK] Proactive performance management services powered by transparent visibility into applications and infrastructure [CLICK] Policy-based configuration and provisioning services that automate the process of running and managing an application
  • The acquisition advances SpringSource’s vision of providing the infrastructure necessary for emerging cloud-centric applications, with built-in availability, scalability, security and performance guarantees. These modern applications require new approaches to data management, given they are deployed across elastic, highly scalable, geographically distributed architectures. With the addition of GemStone’s data management solutions, SpringSource customers can ensure the right data is available to the right applications at the right time within a distributed cloud environment.
  • Now that the Developers have the necessary tools and frameworks to build the new hotel room booking application, they need a platform that can optimally run the application.Modern platforms provide lighter-weight application runtimes, efficiently manage access to large volumes of data, and open up new ways for applications inside and outside the datacenter to communicate through:[CLICK] Lightweight application server that can be instantaneously provisioned and elastically scaled[CLICK] Data management platform that provides real-time access to globally distributed data[CLICK] Cloud-ready messaging service that facilitates communications between applications inside and outside the datacenterMoreover, modern platforms need to be built with performance in mind. By providing transparent visibility into the performance of the applications and underlying infrastructure, new levels of agility can be driven through policy-driven automation and application-level SLAs that drive proactive operational behavior through such services as: [CLICK] Web server / load balancing service that is able to dynamically route requests to an application server for processing[CLICK] Proactive performance management services powered by transparent visibility into applications and infrastructure [CLICK] Policy-based configuration and provisioning services that automate the process of running and managing an application
  • Modern applications require new approaches to data management, especially as they are deployed across elastic, highly scalable, geographically distributed architectures. By reducing application and data latency, companies are able to react faster than the competition – milliseconds matter. Moreover, by basing decisions on real-time, globally distributed access to data , companies can truly achieve strategic advantage.By adding GemFire and RabbitMQ, our customers can ensure the right data is available to the right applications at the right time within a distributed cloud environment. No longer are backend databases a performance bottleneck!By integrating GemFire and RabbitMQ with Spring and tc Server, for example, we aim to provide a seamless experience for developers to create and scale their next-generation applications in a productive manner.
  • Now that the Developers have the necessary tools and frameworks to build the new hotel room booking application, they need a platform that can optimally run the application.Modern platforms provide lighter-weight application runtimes, efficiently manage access to large volumes of data, and open up new ways for applications inside and outside the datacenter to communicate through:[CLICK] Lightweight application server that can be instantaneously provisioned and elastically scaled[CLICK] Data management platform that provides real-time access to globally distributed data[CLICK] Cloud-ready messaging service that facilitates communications between applications inside and outside the datacenterMoreover, modern platforms need to be built with performance in mind. By providing transparent visibility into the performance of the applications and underlying infrastructure, new levels of agility can be driven through policy-driven automation and application-level SLAs that drive proactive operational behavior through such services as: [CLICK] Web server / load balancing service that is able to dynamically route requests to an application server for processing[CLICK] Proactive performance management services powered by transparent visibility into applications and infrastructure [CLICK] Policy-based configuration and provisioning services that automate the process of running and managing an application
  • Now that the Developers have the necessary tools and frameworks to build the new hotel room booking application, they need a platform that can optimally run the application.Modern platforms provide lighter-weight application runtimes, efficiently manage access to large volumes of data, and open up new ways for applications inside and outside the datacenter to communicate through:[CLICK] Lightweight application server that can be instantaneously provisioned and elastically scaled[CLICK] Data management platform that provides real-time access to globally distributed data[CLICK] Cloud-ready messaging service that facilitates communications between applications inside and outside the datacenterMoreover, modern platforms need to be built with performance in mind. By providing transparent visibility into the performance of the applications and underlying infrastructure, new levels of agility can be driven through policy-driven automation and application-level SLAs that drive proactive operational behavior through such services as: [CLICK] Web server / load balancing service that is able to dynamically route requests to an application server for processing[CLICK] Proactive performance management services powered by transparent visibility into applications and infrastructure [CLICK] Policy-based configuration and provisioning services that automate the process of running and managing an application
  • Monitoring custom applications needs to go beyond simple “is this server available or not?” You can have a web server, for example, that is available but is not processing any requests. Being able to see availability as well as response times, throughput, and other key metrics WITHIN software infrastructure such as web servers is critical insight to have when diagnosing issues.
  • As enterprise IT teams address the CIOs top two initiatives for 2010 (virtualization and cloud computing according to Gartner), having a monitoring and performance management solution that is able to span both physical and virtual worlds is essential.You can’t be stuck just seeing the physical infrastructure with no visibility into the software running with virtual machines.Being able to correlate between the performance at both layers enables you to feel comfortable widely leveraging virtualization and achieving an optimized experience.
  • As the saying goes, if you can measure it, you can manage it.This is what Hyperic is all about.A suggested 5 step approach to getting the most from your application monitoring and performance management efforts is to:Identify and Organize your Key Performance MetricsLet your systems run and collect enough performance data that enables you to establish baselinesBased on this insight, you can define your alert criteria and setup automated response and control actionsIn order to coordinate a broader team, you can setup alert escalation workflows that ensure the right people (or systems) are brought in when neededLearn from the data you have collected, and rinse and repeat (i.e. add more KPMs, etc.)
  • As the saying goes, if you can measure it, you can manage it.This is what Hyperic is all about.A suggested 5 step approach to getting the most from your application monitoring and performance management efforts is to:Identify and Organize your Key Performance MetricsLet your systems run and collect enough performance data that enables you to establish baselinesBased on this insight, you can define your alert criteria and setup automated response and control actionsIn order to coordinate a broader team, you can setup alert escalation workflows that ensure the right people (or systems) are brought in when neededLearn from the data you have collected, and rinse and repeat (i.e. add more KPMs, etc.)
  • Auto-DiscoveryWhat is it?Auto-discovery facilitates data collection by automatically determining which pieces of supported software is currently installed and running on the monitored platform, as well as configuration changes to that softwareWhat is the value? Day 0: The ability to get monitoring up and running with VERY LITTLE configuration enables customers to get a tremendous amount of visibility quickly Day 1 to infinity: Autodiscovery monitors for any changes within a managed machine, lowering ongoing maintenance/oversight. Takeaway: Cost of ownership is significantly lower since HQ automatically adjusts to environment changes with very little intervention
  • Alerting and EscalationWhat is it?A feature which notifies specified members of a team when an operational event of interest occurs; enables ability to quickly take action to resolve the issue. Alerts can be fired based on a broad set of information including metrics, log messages and configuration changes. Escalation refers to a workflow which maps to an organization’s chain of command, notifying users in order of criticality when an issue arises. What is the value? Alerting enables the operations team to monitor their applications and infrastructure and only proactively deal with the issues or decisions that actually require their attention or action. This lessens the mean time to repair by quickly pinpointing issues and escalating to the appropriate stakeholders. Takeaway: Alerting is an absolute must have in any production environment in order to quickly triage, analyze and resolve operational issues which are hampering a business.
  • Alerting and EscalationWhat is it?A feature which notifies specified members of a team when an operational event of interest occurs; enables ability to quickly take action to resolve the issue. Alerts can be fired based on a broad set of information including metrics, log messages and configuration changes. Escalation refers to a workflow which maps to an organization’s chain of command, notifying users in order of criticality when an issue arises. What is the value? Alerting enables the operations team to monitor their applications and infrastructure and only proactively deal with the issues or decisions that actually require their attention or action. This lessens the mean time to repair by quickly pinpointing issues and escalating to the appropriate stakeholders. Takeaway: Alerting is an absolute must have in any production environment in order to quickly triage, analyze and resolve operational issues which are hampering a business.
  • Scenario: 4 Apache Web Servers typically serve application needs with no problemsBut…A load balancer was reconfigured and caused major issues with the before of the Apache server farmAll 4 web servers were available so Green lights were there…But only 2 of the 4 were actually handling requests.So 2 spiked up well over average requests per minute and 2 were handling no requestsOnce the load balancer was reconfigured, requests starting flowing to all 4 web servers and requests served per minute returned back to normal stateSo in this case, you ask the question…is there anything else I can bring under management to help avoid and/or identify this issue in the future?
  • In order to ensure applications are aligned with your business goals and are deployed in an agile yet controlled manner, we offer Hyperic.Hyperic is an application management and monitoring solution used by the person within IT responsible for operating modern applications. Hyperic provides the top down visibility and control required to ensure the applications are meetings their service levels.It is fast to deploy and easy to get up, running, and managing your applications.It is built for Web operations, so it gives the level of detail that the person responsible for operating the application requires to ensure it is meeting business goals.This top down, deep visibility into applications enables the operator to manage to their required service levels and triggers alerts and control actions if/when service levels are not being met.Hyperic is built for modern application such as Spring applications and has the ability to manage application infrastructure that spans physical, virtual and cloud environments.This deep visibility within the applications and services as well as across physical, virtual, and cloud infrastructure enables the application operator to answer such questions as:Is application performance within SLAs?What is the source of bottlenecks?How is the underlying infrastructure impacting application response times?Can I automate corrective actions?How can I improve performance?
  • Hyperic does application, specifically, web-based and custom application performance, management and monitoring as a core competency. The large incumbent players in monitoring and management fall short in our area of expertise, but cover additional areas like provisioning, configuration management, and issue tracking; areas where Hyperic is a poor replacement. In large environments, Hyperic is best seen as a part of a much larger eco-system. To enable integration with this eco-system: The HQ API can be leveraged as a means of gather Hyperic information or as a point of control over the Hyperic system. Hyperic can be configured to send or receive SNMP traps. Custom control action scripts that perform actions outside of Hyperic can be added, and run as part of an alert threshold being met.
  • Time to ValueAuto discovery & InventoryEase of Install and MaintenanceExtensibility
  • Now that the Developers have the necessary tools and frameworks to build the new hotel room booking application, they need a platform that can optimally run the application.Modern platforms provide lighter-weight application runtimes, efficiently manage access to large volumes of data, and open up new ways for applications inside and outside the datacenter to communicate through:[CLICK] Lightweight application server that can be instantaneously provisioned and elastically scaled[CLICK] Data management platform that provides real-time access to globally distributed data[CLICK] Cloud-ready messaging service that facilitates communications between applications inside and outside the datacenterMoreover, modern platforms need to be built with performance in mind. By providing transparent visibility into the performance of the applications and underlying infrastructure, new levels of agility can be driven through policy-driven automation and application-level SLAs that drive proactive operational behavior through such services as: [CLICK] Web server / load balancing service that is able to dynamically route requests to an application server for processing[CLICK] Proactive performance management services powered by transparent visibility into applications and infrastructure [CLICK] Policy-based configuration and provisioning services that automate the process of running and managing an application
  • We continue to expand our strategy to deliver cloud platform solutions that can be hosted at customer datacenters or at service providers. By deploying an enterprise-ready solution, based on a lightweight application platform, scalable data platform, and vSphere clouds, customers improve agility, quality of service, and take cost and complexity out of IT operations in an evolutionary way.
  • While the Microsoft ecosystem has a path to cloud (albeit a Microsoft-only path), what is the path to cloud for Enterprise Java?[CLICK]Spring provides that path to the cloud for Java. As we will cover shortly, a cloud application platform comprise of Spring applications powered by VMware application runtime and infrastructure services is one example of this path forward.[CLICK]But also key Cloud market influencers, Salesforce.com and Google, have backed Spring as the Java programming model for the cloud as well. Our partnership with Salesforce.com is on bring VMforce, an enterprise Java cloud platform to market. This will enable developers to create Java Spring applications that leverage the Force.com services such as the multitenant datastore, collaboration, reporting capabilities, etc.We have a technology partnership with Google around Spring as the Java programming model for Google App Engine. We are also tightly intergrating Spring with Google Web Toolkit (GWT) , and integrating Google Speed Tracer with our Spring Insight performance tracing tool. Both of these partnerships are intended to aggressively drive Spring forward as the programming model for Cloud applications.
  • VMware’s Cloud Application Platform addresses the needs of BOTH developers and operations by combining market-leading developer frameworks and tools with integrated application platform services to deliver speed, portability, and optimized use of cloud resources.The Modern Frameworks and Tools enable developers to build innovative new applications in a familiar and productive way while enabling the choice of where to run those applications (inside the datacenter or on private, hybrid, or public clouds). The Modern Platform Services are much more agile and designed for virtualization. Unlike traditional middleware platforms, these platform services provide lightweight footprints that make the best use of the underlying virtual infrastructure platform as well as enable businesses to bring applications to market faster and with less complexity: new applications can be delivered in days or weeks rather than months or years, and at scale.[CLICK]These two layers in our cloud application platform are Spring family of frameworks and tools and the VMware vFabric family of platform services. Let’s take a look at these in a little more detail…
  • 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.
  • VMware vFabric provides the application platform services ideally suited to be deployed into VMware-powered Private and Hybrid Clouds.VFabric puts a premium on performance and agility, and maintains a familiar and simple experience that follow a simple three step process:[CLICK]Applications are built in a familiar and productive way. Application architects and operators drive the definition of the “deployment policy” that specifies the Virtual Datacenter to be used, the platform services required and how they are wired together, including external dependencies (such as databases). Policy and SLA information for the app is also specified. The application and its deployment policy are then uploaded.[CLICK] The cloud application platform uses the deployment policy to work in concert with the desired virtual datacenter to automatically configure, provision, and deploy the application and its required application platform services. [CLICK] The platform then runs, manages, and scales the application based on the deployment policy and specified SLAs. Our recent Hyperic 4.4 release was about tightly integrating transparent visibility at the application layer with visibility at the virtual infrastructure layer. This is critical for being able to set policy at whatever level is required.[CLICK]We are also focused on creating an optimized experience when running Spring apps on vSphere. For example, our teams are working on a project called Elastic Memory. Rather than reserving 4GB of RAM for VMs running Java…”just in case” the app may need it , Elastic Memory for Java enables a “just in case” approach by tapping into the memory ballooning mechanisms in vSphere.Net Result? You are able to fit more Java workloads on vSphere due to better memory sharing.
  • Customers want a path to cloud computing and they are looking to VMware to help them set their Private / Hybrid cloud strategy both at the infrastructure layer and at the application platform layer.Many of our enterprise customers are using vSphere and Spring today. For those not at Stage 0, we recommend they get started there.Steps 1, 2, and 3 are about continuing along this journey to being able to embrace a platform that provides cloud-like capabilities within your datacenter or hosted (as part of VMware’s large ecosystem of servive providers such as Savvis, Terremark, etc.).Step 1: While a customer may be already using vSphere, Step 1 is about virtualizing Java workloads. These may be standard Java EE apps running on WebSphere, WebLogic, or JBoss. Hyperic plays a key role in this stage since it provides visibility into these applications running on physical architectures and maintains that level of visibility as these workloads are virtualized. Since about half of the apps deployed onto Java platforms today use Spring, many of these applications, once virtualized, are nicely prepared for Step 2.Step 2: tc server: better place to run their apps and much better suited for virtual. Lightwer weigh, less complex. Optimized for Spring and ideal for virtualized environments. Customers are able to run a higher density of instances of tc Server versus the heavyweight counterparts.Step 3: data management. We have purposely separated the management data away from the application server and have services in GemFire and RabbitMQ that are tightly focused on handling the needs of data management in cloud architectures.Step 4: is embracement of all of the moving parts of the platform and embracing policy-based operational automation capabilities. These capabilities are coming online in early 2011…which fits well with the customer adoption curve.
  • VMware recognizes the critical role our partners play in analyzing, recommending and delivering customer solutions.Last year, based on feedback we received from customers, partners and our own sales teams, we re-structured our overall partner program, now called VMware Partner Network. We did this to ensure we not only provided customers with world-class solutions, but that we provided partners with one of the best partner programs in the industry. We believe the tools, education and incentives available to you will help you increase your profitability as you solve your customers’ business challenges through VMware virtualization solutions.The VMware Partner Network provides programs to support many different partner business models. This presentation will be focused on Solution Providers. If you’re interested in learning more about the other partner types, please go to vmware.com/partners for more information.
  • So lets talk about some of the benefits we provide to our partners as part of the VMware Partner NetworkYou will have access to our best training developed by our Professional Services organization leveraging best practicesYou will have new competency branding you saw earlier which we will actively promote to our customersIntellectual property available to help you build your virtualization practices and utilize proven methodologies.Services intellectual property may include, but is not limited to, methodology, documentation, best practices, consultancy guides.Solution Enablement Toolkits (SET's) are a collection of services intellectual property, sales and marketing collateral, training guides and tools that provide a foundation of material to help productize a solution. Then help you identify, develop, close, and deliver that solution.  
  • This presentation is focused primarily on application infrastructure for the cloud generation of applications.Our agenda, or roadmap if you will, will cover three topics:[CLICK] Briefly cover VMware’s vision for the next decade of information technology and discussing how VMware is taking a uniquely comprehensive approach to enabling the next major era of IT across three major layers:Cloud Infrastructure, Cloud Application Platform, and End User Computing[CLICK] We will then drill down into the cloud application platform and the key drivers we are seeing that are driving requirements in this space[CLICK] And then we will drill down specifically into VMware vFabric, VMware’s cloud application platform solution that: Is comprised of Spring and new VMware vFabric product family: Modern application framework and integrated platform services Maximizes speed and innovation: enabling customers to bring new apps to market faster and with less complexity Extends the benefits of virtualization to the application: Provides an evolutionary path to the cloud whether private, public or hybrid

Si so product 1 day technical Si so product 1 day technical Presentation Transcript

  • vFabric SI/SO RoadShow
    vFabric Platform Deep Dive
    April 18th, 2011
  • Session Roadmap
    Cloud Application Platform
    Key Drivers
    VMware’s
    IT as a Service Vision
    VMware vFabric
    Combines Spring framework and tools with vFabric platform services to speed delivery of next-generation apps that are instantly scalable and cloud-portable
  • VMware Solutions for Cloud Computing
    End User
    Computing
    vFabric
    vCloud
    Infrastructure
    3
  • Transitioning from the Old to the New
    Traditional IT
    New IT - PaaS
    • Portable
    • Productive
    Web Servers/Load Balancers
    Build:
    Java
    Spring
    + Blueprint
    App Servers
    Google AE
    Public
    VMForce
    Messaging
    Cache Servers
    PaaS Pool
    Public/Hybrid
    IaaS – vSphere/vCD
    Problems:
    Time
    Cost
    Static
    Provides:
    Self-Service
    Optimization of Resources
    Dynamic
    Database
  • Users are booking rooms
    Use Case: App Intelligence for “Just-in-Time” Infrastructure
    Hotel room promotioncomes online
    Hotel room promotion ends
    Traffic
    Policy-based Capacity
  • VMware vFabric Cloud Application Platform
    Application Infrastructure for the Cloud Generation
    Modern Frameworks and Tools
    • Developer Productivity and Application Portability
    Frameworks and Tools
    Modern Platform Services
    vFabric
    • Optimized Runtime and Accelerated Deployment
    Platform Services
    Virtual Datacenter
    Cloud Infrastructure and Management
  • Spring Is Java Developers’ Choice

    At least 2 million Java developers have some level of proficiency with Spring Core, and this represents at least 50% of enterprise Java developers
    Spring

    Websphere
    WebLogic

    A majority of [enterprise Java] users interviewed by Forrester use Spring


    Half say the adoption of Spring has reduced the time to complete a project by more than 25%, and one in four have reduced the time by over 50%
    Source: Indeed.com Job Trends, Feb 2010

  • Innovation Reigns Supreme
    Web
    Cloud Platform Services
    Batch
    Social Media
    Security
    Mobile
    Integration
    8
  • Spring Ref Arch: Robust Web 2.0 Applications Built for Scale
    HQ Agent
    HQ Agent
    Application Responses
    REST / MVC
    Plugin
    Mobile &
    Security
    App
    Controller
    Social &
    Web Services
    X
    X
    GORM
    RabbitMQ
    Plugin
    App Cache
    Grails
    Spring
    RPC Broker
    tc Server
    tc Server
    Application Requests
    Web Application Server
    Web Application Server
    File
    Systems
    Website
    Analytics
    HQ Server
    Data
    Cache
    RDBMS
    tc Server
    tc Server
    Other
    Data
    Systems
    Data Cache Server
    Management Server
  • Spring Ref Arch: Enterprise Integration in the Cloud
    HQ Agent
    HQ Agent
    Application Events
    SI Flow
    SI Flow
    X
    X
    App Cache
    App Cache
    Spring
    Spring
    RPC Broker
    tc Server
    tc Server
    Application Events
    Application Server
    Application Server
    File
    Systems
    Bus Trans
    Monitoring
    HQ Server
    Data
    Cache
    RDBMS
    tc Server
    tc Server
    Other
    Data
    Systems
    Data Cache Server
    Management Server
  • Spring Ref Arch: Distributed Partitioned Batch Processing
    Scheduler
    Launch
    Script
    HQ Agent
    HQ Agent
    Partition Responses
    Batch
    Admin
    Controller
    App
    Controller
    Batch
    Admin
    Controller
    App
    Controller
    X
    X
    Partition
    Handler
    Aggregator
    App Cache Partition
    Spring
    Spring
    RPC Broker
    tc Server
    tc Server
    Partition Requests
    Batch Server
    Batch Server
    File
    Systems
    Batch
    Admin
    HQ Server
    Data
    Cache
    RDBMS
    tc Server
    tc Server
    Other
    Data
    Systems
    Data Cache Server
    Management Server
  • VMware vFabric Cloud Application Platform
    Application Infrastructure for the Cloud Generation
    Modern Frameworks and Tools
    • Developer Productivity and Application Portability
    Frameworks and Tools
    Modern Platform Services
    vFabric
    • Optimized Runtime and Accelerated Deployment
    Platform Services
    Virtual Datacenter
    Cloud Infrastructure and Management
  • Is a New Style of Infrastructure Needed?
    We need a platform that can Run these new apps.
    Dynamic Load Balancing
    Elastic App Server
    Performance Management
    Global Data Management
    Developers & Architects
    And… IT Operations
    Policy Driven Automation
    Cloud Messaging
  • Tomcat
    tc Server
    JEE Server
    Elastic Application Server: Lightweight Application Platform
    Lightweight App Container
    Heavyweight App Container
    Enterprise Capabilities
    Enterprise Capabilities
    (?)
    tc Server is Enterprise Tomcat – The best of both worlds
    Optimized for Cloud/Virtualization
    Same great high performance, low complexity, lean platform (10 MB Server)
    Best platform to run Spring (or any non-EJB Java) applications on
    Has Features/Capabilities Enterprises need and expect
    Management, Monitoring, Diagnostics, Support
  • SpringSource tc Server: Key Highlights
    Familiar Spring + Tomcat experience
    Deep performance insight into Spring apps
    Agile Spring development experience via STS
    Developer
    Efficiency
    Performance & SLA management of Spring apps
    Application provisioning and server administration
    Rich alert definition, workflows, and control actions
    Group availability & event dashboards
    Secure unidirectional agent communications
    Operational
    Control
    Lean server (10 MB) ideal for virtual environments
    Template-driven server instance creation
    Integrated experience with VMware environments
    Open, secure API for all operations
    Deployment
    Flexibility
  • SpringSource tc Server: Key Highlights
    Familiar Spring + Tomcat experience
    Deep performance insight into Spring apps
    Agile Spring development experience via STS
    Developer
    Efficiency
    Performance & SLA management of Spring apps
    Application provisioning and server administration
    Rich alert definition, workflows, and control actions
    Group availability & event dashboards
    Secure unidirectional agent communications
    Operational
    Control
    Lean server (10 MB) ideal for virtual environments
    Template-driven server instance creation
    Integrated experience with VMware environments
    Open, secure API for all operations
    Deployment
    Flexibility
  • Developer Efficiency: Deep Performance Insight into Spring Apps
  • Developer Efficiency:Deep Performance Insight into Spring Apps
    (cont’d)
  • Rich visual tools for rapidly building modern applications
    Spring 3.0, Spring Roo, Groovy & Grails tools
    Encourages agile development and testing
    Tight integration with tc Server minimizes application redeploys/restarts
    Links performance issues to code traces highlighted in Spring Insight
    Supports flexible deployment targets
    tc Server, Java EE servers, VMware, Cloud, etc.
    SpringSource Tool Suite
    Spring Roo
    Grails
    Spring
    (Core, Rich Web, Integration)
    Groovy
    Java
    tc Server
    (Spring Insight)
    Developer Efficiency:Agile Spring Development Experience
  • SpringSource tc Server: Key Highlights
    Familiar Spring + Tomcat experience
    Deep performance insight into Spring apps
    Agile Spring development experience via STS
    Developer
    Efficiency
    Performance & SLA management of Spring apps
    Application provisioning and server administration
    Rich alert definition, workflows, and control actions
    Group availability & event dashboards
    Secure unidirectional agent communications
    Operational
    Control
    Lean server (10 MB) ideal for virtual environments
    Template-driven server instance creation
    Integrated experience with VMware environments
    Open, secure API for all operations
    Deployment
    Flexibility
  • Operational Control: Production Deployment Architecture
    Server 1
    Server 1
    Server 2
    tc Server
    Instance 1
    tc Server
    Instance 1
    tc Server
    Instance 1
    tc Server
    Instance 1
    tc Server
    Instance 1
    tc Server
    Instance 1
    tc Server
    Instance 1
    tc Server
    Instance 1
    tc Server
    Instance 1
    Management Server
    Administration, Provisioning, Groups, Metrics, Alerts, Events, Access Control, Agent Upgrades, etc.
    Web
    Dashboard
    Spring
    Agent
    Agent
    Agent
    Open API
    Spring
    Spring
    Spring
    Inventory, Metric, Audit, …
    Seamlessly Upgradeable
    Spring
    Hyperic Monitoring
    Web Servers, App Servers, Databases, Caching, Messaging, Directories, Virtualization, etc.
  • Apache Tomcat
    Servlet 2.5 (JSR 154)
    Java Server Pages 2.1 (JSR 245)
    Clustering Features
    Session & context attribute replication
    Load balancing
    Improved over Tomcat 5.x
    Advanced I/O Features
    Improvements in Memory Usage
    Stable, Fast, Lightweight
    Tomcat Compatibility
    Runs existing Tomcat applications
    Leverages existing skill-sets
    Enterprise Capabilities
    Run multiple instances per install
    Centralizes tc Server install/updates
    Enterprise-ready stable release
    Security vulnerabilities & bug fixes
    Fixes will be in upstream open source release
    Built, certified and pre-tuned
    Advanced Scalability Options
    Non-blocking (NIO) connectors
    High concurrency connection pool
    Advanced Diagnostics
    Detects deadlocks and slow running requests
    Provides access to SQL behind slow requests
    Identifies time spent in garbage collection
    Operational Control: Enhanced Tomcat-compatible Server
  • Operational Control: Application Provisioning
    Provision applications to single server or group of servers
    Manage deployed applications
    View application status
    Start, stop, reload, and undeploy applications
  • Operational Control: Server Administration & Configuration
    Centralized administration of server configuration and defaults
    Out of box pre-tuned configurations
    JVM Options, production configurations, automated boot scripts, Windows service wrapper
    Server Instance Templates
  • Operational Control: Performance & SLA Mgmt of Spring apps
    Automatically Monitor Application, Data Access, Custom Components
    @Controller, @Service, @Component, @Transactional, @Repository, @ManagedResource
    Executions Per Second, Average Execution Time, Maximum Time, Minimum Time, etc.
    Monitor Performance and Execute Control Operations inside Spring
    Transaction Manager, Hibernate Session, Message Listener, JMS, JavaMail, Thread Pool, etc.
    Start/Stop Listener, Set Max Messages, Set Receive Timeout, Set Pool Size, Set Keep Alive, etc.
  • Operational Control: Performance & SLA Mgmt of Spring apps
    (cont’d)
    Monitor Application Server Status, Health, and Response Times
    Availability, Throughput, Utilization, Connection & Thread Pool Health, Deadlock Detection, Garbage Collection
  • Operational Control: Alert Workflows and Control Actions
  • SpringSource tc Server: Key Highlights
    Familiar Spring + Tomcat experience
    Deep performance insight into Spring apps
    Agile Spring development experience via STS
    Developer
    Efficiency
    Performance & SLA management of Spring apps
    Application provisioning and server administration
    Rich alert definition, workflows, and control actions
    Group availability & event dashboards
    Secure unidirectional agent communications
    Operational
    Control
    Lean server (10 MB) ideal for virtual environments
    Template-driven server instance creation
    Integrated experience with VMware environments
    Open, secure API for all operations
    Deployment
    Flexibility
  • Deployment Flexibility: tc Server Instance Templates
    Streamlines process of spinning up new server instances
    Script-driven templates deliver uniquely named server instances in seconds
    Run multiple instances based on a single set of server binaries
    Pre-packaged templates for popular configurations provided out of the box
    Separates server runtime, configuration, and applications in a way that makes testing changes and making updates a breeze
    Instance templates contain:
    Server, web, and context configuration files
    Parameterized properties files (ex. ports, etc.)
    Custom scripts, custom shared resource libraries, etc.
    Web applications (ex. Spring Insight)
    Example use cases:
    Dev, QA, Performance Test, Staging, and Production templates
    Templates for multiple instances on a machine serving a specific application
  • Deployment Flexibility: tc Server Instances (large physical box)
    tc Server
    Instance X
    tc Server
    Instance 1
    tc Server
    Instance m
    . . .
    Spring
    Spring
    Spring
    Spring
    Spring
    . . .
    tc Server ver Y
    (shared binaries)
    tc Server ver X
    (shared binaries)
    Operating System & JVM
    Single lightweight (10MB) install for multiple running instances
    Shared binaries eases upgrades of all instances
    Separates configuration and code from server runtime
    Multiple server versions can be installed per machine
  • Medium Virtual Machine
    Deployment Flexibility: tc Server Instances (virtualized platform)
    tc Server
    Instance 1
    tc Server
    Instance m
    . . .
    Small VM
    Small VM
    Spring
    Spring
    Spring
    Spring
    tc Server
    (shared binaries)
    tc Server
    tc Server
    OS & JVM
    OS & JVM
    Operating System & JVM
    Virtual Infrastructure Platform
    Complete flexibility to deploy large, medium, and small “machines”
    Lightweight footprint ensures maximum resource utilization
  • Is a New Style of Infrastructure Needed?
    We need a platform that can Run these new apps.
    Dynamic Load Balancing
    Elastic App Server
    Performance Management
    Global Data Management
    Developers & Architects
    And… IT Operations
    Policy Driven Automation
    Cloud Messaging
  • Data in the Cloud
    tc Server
    Spring Edition
    Hyperic &
    Spring Insight
    Your Java
    Spring App
    Trace, Monitor, Alert, Manage
    Built with
    SpringSource Tool Suite
    Lightweight App Runtime
    Session & Object/Data Store,
    Geo Replication & Partitioning, Active Queries & Notifications, …
    GemFire Enterprise
    Distributed Data Fabric
    GemFire Data Management
    Other Data Systems
    File Systems
    Databases
  • Yet Another Piece of Middleware?
    Why YAPOM ?
    Execution Excellence
    Make your applications run 4 to 40 times faster
    Ingest / Digest / Distribute vast amounts of data with extremely low latency
    Higher ROI of IT investments & Lower Cost Per Transaction
    A 4x Performance Increase is like getting 3 free computers that take no space or electricity
    Enables applications to survive network outages and distressed networks
    Data Awareness – especially across applications/systems
    Supports High Availability, Fault Tolerance, and Site Failover with zero additional design/development costs
  • What is GemFire?
    Database
    • Storage
    • High Availability
    • System Integration
    • Data Distribution
    • Persistence
    • Load Balancing
    • Data Transformation
    • Event Propagation
    • Transactions
    • Data Replication
    • Service Loose Coupling
    • Guaranteed Delivery
    • Queries
    • L1 Caching
    + Service Bus
    + Messaging System
    + Complex Event Processor
    + Grid Controller
    • Task Decomposition
    • Distributed Task Assignment
    • Map-Reduce, Scatter-Gather
    • Business Event Detection
    • Result Summarization
    • Real-time Analysis
    • Event Driven Architectures
    =
    GemFire combines select features from all of these products and combines them into a low-latency, linearly scalable, memory-based data fabric
  • Open PaaS : Productivity, Portability and Scalability
    VMware vSphere Infrastructure Platform
    Private
    SpringSource Application Platform
    GemFire Data Virtualization Platform
    Your Java Spring App
    Powered by VMware & Salesforce technology
    Build applications using familiar Spring skills and the SpringSource Tool Suite Eclipse IDE
    Public
    Other Platforms
    Deploy your apps to the Private or Public platform of your choice
  • Scaling the Tiers
    The web and application tiers can be easily combined and virtualized. Nodes can be added or removed on the fly.
    Load Balancer
    Add/remove web/application servers
    Web Tier
    Application Tier
    The database only grows by moving the VM to a larger machine
    Database Tier
    The disk systems can be virtualized and can grow on demand
    Storage Tier
  • Legacy Database Clustering Strategies
    A
    B
    C
    D
    A
    B
    C
    D
    Legacy database clustering technologies tend to be either:
    Statically Partitioned
    • Failure of Server A will double workload on Server B
    • Failure of Server A and Server B makes some data unavailable
    • Rebalancing requires taking database offline
    Shared Everything
    • All servers must co-ordinate activity
    • Must acquire distributed locks on data for update
    • Scalability is not linear and limited to a handful of nodes
    • Failure to synchronize activity can crash the entire cluster
  • Linear Scalability
    GemFire can achieve near linear scalability with nodes that can be added or removed on the fly.
    Scale
    Add/remove web/application/data servers
    Disks may be direct or network attached
    Web, Application and Data tiers can be collapsed into a single virtual machine.
    Optional reliable, asynchronous feed to Data Warehouse or Archival Database
  • Memory-based Performance
    GemFire uses memory on a peer machine to make data updates durable, allowing the updating thread to return 10x to 100x faster than updates that must be written through to disk, without risking any data loss. Typical latencies are in the few hundreds of microseconds instead of in the tens to hundreds of milliseconds.
    Perform
    GemFire can optionally write updates to disk, or to a data warehouse, asynchronously and reliably.
  • Data-Aware Function Routing
    Data Aware Function
    Execute
    Batch Controller or Client
    Scatter-Gather (Map-Reduce) Function
    GemFire provides ‘data aware function routing’ – moving the behavior to the correct data instead of moving the data to the behavior.
  • Data Distribution
    Distribute
    GemFire can keep clusters that are distributed around the world synchronized in real-time and can operate reliably in Disconnected, Intermittent and Low-Bandwidth network environments.
  • GemFire virtualizes the database into the application tier
    Cloud Ready
    Add/remove web/application/data servers
    Add/remove disk
    GemFire server is a small Java jar file that can be easily deployed with Java applications.
    Optional reliable, asynchronous feed to Data Warehouse or Archival Database
  • Is a New Style of Infrastructure Needed?
    We need a platform that can Run these new apps.
    Dynamic Load Balancing
    Elastic App Server
    Performance Management
    Global Data Management
    Developers & Architects
    And… IT Operations
    Policy Driven Automation
    Cloud Messaging
  • More Than Just Data – How do I Distribute Cloud Information?
    Application Data Lives Here
    Application MessagingThat Won’t Fail
    RabbitMQ Message Bus
    Application Data Sleeps Here
    GemFire Data Fabric
    File Systems
    Applications
    Databases
    Devices
    Other Systems
    Cloud Services
  • Who uses AMQP
    Over 500 known commercial users recorded by AMQP vendors, examples:
    National Science Foundation OOI Cyber infrastructure
    Frankfurt Stock Exchange
    “EUREX 12 is FIXML over AMQP Eurex is the very first exchange to introduce AMQP as a standard protocol on its system, thus easing the monitoring of positions and risk related data for its members and ensuring market integrity for all participants.”
    JPMorgan sends 1 billion AMQP messages per day
    60 production system (50% CAGR, unforced)
    NASA’s Nebula Cloud Computing project
    Second Life
    Developer clouds: VMforce, Engine Yard, Joyent, Heroku
  • Basic use cases
    Event
    I need to know when to do something
    Data fragment
    I need to give you a piece of this data without you needing to understand the whole schema
    Routing
    Control who gets which message, without changing sender and receiver
    Publish
    Tell everyone who wants to know about this
    Batch
    Producer and consumer can run at independent times
    Load share
    Add more consumers to scale up
  • Where AMQP fits
    What goes in here will clean up if it is
    OPEN,
    UBIQUITOUS,
    & ADAPTABLE
    async
    sync
    reliable
    unreliable
    copyright (c) Rabbit Technologies Ltd.
  • How AMQP works
    • Each message is stateless
    • Consumers create queues; these buffer messages for push to consumers
    • Queues are stateful, ordered, and can be persistent, transient, private, shared.
    • Exchanges are stateless routing tables.
    • Consumers tell queues to bind to named exchanges; each binding has a pattern e.g. “tony” or “*.ibm.*”
    • Producers send messages to exchanges with a routing key e.g. “tony”, or ordered set of keys e.g. “buy.ibm.nyse”
    • Exchanges route messages to queues whose binding pattern matches the message routing key or keys
  • 50
    Architectures you can build with AMQP
    copyright (c) Rabbit Technologies Ltd.
  • Rabbit is great for developers
    Developer platform integration
  • Is a New Style of Infrastructure Needed?
    We need a platform that can Run these new apps.
    Dynamic Load Balancing
    Elastic App Server
    Performance Management
    Global Data Management
    Developers & Architects
    And… IT Operations
    Policy Driven Automation
    Cloud Messaging
  • Is a New Style of Infrastructure Needed?
    We need a platform that can Run these new apps.
    Dynamic Load Balancing
    Elastic App Server
    Performance Management
    Global Data Management
    Developers & Architects
    And… IT Operations
    Policy Driven Automation
    Cloud Messaging
  • Need: Measure & Manage Custom Apps Against Business Goals
    Web-based Application Infrastructure
    End-user
    App Server
    Web Server
    Database
    Is performance within SLAs?
    What is source of bottlenecks?
    How is infrastructure impacting application response times?
    Can I automate corrective actions?
    How can I improve performance?
    App Server
    Physical or Virtual Infrastructure
  • Need: Go Beyond Red Light, Green Light Availability
  • Need: Application Visibility Across Physical and Virtual Worlds
  • If You Can Measure It, You Can Manage It
  • If You Can Measure It, You Can Manage It
  • Identifying Key Performance Metrics
    Is trouble coming?
    Are we meeting obligations?
    How can unique knowledge help?
  • What to Measure for Custom Developed Applications?
  • Examples of Collected Metrics
  • Track Events Alongside Collected Metrics
    Event Tracking and Correlation
    Provides history of log, configuration, alert and security events with performance data.
  • Hyperic Inventory and Configuration Tracking
    Maintain exact, real-time inventory of resources
    Hyperic Auto-Discovery
    Continuously runs to discover new inventory and modified inventory properties such as IP set changes or configuration changes. These too can be used as the basis for alerts.
  • Group Resources to Understand Real Utilization
    Create groups to determine if problems are localized
    Create groups for like resources, e.g., all web servers
    Create groups that share a dependency, e.g., that share a similar host
    Remote Diagnostics
    Hyperic HQ allows users to run real-time diagnostics like cpuinfor, cpuperc, df, top, netstat, ifconfig, and who across groups and operating systems simultaneously.
  • If You Can Measure It, You Can Manage It
  • Perform Trend Analysis
    Ensure all applications are fully instrumented for monitoring
    Monitor INSIDE and OUTSIDE the virtual machines
    Establish as long of a history as possible
    • Long history provides more time and information to triage quickly
    • Start during test
  • Correlate Performance Across Physical & Virtual
    Answer the question, “What Changed?”
    Was there a spike in traffic?
    Did someone add a new component or application?
    How quickly has performance degraded?
    Bridge the gap between virtual and physical
    • Compare guest & host metrics
    • CPU, Memory, Disk utilization
    • Relate Physical & Virtual Performance to Individual Applications
    Hyperic virtualization plugins
    Collect metrics inside and outside the VMs, and monitors consumption by both allocation and availability.
  • Establish Baselines and Automate Anomaly Detection
    Automatic baseline calculation for dynamic metrics
    Out-of-Band Metrics Identified and Bubble-up to Dashboard
    Hyperic Enterprise SmartTrendBaselines performance over any given period, and these baselines can be used to set alerts.
  • If You Can Measure It, You Can Manage It
  • Define Alert Conditions and Automated Response
    Control Actions
    Any script can be run remotely from Hyperic HQ and will be logged with the event history of the resource. With Hyperic HQ Enterprise these can be scheduled or run as a response to an alert.
  • Automate Response via Control Actions & Scripts
  • Define a Recovery Alert
    Opposite Condition to Problem
    Link to Problem Alert
    This Is Set on Problem Alert. Not Available for Recovery Alert Definition
  • Example Alert-based Actions
    Stop or Restart a Problem Service
    Remove Server from Load Balancer Configuration
    Execute External Process Script
    Issue Remote API Calls
    Integrate with Issue Tracking System
    Scale Server Deployment (e.g. add additional VMs to handle load)
    Perform Actions Against HQ API
  • If You Can Measure It, You Can Manage It
  • Establish Support Escalation Workflows
  • Example Escalations
    Defcon 1: Page on-call and email ops, wait 5 minutes, then page all.
    High Priority: Page on-call and email ops every 30 minutes
    Med Priority: Email ops every 4 hours
    Med Priority w/ Suppress: Suppress for 20 minutes, then email ops every 4 hours
    Low Priority: Email ops every 24 hours
    Low Priority w/ Suppress: Suppress for 20 minutes, then email ops every 24 hours
    Low Priority no Email: Used for warnings in Ops Center only, no notification
  • Acknowledge Escalation and Suspend Actions
  • If You Can Measure It, You Can Manage It
  • Learn from Gathered Metric Data
    Discrepancies in behavior among identical Apache servers
    Load balancer configuration the culprit: Expected results following fix
  • If You Can Measure It, You Can Manage It
  • Hyperic Provides Top Down Visibility to Meet Goals
    Modern Application Management
    Monitoring for custom applications
    Best tool to manage Spring apps
    Top to bottom insight and control
    Deep visibility into applications & services
    Spans physical, virtual, and cloud
    Managing The World’s Largest Infrastructure
  • Where Hyperic Fits in Management Architecture
    Monitor of Monitors
    Other Infrastructure
    Management
    Hyperic
    Provisioning /
    Configuration
    Management
    External
    Authentication
    Integration with Hyperic via:
    • HQ API
    • SNMP
    • Script Control Action
    Ticketing /
    Process Management
  • Hyperic Architecture Overview
    User Interface
    HQ Database
  • Hyperic Server Considerations for Production
    Application Server Sizing
    CPU
    Memory
    Database Server Sizing
    Disk I/O
    Other Considerations
    Firewalls and other Security Software (agent and server)
    User Accounts
    Use of a Virtual IP Address
    HA Configuration
  • Lessons From Hyperic QA on Server Sizing
    Performance test environment H/W config:
    Dual Quad Core CPUs
    16 GB of RAM (2 - 6GB dedicated to JVM heap, depending on what is being tested)
    Standalone MySQL DB w/ 7 disk RAID0 Array
    Our test profile includes:
    1000 platforms
    4000 servers
    10000 services
    100K to 150K metrics/min
    20000 to 50000 alert definitions
  • Hyperic Agent Architecture: Open Plugin Flexibility
  • Agent Upgrades via Hyperic UI
  • Push Plugins via Hyperic UI
  • Data Collection via the Hyperic Agent
  • Anatomy of a Custom Plugin
  • System Information Gatherer and Reporter (SIGAR) In-Depth
  • Is a New Style of Infrastructure Needed?
    We need a platform that can Run these new apps.
    Dynamic Load Balancing
    Elastic App Server
    Performance Management
    Global Data Management
    Developers & Architects
    And… IT Operations
    Policy Driven Automation
    Cloud Messaging
  • Private Application Cloud Platform Vision
    Your Java
    Spring
    App
    Load Balancer
    Deployment Policy
    Configure, Provision, Control
    Trace, Monitor, Alert
    Elastic App Runtime
    App and deployment policy uploaded to Cloud platform
    Platform configures required services and provisions app
    Launch application
    Inventory
    Messaging Service
    In-Memory SQL
    Elastic Data Fabric
    Policy-based Infrastructure Platform & Resource Pools
    (vSphere , vCloud Director)
  • Cloud Foundry
    Initially, CloudFoundry.com supports Spring for Java apps, Rails and Sinatra for Ruby apps, Node.js apps and apps for other JVM frameworks including Grails. Cloud Foundry also offers MySQL, Redis, and MongoDB data services.
    Open PaaS offering from VMware
    Currently in Beta
    Three Primary Flavors
    CloudFoundry.com – Complete Hosted PaaS
    CloudFoundry.org – The Community Site
    Cloud Foundry Micro-Cloud – PaaS for the Enterprise
  • Market Has Chosen Spring As Path Forward for Enterprise Java
    “In partnership with VMware, we are bringing Spring to Force.com.”
    “With VMware, we are making it easy for developers to create Spring Java apps in the cloud.”
    2.5 million
    Spring Developers
    vFabric
  • VMware vFabric Cloud Application Platform
    Application Infrastructure for the Cloud Generation
    Modern Frameworks and Tools
    • Developer Productivity and Application Portability
    Frameworks and Tools
    Modern Platform Services
    vFabric
    • Optimized Runtime and Accelerated Deployment
    Platform Services
    Virtual Datacenter
    Cloud Infrastructure and Management
  • VMware vFabric Cloud Application Platform
    Application Infrastructure for the Cloud Generation
    Integration
    Data Access
    Rich Web
    Batch
    Cloud APIs
    Social Media
    Frameworks & Tools
    vFabric
    Platform Services
    Dynamic Load Balancer
    Performance Management
    ERS (Apache)
    Hyperic
    Elastic
    App Server
    tc Server
    Policy-driven Automation
    vFabricAppDirector
    Global Data Management
    GemFire
    Cloud Messaging
    RabbitMQ
    Virtual Datacenter
    Cloud Infrastructure and Management
  • vFabric Vision: Optimized Cloud Infrastructure
    VMware vFabric
    Application Runtime
    and Data Services
    Application
    Deployment
    Policy
    Elastic Resource
    Utilization
    Build your application
    Configure and deploy
    Virtual Datacenter
    Infrastructure Platform & Resource Pools
    Transparent Visibility
    Policy-driven Automation
    Run and scale
  • Evolutionary Approach to Cloud Application Platform
    4
    3
    Cloud Platform
    Cloud Data Management
    2
    Cloud App Runtime
    VM
    1
    Stage
    vFabric
    tc Server
    Virtualized Applications
    VM
    App Server
    0
    Virtualization & Spring
  • vFabric Resources
    • Partner Central
    • Partner Central: http://www.vmware.com/go/learnvfabric
    • vFabric Overview, PaaS Whiteboard, tcServer Demo, Hyperic Demo, Gemfire Presentation
    • SME Email List for Technical Questions
    • SME-SpringSource@vmware.com
    Webinars
    http://www.springsource.com/newsevents/webinars
    Avoid Pitfalls when Monitoring a Virtualized Environment
    Next-Generation Data Management in the Cloud for Java Apps
    Best Practices for Virtualizing Java Workloads
    Performance Tuning Production tc Server: Tuning for Throughput & Scale
    Upcoming: The NPC Story - Speedier Apps, Minimal Downtime, Lower Cost
  • VMware’s Commitment to Partners
  • Solution Provider Benefits Include...
    Training and Education
    Sales Engagement
    Branding
    and Customer Recognition
    Incentives/ Margin
    Intellectual Property & SET’s
    Demand Generation
    NFR & IUL Software
  • Temporary Program for Net New VMware vFabric Partners
    LEVEL
    REQUIREMENT
    Application/Agreement: Sign & Complete
    Ability to Sell: ACE, Workstation, Fusion, vSphere Essentials & Essentials Plus
    REGISTERED
    Go to www.vmware.com
    Partners- > Partner Programs
    Solution Provider - > Registered
    Apply Now
    Fill in the Details and Submit
  • Sign up for Partner Central and Partner University
    Partner Central is the exclusive online information resource, providing a single dedicated web portal for all VMware Partners.
  • Key Takeaways
    Cloud Application Platform
    Key Drivers
    VMware’s
    IT as a Service Vision
    VMware vFabric
    Combines Spring framework and tools with vFabric platform services to speed delivery of next-generation apps that are instantly scalable and cloud-portable
  • Questions?
    vFabric Platform Deep Dive
    April 18th, 2011
  • Appendix A
    Use Cases
  • tcServer Successes
  • Case Study – From Level 0 to Level 1.5
    About the Company
    The Digital Services Division (DSD) of Associated
    Newspapers (ANL) provides all online development and infrastructure services to ANL’s online
    portfolio of newspaper web sites. This includes
    the Daily Mail, UK’s largest online newspaper
    website, as well as Evening Standard, This Is
    Money, Metro and 150+ regional sites. ANL’s goal
    is to deliver websites that offer an engaging and
    satisfying experience for users and measurable
    commercial benefits to advertisers. ANL is part of
    the Daily Mail and General Trust plc.
    Moved from Traditional to Elastic Application Server
    Benefits:
    • Faster Testing and Live Deployments –
    • From Hours to Minutes
    • Rapid Turnaround on Production Fixes
    • Proactive Problem Solving
    • H/A – 100% Uptime on Website
    • Improved Performance – 3X
    • Reduced Server Costs
    Notable Quote
    “In the newspaper environment, we constantly need to find new and innovative ways to monetize our content,” Perkinson continues.
    “Ideas for new features are coming through all the time, and for us to be able to turn those features around and get them to market quickly is absolutely key. But with Oracle WebLogic, developers were constantly task switching while waiting for Oracle WebLogic to deploy and start up our applications after each test and staging release.”
  • Case Study – Level 0 to Level 2
    NPC International, based in Overland Park, Kansas, is the largest Pizza Hut franchisee in the world and is owned by Merrill-Lynch Global Private Equity Group. NPC International connects to its 1,200 restaurants across the US via a web application deployed through the local POS system, providing a variety of essential corporate functionality such as payroll, vacation requests, compliance management, invoice approval and online employee training. The web-based system must be kept running at top performance to handle 170,000 page views per day by NPC International users.
    Benefits:
    • Enhanced Application Performance
    • High Availability
    • Increased Developer Productivity
    • Greater Scalability and Improved User Experience
    • Virtual Cloud Infrastructure
    • Reduced Server Costs by 75%
    Virtual Cloud Infrastructure
    tcServer has enabled NPC International to implement an internal, private cloud of VMware-based virtual server resources, to maximize efficient usage of existing infrastructure. Because tc Server’s footprint is small, 12 tc Server instances are running on a single physical box, with additional capacity available to install more tc Server instances when needed. Consequently, tc Server enables NPC International to maximize internal server resources by eliminating the multiple machines necessary to run numerous application servers.
    “I could not have deployed the applications within VMware-based virtual machines without tc Server,” Brisbin says. “I need a small, lightweight server that starts in a few seconds. I need to run several instances so I can make use of all the CPU resources.”
    Confidential
    110
  • GemFire Successes
  • Use Case - ForEx
    real-life use case: Global Foreign Exchange Trading System
    The project achieved:
    • Low-latency trade insertion
    • Permanent Archival of every trade
    • Kept pace with fast ticking market data
    • Rapid, Event Based Position Calculation
    • Distribution of Position Updates Globally
    • Consistent Global Views of Positions
    • Pass the Book
    • Regional Close-of-day
    • High Availability
    • Disaster Recovery
    • Regional Autonomy
  • real-life use case: Global Foreign Exchange Trading System
    Use Case - ForEx
    In that same application, GemFire replaced:
    Oracle Database In Every Region
    Still need 1 instance for archival purposes
    TIBCO Rendezvous for Local Area Messaging
    IBM MQ Series for WAN Distribution
    Veritas N+1 Clustering for H/A
    In fact, we save the physical +1 node itself
    3DNS or Wide IP
    Admin personnel reduced from 1.5 to 0.5
  • real-life use case: Event-driven Risk and Pricing
    Use Case – Event Management
    Batch processing delays were costing money
    and limiting opportunities
    Running Pricing and Risk calculations in batch mode required special applications to be written that created a ‘buffers’ to ensure that regulatory obligations were not violated (BASEL II regulations).
    An initial attempt to produce event-detection processing on legacy technology would not scale. Only 43 priority products could be managed – other products could not take advantage of a known tactical advantage.
  • real-life use case: Event-driven Risk and Pricing
    Use Case – Event Management
    "The breakthrough for this tool came when we decided to put the event detection logic into our pricing models"
    Derek Joyce
    Chief Business Technologist for Equity Derivatives
    JPMorgan investment Bank
    Built and deployed the Event Workstation project in under 12 months
    Features: Real-time event detection, easier integration of new products, and control workflow to minimize business risk and meet all regulatory requirements
    Trader UI queries reduced from 20 minute to under 5 second response time
    8 CPUs re-price 6000 complex and exotic instruments in under 3 minutes
  • Use Case – Mainframe Migration
    real-life use case: Mainframe-based Nightly Batch Run
    I/O Wait
    9%
    CPU Busy
    15%
    A mainframe-based, nightly customer account reconciliation batch run
    0
    120
    60
    min
    CPU Unavailable
    15%
    Mainframe
    Batch now runs in 60 seconds
    COTS Cluster
    93% Network Wait! Time could have been reduced further with higher network bandwidth
  • real-life use case: Mainframe-based Nightly Batch Run
    Use Case – Mainframe Migration
    So What? So the batch runs faster – who cares?
    It ran on cheaper, modern, scalable hardware
    If something goes wrong with the batch, you only wait 60 seconds to find out
    Now, the hardware and the data are available to do other things in the remaining 119 minutes:
    • Fraud detection
    • Regulatory compliance
    • Re-run risk calculations with 119 different scenarios
    • Up sell customers
    You can move from batch to real-time processing!
  • real-life use case: Web 2.0 Portal – Customized ads
    Use Case – Web Portal
    1
    2
    3
    4
    A popular online gambling site attracts new players through ads on affiliate sites
    Customized Banner Ad on affiliate site
    In a fraction of a second, the banner ad sever must:
    Generate a tracking id specific to the request
    Apply temporal, sequential, regional, contractual and other policies in order to decide which banner to deliver
    Customize the banner
    Record that the banner ad was delivered
    Banner Ad Server
    Affiliate's Web Server
  • real-life use case: Web 2.0 Portal – Customized ads
    Use Case – Web Portal
    Their initial RDBMS-based system
    Limited their ability to sign up new affiliates
    Limited their ability to add new products on their site
    Limited the delivery performance experienced by their affiliates and their customers
    Limited their ability to add additional internal applications and policies to the process
    Their new GemFire-based system
    Responded with sub-millisecond latency
    Met their target of 2500 banner ad deliveries per second
    Provides for future scalability
    Improved performance to the browser by 4x
    Cost less
  • real-life use case: DISA / DOD Global Command and Control
    Use Case – Asset/Position Monitoring
    Centralized data storage was not possible
    Multi-agency, multi-force integration
    Numerous Applications needed access to multiple data sources simultaneously
    Networks constantly changing, unreliable, mobile deployments
    Upwards of 60,000 object updates each minute
    Over 70 Data feeds
    Needed a real-time situational awareness system to track friendly assets and enemy assets
    that could be used by all of the war fighters in theatre
    Northrop Grumman (integrator) investigated the following technologies before deciding on GemFire
    • RDBMS – Oracle, Sybase, Postgres, TimesTen, MySQL
    • ODBMS - Objectivity
    • jCache – GemFire, Oracle Coherence
    • JMS – SonicMQ, BEA Weblogic, IBM, jBoss
    • TIBCO Rendezvous
    • Web Services
  • real-life use case: DISA / DOD Global Command and Control
    Use Case – Asset/Position Monitoring
    655 sites, 11 thousand users
    Real-time, 3 dimensional, NASA World Wind User Interface
    Active, directed event propagation
    On the desk of
    President of the United States
    US Secretary of Defense
    Each of the Joint Chiefs of Staff
    Every commander in the US Military
    Likely to be adopted as the joint, common operating picture for US allies and friendlies
  • RabbitMQ Successes
  • BBC - real time content management
    Source feeds are collated, transformed
    and routed to their destinations
  • Pubsubat massive scale: “Twitter for Data in the Cloud”
    Oceanographic Observatory Institute
  • Putting it all together: The OOI National Network
    125