Performance - Design for use

Special performance related designs must be made when an infrastructure is to support special performance critical applications. Here are some tips:

  • In general it must be known what the system is to be used for. A large data warehouse needs a different infrastructure design than an on-line transaction processing system or a web application. Interactive systems have other performance characteristics and need different infrastructure solutions than interactive systems or systems that must support high peak demands.
  • In some cases special products must be used for certain systems. Real time operating systems, in- memory databases, or even specially designed file systems can be a solution for extremely performance sensitive systems.
  • Most vendors of databases, web servers, operating systems, and storage or network solutions provide architects with standard implementation plans that are proven in practice. In general, try to follow the vendor's recommended implementation. It is also always a good idea to have the vendors check the design you created. Not only can they approve your design, they can also suggest improvements that you might not have considered. I have good experiences with having vendors check my designs!
  • When possible, try to spread the load of the system in time. Maybe it is not such a great idea to have a complex batch job running at 09:00 AM when all people get to work and start their PCs. Making certain that a backup job is not scheduled when some critical report is compiled is also an example. Sophisticated scheduling applications exist to help you manage complex dependencies.
  • Implement some form of Quality of Service (QoS) for important jobs. For instance on the network layer QoS can provide fast response times for interactive systems, while for instance sending email can be done at a lower priority (especially when the email contains large attachments). Most operating systems can be configured to handle certain processes with more priority than other processes.
  • For availability reasons many systems have off-line copies of data available (for more information on this subject see the chapter on availability). If possible I/O intensive operations like running complex reports or aggregating data in data warehouses could be set to run on the off-line systems instead of on the production systems.
  • To increase performance sometimes it is possible to move rarely used data from the main systems to other systems. Large databases tend to be slower than small ones. Moving old data to a large historical database can speed-up the production database that is now smaller in size.

This entry was posted on Tuesday 31 May 2011

Earlier articles

Quantum computing

Security at cloud providers not getting better because of government regulation

The cloud is as insecure as its configuration

Infrastructure as code

DevOps for infrastructure

Infrastructure as a Service (IaaS)

(Hyper) Converged Infrastructure

Object storage

Software Defined Networking (SDN) and Network Function Virtualization (NFV)

Software Defined Storage (SDS)

What's the point of using Docker containers?

Identity and Access Management

Using user profiles to determine infrastructure load

Public wireless networks

Supercomputer architecture

Desktop virtualization

Stakeholder management

x86 platform architecture

Midrange systems architecture

Mainframe Architecture

Software Defined Data Center - SDDC

The Virtualization Model

What are concurrent users?

Performance and availability monitoring in levels

UX/UI has no business rules

Technical debt: a time related issue

Solution shaping workshops

Architecture life cycle

Project managers and architects

Using ArchiMate for describing infrastructures

Kruchten’s 4+1 views for solution architecture

The SEI stack of solution architecture frameworks

TOGAF and infrastructure architecture

The Zachman framework

An introduction to architecture frameworks

How to handle a Distributed Denial of Service (DDoS) attack

Architecture Principles

Views and viewpoints explained

Stakeholders and their concerns

Skills of a solution architect architect

Solution architects versus enterprise architects

Definition of IT Architecture

What is Big Data?

How to make your IT "Greener"

What is Cloud computing and IaaS?

Purchasing of IT infrastructure technologies and services

IDS/IPS systems

IP Protocol (IPv4) classes and subnets

Infrastructure Architecture - Course materials

Introduction to Bring Your Own Device (BYOD)

Fire prevention in the datacenter

Where to build your datacenter

Availability - Fall-back, hot site, warm site

Reliabilty of infrastructure components

Human factors in availability of systems

Business Continuity Management (BCM) and Disaster Recovery Plan (DRP)

Performance - Design for use

Performance concepts - Load balancing

Performance concepts - Scaling

Performance concept - Caching

Perceived performance

Ethical hacking

The first computers

Open group ITAC /Open CA Certification


Recommended links

Ruth Malan
Gaudi site
Esther Barthel's site on virtualization
Eltjo Poort's site on architecture


Feeds

 
XML: RSS Feed 
XML: Atom Feed 


Disclaimer

The postings on this site are my opinions and do not necessarily represent CGI’s strategies, views or opinions.

 

Copyright Sjaak Laan