1 / 43

Actional Architecture Fundamentals

Actional Architecture Fundamentals. David Bressler Actional Product Evangelist September 2009. Agenda. Actional Benefits Management Architecture Patterns Actional Architecture How Actional’s Architecture Provides the Benefits We Just Discussed What It Takes To Deploy.

ping
Télécharger la présentation

Actional Architecture Fundamentals

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Actional Architecture Fundamentals David Bressler Actional Product Evangelist September 2009

  2. Agenda • Actional Benefits • Management Architecture Patterns • Actional Architecture • How Actional’s Architecture Provides the Benefits We Just Discussed • What It Takes To Deploy

  3. Actional Architecture Benefits

  4. Agenda • Actional Benefits • Management Architecture Patterns • Actional Architecture • How Actional’s Architecture Provides the Benefits We Just Discussed • What It Takes To Deploy

  5. Management Design Challenges

  6. Alerts Performance Scalability Visibility Cost Distribute Processing to the Managed Nodes Pros: • Speed – policy evaluation happens right on box • Gain scalability by distributing transaction processing Cons: • Heavy CPU load on application host • Each node manages independently of others; No over-all view of the SOA • Application costs increase due to management overhead

  7. Raw Data Performance Scalability Visibility Cost Centralize Processing Pros: • Application costs are separated from management costs • Server can provide SOA overview Cons: • Near doubling of network traffic • Significant latency added to message flow • Explosion of management servers • Management becomes a bottleneck to business execution Results

  8. Performance Scalability Visibility Cost Actional’s Combined Approach Pros: • Analysis is distributed into the network • Virtually unlimited scalability • Central server is “in the know” • Provides holistic SOA overview Cons: • Integration with each platform requires a greater depth of skill • That’s our problem, and one we’re good at solving! Alerts & Stats Policies

  9. Results of this Approach • Leverages existing message processing • Low CPU utilization without loss of functionality • Leverages existing message flows • Global visibility without a central bottleneck • Leverages the network effect • Proactive issue detection and isolationwithout costly administration Actional Utilizing 1-3% of CPU in usage by F500 financial service firm Managing >35000 interdependencies among >500 machineswith a single Actional server at one of world’s largest universities

  10. Agenda • Actional Benefits • Management Architecture Patterns • Actional Architecture • How Actional’s Architecture Provides the Benefits We Just Discussed • What It Takes To Deploy

  11. Actional Server-Agent Communication Actional Management Server Policies Created Centrally 1 SOAP over HTTP(S) or JMS Policies Provisioned for Distributed Execution 2 Statistics reported back on timing interval; Alerts reported asynchronously 3 3 On alert, when needed, Server asks Agent for additional information 4 Instrumented Platform

  12. HTTP(s) RMI Message Traffic  JDBC SOAP ADO.NET EJB ESB JMS Orbix/IIOP Servlets OpenEdge Interceptor Flight Data Recorder SOA Protocols Supported Statistics Aggregation HTTP(s) RMI Policy Evaluation SOAP JDBC EJB ADO.NET 2.0/3.0 Analyzer JMS ESB Servlets Other Uplink.cfg Instrumented Platform Components Protocol Specific Instrumentation MessageActivity Alerts and Stats to Server; Policy from Server Configuration Info

  13. Tracking Message Flows • Interceptors • Inserted without modifying the application • Actional is invisible to developers • Run in the platform protocol stack, not on the app server • They become a “part of the app server” • Give visibility one-hop away • Don’t do anything if analyzer not running

  14. Interceptors Inject “Tracers” into the Flow • Manifest • Inserted in the transport header • Message is not modified • Ignored by un-instrumented nodes • Maintained through local processes, and stitched across multiple hops • Enables the capture of exact message sequences and both service and business-process level correlation

  15. Flight Data Recorder Stores Info in Memory • Fight Data Recorder • Is never persisted • Never sent on the network • Size is configurable • Will recycle storage space as needed

  16. Policy Evaluation Detects Abnormal Conditions Actional Management Server Policy only needs to be checked at the “key checkpoints” in the process flow (not at every step). Analyzer notifies Actional Management Server.

  17. Server Gathers Relevant Information Actional Management Server Actional Management Server gathers, correlates, persists, and visualizes relevant records from each related flight data recorder

  18. Flow Map Screen Shot: Root Cause Analysis

  19. Flow Map Detail Screen Shot: Path Explorer

  20. Finding the Root Cause

  21. Why Correlation Matters to Product Selection • Highly Beneficial (Elegant) • Correlation in-bound and out-bound within each node (not just in-bound request with out-bound reply) • Correlate across nodes • Done across every message and flow • Even when message content inaccessible/encrypted • Spans protocols for end-to-end correlation • Across protocol transitions for all protocols supported • Virtually no impact on performance • Low Cost of Implementation & Ownership (Simple) • No up-front configuration necessary • It works from the first message sent, once the agent is installed • No need to manage correlation rules • No need to worry about correlation rule errors! • No on-going maintenance of correlation rules necessary

  22. No manual correlation mapping need to be defined Automatic discovery of relationships No application level modifications required Can be implemented at any stage of a project Read correlation state from incoming transport-level message header Store correlation state in container’s processing context e.g. transaction, session, or process context Allow container to transfer and persist correlation state as necessary Read correlation state from container’s processing context Embed correlation state in outgoing transport-level message header ApplicationPlatform … Correlator Correlator Correlation Management Benefits 4 5 3 1 2 Reporter

  23. Agenda • Actional Benefits • Management Architecture Patterns • Actional Architecture • How Actional’s Architecture Provides the Benefits We Just Discussed • What It Takes To Deploy

  24. Highly Scalable

  25. Performant

  26. Automatic Discovery

  27. Policy Inheritance • Policy can be written so that it is not service specific • Therefore, as services are discovered, policy is applied via “meta-data correlation” (such as service location) • This assures you that rogue services are never un-policed; policy can be written without any knowledge of the service and deployed even before the service • Since services are discovered, even if an admin “forgets” to configure the service, Actional discovers the service, and all relevant policies are inherited and immediately applied

  28. Multi-Protocol Support

  29. No Application Changes Required • Correlation information (Manifest) is added to the message flow via a transport header • Actional does NOT change the message, or message content, in any way • Therefore, the application is never even aware that it is being managed; either Actional or the Application can be deployed first • As a side benefit, customers are not locked into Actional

  30. Correlation is Automatic • As an example, one customer is managing >35,000 interdependencies among >500 machines • Manual correlation is a non-starter in any enterprise-class environment • The whole point of root-cause analysis and “learning what the environment is doing” is having the infrastructure discovery and report what is actually happening in the environment

  31. Correlation Specifics • Correlation supports both synchronous and asynchronous flows • Correlation is independent of finding a common key in the payload (and the related expense of payload processing) • Correlation is specific to an individual flow, and root-cause analysis can use actual individual message stats, not just average stats of a flow

  32. Policy Enforcement Optimization

  33. Summary: Key Actional Architecture Points

  34. Agenda • Actional Benefits • Management Architecture Patterns • Actional Architecture • How Actional’s Architecture Provides the Benefits We Just Discussed • What It Takes To Deploy

  35. Supernode Deployment Broad Visibility Where To Start?

  36. Broad Visibility Broad Visibility • Deploy Agent in Each Container • Gives holistic overview • Protects from rogue services • Rapid root cause analysis • Often done as preventative measure in anticipation of SOA • More easily done when infrastructure is controlled by one team

  37. Supernode Deployment Supernode Deployment • Deploy Agent in “Hot Spots” • As familiarity with tool increases and ‘wins’ occur, branch out to other servers • More easily done when app servers are owned by distributed application teams (no central control) • Used to troubleshoot problems with a particular server/application • Provides clear ROI since sharing is more easily demonstrated

  38. What’s the Best Way to Install the Agent? • Install everywhere, but don’t necessarily run Analyzer • Interceptor only works when Analyzer is running • Install as part of basic build, so it’s there when you want it • Enable it by turning on the Analyzer • What if I have multiple application servers on a single host? • You need one Analyzer per box, and one Interceptor per protocol for each application server • The Interceptors will find uplink.cfg and know how to communicate to the Analyzer

  39. What’s the Best Place to Run the Analyzer? • Multiple application servers on the same host… where do I put the Analyzer? • There is only one Analyzer per box • The Analyzer can run standalone, and service each application server equally • If the Analyzer runs in one of the application servers, then a container failure will impact other application servers on that same box (not desired behavior) • Failure of the standalone Analyzer will not impact message flow on any app server; though management information will be unavailable

  40. Development, UAT, Production? • In Development Actional provides… • Constant monitoring of how services are used, so that developers do not need to wait to a check point (after all development is complete) to find and fix problems. • Assurance that developers are not using production services • Quickly debug interactions between systems • At a Telco, reduced their debug time to 20% of what it had been prior to Actional implementation • Policies can be exported and managed via source control as code is moved from development to UAT to production • Tracking consumers of development services to assist with migration towards production as appropriate

  41. Development, UAT, Production? • In UAT Actional provides… • Validation that services are used as documented • Capacity planning for production deployment • Assurance that UAT is not depending upon any development services (unless expected) • Assurance that UAT is not depending upon production resources (databases or orchestration, for example) • Impact analysis understanding for how this new service usage will affect the existing SOA • Rapid debugging of interactions between systems

  42. Summary • Architecture requirements of low impact, broad visibility, and high scalability are a good starting point for evaluating a solution • Discussed Actional architecture • Automatic Discovery of consumers, services & dependencies • Multi-Protocol support includes JDBC, ADO.NET, RMI, EJB, + • No application changes required • Scalable & Performant • Policy Inheritance • Flow Mapping for root cause analysis • High level deployment guidelines and how to get started • Where to deploy agents • Best practice for getting agents deployed • Benefits to Actional in Development and UAT

More Related