sustainable architecture design
DESCRIPTION
Presentation from JAOO 09 Australia on how to design software architectures to maxmise sustainable outcomes by limiting power and resource usage. Uses the Virtualisation Maturity Model (see Architecture Journal edition 18).TRANSCRIPT
Sustainable Architecture Design
Kevin Francis
Object Consulting
What this is all about ...
Agenda
The case for Sustainable Architecture Design Finding improvements through design Finding improvements through development Finding improvements through architecture The virtualisation maturity model Conclusion
Where does the carbon come from?
Carbon Emissions
EnergyOther
Who’s bad?
% of Carbon Emmissions
Growth0
1
2
3
4
5
6
Airline Industry
IT Industry
Airline IndustryIT Industry
Life cycle emissions of a computer
Facts
Power costs for each server are now greater than the cost of the server – Google.
Running a computer is worth 4x the CO2 emissions of building it, each year.
Building a computer is 10x less effective on CO2 emissions than white goods.
The wake-up call
So where are we now?
Architecture is directly related to power consumption
This stuff matters now and will matter more and more
Applications have never been designed efficiently until now
It isn’t that hard – we just haven’t thought about it before
Design
Finding improvements through design
Inefficient processes Wasted travel:
• Reduce deliveries and flights• Enable telecommuting• An exponential effect...
Wasted paperwork Unnecessary filing Build the total cost of operations into the business
case Design systems to remove inefficiencies
Development
Don’t stop sleep mode. Restore gracefully from sleep mode. Don’t hog the network, disk or processor – allow for
graceful power-down Even support wake-up on interrupt
Principle: Support power saving mode:
Support the OS and hardware
Data matters too
Disks need power Online data needs disks
Principle: Store as little data as possible. Principle: Include data archiving in application
design.
Code efficiency matters
CPU cycles = power Use multi-threading! Applications need to play together nicely The Windows 7 example!
Principle: Design, develop, and test to maximize the efficiency of code
Architecture
The Virtualisation Maturity Model
Let’s be friends
The power realities of CPU usage and hardware
Step 1: Consolidate applications by function Step 2: Consolidate applications by server Step 3: Consolidate shared services
Enterprise Architecture does save money! Component reuse does have a real purpose after
all.
Level 1 - Principles
Principle: Develop a plan to rationalize your applications and platform portfolio first.
Principle: Consolidate applications together onto a minimum number of servers.
The Case for Virtualisation
Virtualisation can save hardware on paper. In real life it is more complicated...
Perform consolidation first! Carefully design the virtual environment. Move consolidated machines to virtual servers. Group applications by:
• Usage• Availability by time• Availability by business need
Level 2: Principles
Principle: Consolidate before virtualisation. Principle: Virtualise for efficiency, not for the sake of
it.
The Brighter Shade of Green: The Cloud
Clouds come in many flavours:• Software as a Service (SaaS)• Software + Services (S+S)• Cloud Platforms
Clouds come in shades of green:• Virtualised platforms (Amazon)• Cloud Platforms (Azure and Google)
Making sure your Cloud has a Green Lining
Things to look for:• Compute platforms are better than virtualised• Match need to platform: architecture• Select vendor by green credentials: data centre
location, power sources The rest of the model still applies to Cloud What isn’t Green:
• “Private Clouds”• Local Hosting
Level 3: Principles
Principle: Use SaaS for commodity services Principle: Re-use S+S Services where possible Principle: Don’t virtualise new applications Principle: Pragmatically move applications to the
Cloud Principle: Choose cloud vendors by green
credentials
The Virtualisation Maturity Model
Q & (hopefully) A
Object Consulting operates a Sustainability Practices with solutions including Sustainable Architecture Design
www.objectconsulting.com.au
Kevin Francis
http://msmvps.org/blogs/architecture