Best Practice Principles - Optimization

Added by James Rabey , last edited by Jennifer Lang on May 19, 2008  (view change)
Tags: 

The main benefits of optimization are that it makes the most efficient use of the ADI and creates the best user experience, reducing overall costs and improving user productivity. It is helpful to examine some of the criteria for optimizing the application infrastructure. Since operating expenses are a major percentage of corporate IT budgets, it is beneficial to drive higher utilization of the existing infrastructure. Further, by taking a holistic view of the end-to-end infrastructure, we can identify a variety of constraints, such as power/cooling costs and mobility-related expenses, which may not be apparent when examining technology-focused silos (for example, servers, storage, and networking systems).

On the other hand, there may be instances where the costs of undertaking an optimization project may outweigh the potential benefits. For example, when a system will be upgraded or replaced in the near future. Optimization projects are also not recommended when dealing with systems that have a high margin of error; for example, for legacy systems that lack sufficient documentation.

The guiding principles for application delivery optimization are:

  • Applications should be delivered in such a fashion that the user experience is protected from any ill effects of the distance between them and the actual applications, regardless of the application delivery infrastructure type used. This can be achieved for example with intelligent routing of the user request to the nearest available resource and using optimization techniques to minimize the impact of any network latency or congestion.
  • The user should not be required to modify their normal workflow to have their applications delivered, regardless of access scenario. For instance, when an office-based employee needs to work from a remote location, the employee clicks on the regular icon on the desktop or Start Menu. However, instead of the application running locally on the end-user device, it runs in a secure environment in the datacenter and is delivered to the end-user device via server-side app virtualization. The network traffic is optimized for the current user scenario.
  • Applications should continue to function, regardless of what the user does purposefully or inadvertently. For example, a user might accidentally delete a critical file required for the word processing application. The streaming function of the application delivery controller checks the application manifest file and instantly supplies the missing file, and the application runs as normal.
  • Applications should continue to be delivered to users, regardless of service disruptions within the infrastructure. The infrastructure should be able to detect faults and seamlessly re-route connections to the most appropriate location. The global server load balancing function can detect link failures and route user requests to the nearest alternate resource. For example, a running instance of a virtual machine can be moved from one set of hardware to another set in the resource pool, based on end-user experience monitoring, to avoid any service degradation. In addition, Windows application delivery controllers can route user requests to alternate servers when a single server in the pool must be taken offline for maintenance. Administrators also have the ability to adjust the number of available virtual machines, to meet performance and resources objectives.

Optimizations

The following are recommended optimizations that may benefit your ADI environment. Not all optimizations will apply to every environment - you should assess each optimization before adding it to your production systems.