(This article is part of a series starting with Back to Basics - What is a Traffic Manager, Anyway?)
We have covered load balancing, health monitoring and some caching in my last blog, and now it’s time to look at why Traffic Manager really shines when you need to add more control your applications.
First, Traffic Manager gives you closer control over services and users and transactions, and lets you decide how your applications are delivered. And second, is the range of flexibility that you have with a software-defined approach to configuration and deployment.
Control and Flexibility
Traffic Manager lets you define rules to control applications, and you can do this in THREE ways:
1. Our Rule Builder gives you a very simple graphical user interface to create simple rules and policies. Click and choose from drop-down menus to create simple conditions and actions.
2. TrafficScript is a simple, yet powerful programming language which gives you full control over applications, and is embedded right within the kernel of Traffic Manager to run with the highest possible performance.
3. Java Extensions can be used is you need to go a little bit further. You can write rules in any language that can target the JV app. Java, Python, Ruby, and many others. You can use third party libraries, and those rules can be invoked by a traffic manager against specific transactions.
You can use these rules to inspect and then conditionally route traffic to the most appropriate servers, to apply simple security policies, block or permit particular types of transactions, or mask sensitive data in web responses. Rules can control which features of Traffic Manager are used - compression, bandwidth, rate shaping or caching – but they can also control at a much closer level, right down to individual transactions. It's very easy to inspect and modify both requests and responses, to ensure that the right content is delivered to your end users at the best possible level of service.
You can have even more control with the Event Handling mechanism. You can hook custom actions, whether they are SNMP traps or email alerts, or even custom scripts. You can watch for internal events, such as a bandwidth class or a service level class going outside its desired parameters, or it could be an external event. For example, if Traffic Manager notices that a server has failed and then it can invoke a custom event to either raise an alert to a monitoring system, or perhaps even to attempt to execute a shell on the server and restart the service.
Traffic Manager can monitor a range of performance and activities, all of which can be accessed through the user interface, and through our various APIs such as REST, SOAP, SNMP or command line, so that you can interface your existing systems to Traffic Manager, and you can create closed-loop solutions that program how your infrastructure responds in the event of certain events happening or traffic levels meeting certain levels.
This article is part of a series: