SlideShare une entreprise Scribd logo
1  sur  73
http://oreil.ly/aaewge

http://amzn.to/cqBBiq

Portuguêsversãoembreve
REST in Practice
Jim Webber
http://jim.webber.name
Twitter: @jimwebber
Or: A Billion Transactions Per Month
Using the Web for Enterprise Heavy Lifting

Jim Webber
http://jim.webber.name
Twitter: @jimwebber
Today’s Enterprise Architecture
Accounting

Product Development

Marketing

Support
“SOA: Principles of Service Design underwent
a thorough technical review involving over
60 reviewers from different vendors,
organizations, and professions across North
America, Europe, and Asia. The book has been
formally endorsed by members of major SOA
vendors, including IBM, Microsoft, Oracle,
BEA, and Intel.”
-- Thomas Erl
Tomorrow’s Enterprise Architecture
BPM
Services
Business
Service
Data
Service

Business
Service
Data
Service

Data
Service

Business
Service
Data
Service

Data
Service
Nirvana Enterprise Architecture, or…

BPM
Service

Business
Service

Business
Service

Business
Service

ESB

Basic
Service

Basic
Service

Basic
Service

Basic
Service

Basic
Service
ESB - Erroneous Spaghetti Box?
Enterprise Service Bus
But we still do it.
Why?
Because it’s “less risky”
Why?
Because that’s what the market does
Why?
Because we need the -ilities
So let’s talk about those -ilities
Web Scale!
Traditional Enterprise Security
End to End Secure
Messaging

End to End Secure
Conversations
Security Tokens
and claims

Federating access
with tokens
…you
wouldn’t
use it at
home!
Bottleneck

Crash
recovery?

Denial of
Service

No trust
<message name="SayHelloRequest">
<part name="firstName" type="xsd:string"/>
</message>
<message name="SayHelloResponse">
<part name="greeting" type="xsd:string"/>
</message>
<portType name="Hello_PortType">
<operation name="sayHello">
<input message="tns:SayHelloRequest"/>
<output message="tns:SayHelloResponse"/>
</operation>
</portType>
<binding name="Hello_Binding" type="tns:Hello_PortType">
<soap:binding style="rpc"
transport="http://schemas.xmlsoap.org/soap/http"/>
<operation name="sayHello">
<soap:operationsoapAction="sayHello"/>
<input>
<soap:body
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
namespace="urn:examples:helloservice"
use="encoded"/>
</input>
<output>
<soap:body
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
namespace="urn:examples:helloservice"
use="encoded"/>
</output>
</operation>
</binding>

<service name="Hello_Service">
<documentation>WSDL File for HelloService</documentation>
<port binding="tns:Hello_Binding" name="Hello_Port">
<soap:address
location="http://localhost:8080/soap/servlet/rpcrouter"/>
</port>
</service>

Hello World!

<?xml version="1.0" encoding="UTF-8"?>
<definitions name="HelloService"
targetNamespace="http://www.ecerami.com/wsdl/HelloService.wsdl"
xmlns="http://schemas.xmlsoap.org/wsdl/"
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
xmlns:tns="http://www.ecerami.com/wsdl/HelloService.wsdl"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
Media
Types

The Web is a coordination platform
A Case Study
Client
• UK-based telecoms service provider
• Global customers (no easy downtime)
Problem
• Scalability and system resilience issues
• Huge growth curve to from a million to a
billion messages per month
• Costs
Platform Architecture

Carrier
Carrier
Carrier
Carrier

Where’s my
file gone?

Bottleneck

Nightmare!

Gateway

Integration
Database

Shared
Filesystem

Post
Processing

Voice to Text
Algorithms

Fix things up
here

Shoehorn it in that
other program
The £10* Million Solution
“Queue”
Database

Gateway

Carrier
Carrier
Carrier
Carrier

Shared
Filesystem

Enterprise Service Bus

Post
Processing

* Solution does not include actual implementation

Voice to Text
Algorithms
ThoughtWorks was given the output from a
previous enterprise consultancy…
…and told to “do that, but cheaper”
Think
differently!
(or even just stop and think)
Architecture is still important
Agile EA: Prioritise Service Delivery
Start by fixing
storage

Carrier
Carrier
Carrier
Carrier

Gateway

Integration
Database

Shared
Filesystem

Post
Processing

Voice to Text
Algorithms
Storage Manager Project Delivery
Small team

Java solution

3 Week Inception

Performance testing
throughout

14 iterations

– See Jones and Kua paper,
Agile 2009

Continuously built and
deployed for testing
Web-friendly Architecture
(mostly wallet-friendly too!)
Encapsulates
storage detail!

Fast!
Free!

Cacheable!

Jboss/Tomcat

Optimised disk
access!

Storage Manager

GPFS SAN

Spend £ on the
right
Infrastructure

Optimised server
config
What is going on
with these peaks?
here?
Hypothesis
Directories are becoming full, slowing
random access to files
Prediction
A single directory will result in
linearly degrading performance
Outcome
Adapt the directory structure to take
advantage of the underlying file
system
Improving Enterprise Architecture

Carrier
Carrier
Carrier
Carrier

Reduced
Load

Gateway

Scalable!

Integration
Database

Storage
Manager

Post
Processing

Voice to Text
Algorithms

“She’ll be
right”

Just shoehorn it in
that other
program
Storage Manager Benefits
• Immediate reduced load on integration
database
• Enabled removal of code from systems
• Delivered business value by keeping
customers happy
• “The best software we have ever deployed”
– Operations director

I’ll come back to this
What if…
We took our inspiration from
successful Web-scale companies?
What if…
And took the time to understand our
SLAs?
What if…
And picked the right technology
solution?
Not just the one we’re being sold?
What if…
We built a scalable compute
platform?
Grid Project Delivery
Larger team

Java solution

3.5 Week Inception

Performance testing
throughout

18 iterations
Continuously built and
deployed for testing
Web-friendly Architecture
(very wallet-friendly!)

Fault
Tolerant

ASR

ASR

ASR

ASR

Fault
Tolerant

Grid Pipeline
Just
HTTP

Embedded Jetty
Embedded Jetty
Embedded Jetty
Embedded Jetty
Embedded Jetty
Grid Manager
Grid Manager
Grid Manager
Grid Manager
Grid Manager

Just
HTTP

Sustainable
container for
business logic

ASR

£0
Software
Infrastructure

ASR

ASR

Grid Pipeline

ASR
Improving Enterprise Architecture
Scalable Processing Platform
Massively
Reduced
Load

Carrier
Carrier
Carrier
Carrier

Gateway

Scalable!

Integration
Database

Storage
Manager

Post
Processing

Grid

“She’ll be
right”

Scalable,
sustainable!
Grid Benefits
•
•
•
•
•

Scalable, resilient platform
Aligned with business goals
Further reduced load on integration database
Set architectural patterns
Deliver business value by processing more
messages at lower cost than ever before

• “The best software we have ever deployed”
– Operations director

Better every time!
R$27,300,000
Up-Front Cost of Bus Architecture
R$2,730,000
Actual Cost of Completed Project
R$0
Cost of Middleware
The Web works
And its economies
of scale eclipse
your vendors’

http://amzn.to/cqBBiq

Contenu connexe

Tendances

Velocity NY - How to Measure Revenue in Milliseconds
Velocity NY - How to Measure Revenue in MillisecondsVelocity NY - How to Measure Revenue in Milliseconds
Velocity NY - How to Measure Revenue in MillisecondsCliff Crocker
 
AWS Webcast - Introducing Amazon Redshift
AWS Webcast - Introducing Amazon RedshiftAWS Webcast - Introducing Amazon Redshift
AWS Webcast - Introducing Amazon RedshiftAmazon Web Services
 
Are You Well Architected?
Are You Well Architected?Are You Well Architected?
Are You Well Architected?joehack3r
 
2011 npo you have too many servers peter campbell
2011 npo you have too many servers   peter campbell2011 npo you have too many servers   peter campbell
2011 npo you have too many servers peter campbellPeter Campbell
 
Application Migrations at Scale AWS Summit SG 2017
Application Migrations at Scale AWS Summit SG 2017Application Migrations at Scale AWS Summit SG 2017
Application Migrations at Scale AWS Summit SG 2017Amazon Web Services
 
Strategic Approaches to AWS Enterprise Application Migration
Strategic Approaches to AWS Enterprise Application MigrationStrategic Approaches to AWS Enterprise Application Migration
Strategic Approaches to AWS Enterprise Application MigrationAmazon Web Services
 
Migrating you Spring Boot application to Java Modules
Migrating you Spring Boot application to Java ModulesMigrating you Spring Boot application to Java Modules
Migrating you Spring Boot application to Java ModulesJaap Coomans
 
AWS Well-Architected Framework: Operational Excellence Pillar
AWS Well-Architected Framework: Operational Excellence PillarAWS Well-Architected Framework: Operational Excellence Pillar
AWS Well-Architected Framework: Operational Excellence PillarJonathan LaCour
 
Key Steps for Setting up your AWS Journey for Success - Business
Key Steps for Setting up your AWS Journey for Success - BusinessKey Steps for Setting up your AWS Journey for Success - Business
Key Steps for Setting up your AWS Journey for Success - BusinessAmazon Web Services
 
Aws well architected-framework
Aws well architected-frameworkAws well architected-framework
Aws well architected-frameworksaifam
 
How Crownbet Disrupted the Australian Market, One Instance at a Time - Sessio...
How Crownbet Disrupted the Australian Market, One Instance at a Time - Sessio...How Crownbet Disrupted the Australian Market, One Instance at a Time - Sessio...
How Crownbet Disrupted the Australian Market, One Instance at a Time - Sessio...Amazon Web Services
 
Why You Are Secure in the AWS Cloud
Why You Are Secure in the AWS CloudWhy You Are Secure in the AWS Cloud
Why You Are Secure in the AWS CloudAmazon Web Services
 
Getting Started: What Should My Enterprise Do in the First 90 Days?
Getting Started: What Should My Enterprise Do in the First 90 Days?Getting Started: What Should My Enterprise Do in the First 90 Days?
Getting Started: What Should My Enterprise Do in the First 90 Days?Amazon Web Services
 
DevOps and Performance - Why, How and Best Practices - DevOps Meetup Sydney
DevOps and Performance - Why, How and Best Practices - DevOps Meetup SydneyDevOps and Performance - Why, How and Best Practices - DevOps Meetup Sydney
DevOps and Performance - Why, How and Best Practices - DevOps Meetup SydneyAndreas Grabner
 
API Architecture Summit 2014- APIs: A Mobile Developer's Perspective
API Architecture Summit 2014- APIs: A Mobile Developer's PerspectiveAPI Architecture Summit 2014- APIs: A Mobile Developer's Perspective
API Architecture Summit 2014- APIs: A Mobile Developer's PerspectiveNiall Roche
 
Spending Money to Save Money... and Getting Your Boss to Sign Off On It
Spending Money to Save Money... and Getting Your Boss to Sign Off On ItSpending Money to Save Money... and Getting Your Boss to Sign Off On It
Spending Money to Save Money... and Getting Your Boss to Sign Off On ItG2 Tech Group
 
How to Grow a Serverless Team
How to Grow a Serverless TeamHow to Grow a Serverless Team
How to Grow a Serverless TeamSheenBrisals
 
Synthetic and RUM - Best of bo
Synthetic and RUM - Best of boSynthetic and RUM - Best of bo
Synthetic and RUM - Best of boCliff Crocker
 
Cloud Innovation with Safety Rails
Cloud Innovation with Safety RailsCloud Innovation with Safety Rails
Cloud Innovation with Safety RailsAmazon Web Services
 

Tendances (20)

Velocity NY - How to Measure Revenue in Milliseconds
Velocity NY - How to Measure Revenue in MillisecondsVelocity NY - How to Measure Revenue in Milliseconds
Velocity NY - How to Measure Revenue in Milliseconds
 
AWS Webcast - Introducing Amazon Redshift
AWS Webcast - Introducing Amazon RedshiftAWS Webcast - Introducing Amazon Redshift
AWS Webcast - Introducing Amazon Redshift
 
Are You Well Architected?
Are You Well Architected?Are You Well Architected?
Are You Well Architected?
 
Realm 研究
Realm 研究Realm 研究
Realm 研究
 
2011 npo you have too many servers peter campbell
2011 npo you have too many servers   peter campbell2011 npo you have too many servers   peter campbell
2011 npo you have too many servers peter campbell
 
Application Migrations at Scale AWS Summit SG 2017
Application Migrations at Scale AWS Summit SG 2017Application Migrations at Scale AWS Summit SG 2017
Application Migrations at Scale AWS Summit SG 2017
 
Strategic Approaches to AWS Enterprise Application Migration
Strategic Approaches to AWS Enterprise Application MigrationStrategic Approaches to AWS Enterprise Application Migration
Strategic Approaches to AWS Enterprise Application Migration
 
Migrating you Spring Boot application to Java Modules
Migrating you Spring Boot application to Java ModulesMigrating you Spring Boot application to Java Modules
Migrating you Spring Boot application to Java Modules
 
AWS Well-Architected Framework: Operational Excellence Pillar
AWS Well-Architected Framework: Operational Excellence PillarAWS Well-Architected Framework: Operational Excellence Pillar
AWS Well-Architected Framework: Operational Excellence Pillar
 
Key Steps for Setting up your AWS Journey for Success - Business
Key Steps for Setting up your AWS Journey for Success - BusinessKey Steps for Setting up your AWS Journey for Success - Business
Key Steps for Setting up your AWS Journey for Success - Business
 
Aws well architected-framework
Aws well architected-frameworkAws well architected-framework
Aws well architected-framework
 
How Crownbet Disrupted the Australian Market, One Instance at a Time - Sessio...
How Crownbet Disrupted the Australian Market, One Instance at a Time - Sessio...How Crownbet Disrupted the Australian Market, One Instance at a Time - Sessio...
How Crownbet Disrupted the Australian Market, One Instance at a Time - Sessio...
 
Why You Are Secure in the AWS Cloud
Why You Are Secure in the AWS CloudWhy You Are Secure in the AWS Cloud
Why You Are Secure in the AWS Cloud
 
Getting Started: What Should My Enterprise Do in the First 90 Days?
Getting Started: What Should My Enterprise Do in the First 90 Days?Getting Started: What Should My Enterprise Do in the First 90 Days?
Getting Started: What Should My Enterprise Do in the First 90 Days?
 
DevOps and Performance - Why, How and Best Practices - DevOps Meetup Sydney
DevOps and Performance - Why, How and Best Practices - DevOps Meetup SydneyDevOps and Performance - Why, How and Best Practices - DevOps Meetup Sydney
DevOps and Performance - Why, How and Best Practices - DevOps Meetup Sydney
 
API Architecture Summit 2014- APIs: A Mobile Developer's Perspective
API Architecture Summit 2014- APIs: A Mobile Developer's PerspectiveAPI Architecture Summit 2014- APIs: A Mobile Developer's Perspective
API Architecture Summit 2014- APIs: A Mobile Developer's Perspective
 
Spending Money to Save Money... and Getting Your Boss to Sign Off On It
Spending Money to Save Money... and Getting Your Boss to Sign Off On ItSpending Money to Save Money... and Getting Your Boss to Sign Off On It
Spending Money to Save Money... and Getting Your Boss to Sign Off On It
 
How to Grow a Serverless Team
How to Grow a Serverless TeamHow to Grow a Serverless Team
How to Grow a Serverless Team
 
Synthetic and RUM - Best of bo
Synthetic and RUM - Best of boSynthetic and RUM - Best of bo
Synthetic and RUM - Best of bo
 
Cloud Innovation with Safety Rails
Cloud Innovation with Safety RailsCloud Innovation with Safety Rails
Cloud Innovation with Safety Rails
 

En vedette

Continuous Delivery and Patterns @xpdays 2013
Continuous Delivery and Patterns @xpdays 2013Continuous Delivery and Patterns @xpdays 2013
Continuous Delivery and Patterns @xpdays 2013Marcel Birkner
 
Continuous Integration & Continuous Delivery
Continuous Integration & Continuous DeliveryContinuous Integration & Continuous Delivery
Continuous Integration & Continuous DeliveryKonstantin Chukhlomin
 
Building a Modern Enterprise SOA at LinkedIn
Building a Modern Enterprise SOA at LinkedInBuilding a Modern Enterprise SOA at LinkedIn
Building a Modern Enterprise SOA at LinkedInJens Pillgram-Larsen
 
Measuring Usability
Measuring UsabilityMeasuring Usability
Measuring UsabilityIndira Pai
 
Beyond Continuous Delivery
Beyond Continuous DeliveryBeyond Continuous Delivery
Beyond Continuous DeliveryChris Hilton
 
What is Accessibility
What is AccessibilityWhat is Accessibility
What is AccessibilityThoughtworks
 
General Continuous Delivery for Agile Practitioners Meetup May 2014
General Continuous Delivery for Agile Practitioners Meetup May 2014General Continuous Delivery for Agile Practitioners Meetup May 2014
General Continuous Delivery for Agile Practitioners Meetup May 2014Chris Hilton
 
Branching and Merging and Bears, Oh My!
Branching and Merging and Bears, Oh My!Branching and Merging and Bears, Oh My!
Branching and Merging and Bears, Oh My!Imaginet
 

En vedette (8)

Continuous Delivery and Patterns @xpdays 2013
Continuous Delivery and Patterns @xpdays 2013Continuous Delivery and Patterns @xpdays 2013
Continuous Delivery and Patterns @xpdays 2013
 
Continuous Integration & Continuous Delivery
Continuous Integration & Continuous DeliveryContinuous Integration & Continuous Delivery
Continuous Integration & Continuous Delivery
 
Building a Modern Enterprise SOA at LinkedIn
Building a Modern Enterprise SOA at LinkedInBuilding a Modern Enterprise SOA at LinkedIn
Building a Modern Enterprise SOA at LinkedIn
 
Measuring Usability
Measuring UsabilityMeasuring Usability
Measuring Usability
 
Beyond Continuous Delivery
Beyond Continuous DeliveryBeyond Continuous Delivery
Beyond Continuous Delivery
 
What is Accessibility
What is AccessibilityWhat is Accessibility
What is Accessibility
 
General Continuous Delivery for Agile Practitioners Meetup May 2014
General Continuous Delivery for Agile Practitioners Meetup May 2014General Continuous Delivery for Agile Practitioners Meetup May 2014
General Continuous Delivery for Agile Practitioners Meetup May 2014
 
Branching and Merging and Bears, Oh My!
Branching and Merging and Bears, Oh My!Branching and Merging and Bears, Oh My!
Branching and Merging and Bears, Oh My!
 

Similaire à Rest in Practice, Brazil 2010

Jimwebber soa
Jimwebber soaJimwebber soa
Jimwebber soad0nn9n
 
Convince your boss to go Serverless at AWS User Group Tirupathi and Serverles...
Convince your boss to go Serverless at AWS User Group Tirupathi and Serverles...Convince your boss to go Serverless at AWS User Group Tirupathi and Serverles...
Convince your boss to go Serverless at AWS User Group Tirupathi and Serverles...Vadym Kazulkin
 
Talk IT_Oracle AP_이진호 부장_111102
Talk IT_Oracle AP_이진호 부장_111102 Talk IT_Oracle AP_이진호 부장_111102
Talk IT_Oracle AP_이진호 부장_111102 Cana Ko
 
PHP – Faster And Cheaper. Scale Vertically with IBM i
PHP – Faster And Cheaper. Scale Vertically with IBM iPHP – Faster And Cheaper. Scale Vertically with IBM i
PHP – Faster And Cheaper. Scale Vertically with IBM iSam Hennessy
 
AWS re:Invent 2016: Getting Started with Serverless Architectures (CMP211)
AWS re:Invent 2016: Getting Started with Serverless Architectures (CMP211)AWS re:Invent 2016: Getting Started with Serverless Architectures (CMP211)
AWS re:Invent 2016: Getting Started with Serverless Architectures (CMP211)Amazon Web Services
 
Application Acceleration: Faster Performance for End Users
Application Acceleration: Faster Performance for End Users	Application Acceleration: Faster Performance for End Users
Application Acceleration: Faster Performance for End Users Eric Kavanagh
 
Introducing Database Offerings on AWS - Technical 101
Introducing Database Offerings on AWS - Technical 101Introducing Database Offerings on AWS - Technical 101
Introducing Database Offerings on AWS - Technical 101Amazon Web Services
 
Amazon Web Services: Building a 'Web-Scale Computing' Architecture
Amazon Web Services: Building a 'Web-Scale Computing' ArchitectureAmazon Web Services: Building a 'Web-Scale Computing' Architecture
Amazon Web Services: Building a 'Web-Scale Computing' Architecturegoodfriday
 
Amazon Aurora (MySQL, Postgres)
Amazon Aurora (MySQL, Postgres)Amazon Aurora (MySQL, Postgres)
Amazon Aurora (MySQL, Postgres)AWS Germany
 
AWS re:Invent 2016: Relational and NoSQL Databases on AWS: NBC, MarkLogic, an...
AWS re:Invent 2016: Relational and NoSQL Databases on AWS: NBC, MarkLogic, an...AWS re:Invent 2016: Relational and NoSQL Databases on AWS: NBC, MarkLogic, an...
AWS re:Invent 2016: Relational and NoSQL Databases on AWS: NBC, MarkLogic, an...Amazon Web Services
 
5 Years Of Building SaaS On AWS
5 Years Of Building SaaS On AWS5 Years Of Building SaaS On AWS
5 Years Of Building SaaS On AWSChristian Beedgen
 
The Enterprise Architecture You Always Wanted
The Enterprise Architecture You Always WantedThe Enterprise Architecture You Always Wanted
The Enterprise Architecture You Always WantedThoughtworks
 
Mainframe Modernization with AWS: Patterns and Best Practices
Mainframe Modernization with AWS: Patterns and Best PracticesMainframe Modernization with AWS: Patterns and Best Practices
Mainframe Modernization with AWS: Patterns and Best PracticesAmazon Web Services
 
AWS Empowering Digital Marketing - September 2013
AWS Empowering Digital Marketing - September 2013AWS Empowering Digital Marketing - September 2013
AWS Empowering Digital Marketing - September 2013Amazon Web Services
 
AWS Big Data combo
AWS Big Data comboAWS Big Data combo
AWS Big Data comboJulien SIMON
 
Born in the Cloud, Built like a Startup
Born in the Cloud, Built like a StartupBorn in the Cloud, Built like a Startup
Born in the Cloud, Built like a StartupAmazon Web Services
 
WTIA Cloud Computing Series - Part II: Scaling into the Cloud with Amazon Web...
WTIA Cloud Computing Series - Part II: Scaling into the Cloud with Amazon Web...WTIA Cloud Computing Series - Part II: Scaling into the Cloud with Amazon Web...
WTIA Cloud Computing Series - Part II: Scaling into the Cloud with Amazon Web...Washington Technology Industry Association
 
Building a modern data platform in the cloud. AWS DevDay Nordics
Building a modern data platform in the cloud. AWS DevDay NordicsBuilding a modern data platform in the cloud. AWS DevDay Nordics
Building a modern data platform in the cloud. AWS DevDay Nordicsjavier ramirez
 
ARC201_Scaling Up to Your First 10 Million Users
ARC201_Scaling Up to Your First 10 Million UsersARC201_Scaling Up to Your First 10 Million Users
ARC201_Scaling Up to Your First 10 Million UsersAmazon Web Services
 

Similaire à Rest in Practice, Brazil 2010 (20)

Jimwebber soa
Jimwebber soaJimwebber soa
Jimwebber soa
 
Convince your boss to go Serverless at AWS User Group Tirupathi and Serverles...
Convince your boss to go Serverless at AWS User Group Tirupathi and Serverles...Convince your boss to go Serverless at AWS User Group Tirupathi and Serverles...
Convince your boss to go Serverless at AWS User Group Tirupathi and Serverles...
 
Talk IT_Oracle AP_이진호 부장_111102
Talk IT_Oracle AP_이진호 부장_111102 Talk IT_Oracle AP_이진호 부장_111102
Talk IT_Oracle AP_이진호 부장_111102
 
PHP – Faster And Cheaper. Scale Vertically with IBM i
PHP – Faster And Cheaper. Scale Vertically with IBM iPHP – Faster And Cheaper. Scale Vertically with IBM i
PHP – Faster And Cheaper. Scale Vertically with IBM i
 
AWS re:Invent 2016: Getting Started with Serverless Architectures (CMP211)
AWS re:Invent 2016: Getting Started with Serverless Architectures (CMP211)AWS re:Invent 2016: Getting Started with Serverless Architectures (CMP211)
AWS re:Invent 2016: Getting Started with Serverless Architectures (CMP211)
 
Application Acceleration: Faster Performance for End Users
Application Acceleration: Faster Performance for End Users	Application Acceleration: Faster Performance for End Users
Application Acceleration: Faster Performance for End Users
 
Introducing Database Offerings on AWS - Technical 101
Introducing Database Offerings on AWS - Technical 101Introducing Database Offerings on AWS - Technical 101
Introducing Database Offerings on AWS - Technical 101
 
Amazon Web Services: Building a 'Web-Scale Computing' Architecture
Amazon Web Services: Building a 'Web-Scale Computing' ArchitectureAmazon Web Services: Building a 'Web-Scale Computing' Architecture
Amazon Web Services: Building a 'Web-Scale Computing' Architecture
 
Amazon Aurora (MySQL, Postgres)
Amazon Aurora (MySQL, Postgres)Amazon Aurora (MySQL, Postgres)
Amazon Aurora (MySQL, Postgres)
 
AWS re:Invent 2016: Relational and NoSQL Databases on AWS: NBC, MarkLogic, an...
AWS re:Invent 2016: Relational and NoSQL Databases on AWS: NBC, MarkLogic, an...AWS re:Invent 2016: Relational and NoSQL Databases on AWS: NBC, MarkLogic, an...
AWS re:Invent 2016: Relational and NoSQL Databases on AWS: NBC, MarkLogic, an...
 
5 Years Of Building SaaS On AWS
5 Years Of Building SaaS On AWS5 Years Of Building SaaS On AWS
5 Years Of Building SaaS On AWS
 
The Enterprise Architecture You Always Wanted
The Enterprise Architecture You Always WantedThe Enterprise Architecture You Always Wanted
The Enterprise Architecture You Always Wanted
 
Mainframe Modernization with AWS: Patterns and Best Practices
Mainframe Modernization with AWS: Patterns and Best PracticesMainframe Modernization with AWS: Patterns and Best Practices
Mainframe Modernization with AWS: Patterns and Best Practices
 
AWS Empowering Digital Marketing - September 2013
AWS Empowering Digital Marketing - September 2013AWS Empowering Digital Marketing - September 2013
AWS Empowering Digital Marketing - September 2013
 
AWS Big Data combo
AWS Big Data comboAWS Big Data combo
AWS Big Data combo
 
Born in the Cloud, Built like a Startup
Born in the Cloud, Built like a StartupBorn in the Cloud, Built like a Startup
Born in the Cloud, Built like a Startup
 
WTIA Cloud Computing Series - Part II: Scaling into the Cloud with Amazon Web...
WTIA Cloud Computing Series - Part II: Scaling into the Cloud with Amazon Web...WTIA Cloud Computing Series - Part II: Scaling into the Cloud with Amazon Web...
WTIA Cloud Computing Series - Part II: Scaling into the Cloud with Amazon Web...
 
Building a modern data platform in the cloud. AWS DevDay Nordics
Building a modern data platform in the cloud. AWS DevDay NordicsBuilding a modern data platform in the cloud. AWS DevDay Nordics
Building a modern data platform in the cloud. AWS DevDay Nordics
 
ARC201_Scaling Up to Your First 10 Million Users
ARC201_Scaling Up to Your First 10 Million UsersARC201_Scaling Up to Your First 10 Million Users
ARC201_Scaling Up to Your First 10 Million Users
 
DevOps on AWS
DevOps on AWSDevOps on AWS
DevOps on AWS
 

Plus de Thoughtworks

Design System as a Product
Design System as a ProductDesign System as a Product
Design System as a ProductThoughtworks
 
Designers, Developers & Dogs
Designers, Developers & DogsDesigners, Developers & Dogs
Designers, Developers & DogsThoughtworks
 
Cloud-first for fast innovation
Cloud-first for fast innovationCloud-first for fast innovation
Cloud-first for fast innovationThoughtworks
 
More impact with flexible teams
More impact with flexible teamsMore impact with flexible teams
More impact with flexible teamsThoughtworks
 
Culture of Innovation
Culture of InnovationCulture of Innovation
Culture of InnovationThoughtworks
 
Developer Experience
Developer ExperienceDeveloper Experience
Developer ExperienceThoughtworks
 
When we design together
When we design togetherWhen we design together
When we design togetherThoughtworks
 
Hardware is hard(er)
Hardware is hard(er)Hardware is hard(er)
Hardware is hard(er)Thoughtworks
 
Customer-centric innovation enabled by cloud
 Customer-centric innovation enabled by cloud Customer-centric innovation enabled by cloud
Customer-centric innovation enabled by cloudThoughtworks
 
Amazon's Culture of Innovation
Amazon's Culture of InnovationAmazon's Culture of Innovation
Amazon's Culture of InnovationThoughtworks
 
When in doubt, go live
When in doubt, go liveWhen in doubt, go live
When in doubt, go liveThoughtworks
 
Don't cross the Rubicon
Don't cross the RubiconDon't cross the Rubicon
Don't cross the RubiconThoughtworks
 
Your test coverage is a lie!
Your test coverage is a lie!Your test coverage is a lie!
Your test coverage is a lie!Thoughtworks
 
Docker container security
Docker container securityDocker container security
Docker container securityThoughtworks
 
Redefining the unit
Redefining the unitRedefining the unit
Redefining the unitThoughtworks
 
Technology Radar Webinar UK - Vol. 22
Technology Radar Webinar UK - Vol. 22Technology Radar Webinar UK - Vol. 22
Technology Radar Webinar UK - Vol. 22Thoughtworks
 
A Tribute to Turing
A Tribute to TuringA Tribute to Turing
A Tribute to TuringThoughtworks
 
Rsa maths worked out
Rsa maths worked outRsa maths worked out
Rsa maths worked outThoughtworks
 

Plus de Thoughtworks (20)

Design System as a Product
Design System as a ProductDesign System as a Product
Design System as a Product
 
Designers, Developers & Dogs
Designers, Developers & DogsDesigners, Developers & Dogs
Designers, Developers & Dogs
 
Cloud-first for fast innovation
Cloud-first for fast innovationCloud-first for fast innovation
Cloud-first for fast innovation
 
More impact with flexible teams
More impact with flexible teamsMore impact with flexible teams
More impact with flexible teams
 
Culture of Innovation
Culture of InnovationCulture of Innovation
Culture of Innovation
 
Dual-Track Agile
Dual-Track AgileDual-Track Agile
Dual-Track Agile
 
Developer Experience
Developer ExperienceDeveloper Experience
Developer Experience
 
When we design together
When we design togetherWhen we design together
When we design together
 
Hardware is hard(er)
Hardware is hard(er)Hardware is hard(er)
Hardware is hard(er)
 
Customer-centric innovation enabled by cloud
 Customer-centric innovation enabled by cloud Customer-centric innovation enabled by cloud
Customer-centric innovation enabled by cloud
 
Amazon's Culture of Innovation
Amazon's Culture of InnovationAmazon's Culture of Innovation
Amazon's Culture of Innovation
 
When in doubt, go live
When in doubt, go liveWhen in doubt, go live
When in doubt, go live
 
Don't cross the Rubicon
Don't cross the RubiconDon't cross the Rubicon
Don't cross the Rubicon
 
Error handling
Error handlingError handling
Error handling
 
Your test coverage is a lie!
Your test coverage is a lie!Your test coverage is a lie!
Your test coverage is a lie!
 
Docker container security
Docker container securityDocker container security
Docker container security
 
Redefining the unit
Redefining the unitRedefining the unit
Redefining the unit
 
Technology Radar Webinar UK - Vol. 22
Technology Radar Webinar UK - Vol. 22Technology Radar Webinar UK - Vol. 22
Technology Radar Webinar UK - Vol. 22
 
A Tribute to Turing
A Tribute to TuringA Tribute to Turing
A Tribute to Turing
 
Rsa maths worked out
Rsa maths worked outRsa maths worked out
Rsa maths worked out
 

Dernier

Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfhans926745
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdflior mazor
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 

Dernier (20)

Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 

Rest in Practice, Brazil 2010

Notes de l'éditeur

  1. We’re doing SOA, but it’s painful and and risky. Our technology platform eclipses our business imperatives.The technical/organisational benefits hold true, but we want a better way to deliver
  2. Manchester:There are folks that have made this work. Neil Walker (in the room?) has applied Guerrilla SOA style architecture and governance to this model successfully. This is an isolated success story however.
  3. Your very own Minas Tirith!
  4. Just buy more big iron and cluster it.Unthinking!Harder to achieve than “just throwing hardware at it”
  5. Single set of widely adopted protocols and formatsLoosely coupled by defaultApplication model encourages federated caching
  6. WS-Trust for tokensWS-federation for multiparty authentication and authorisation
  7. A more modern French bridge!Architect: Norman Foster, and Englishman
  8. TCP over TCP/IP?Reliable store and forward: think about crash recovery – who’s authoritativeBrokers? Scalability problemsProprietary interconnects? Depends if you can justify the cost!
  9. Status codes: cordinationVerbs: reliabiityMedia types: service contracts!Hypermedia: protocolSemantics and Microformats: a business vocabulary for contracts
  10. Voice to text conversation, thousands of conversions per second globally
  11. High latency in the SLASometimes as much as 20 minutesLow contention problem domain, system highly amenable to parallelisation and horizontal scale outBut nothing actually built to exploit this property
  12. An expensive act of faithThe Bus architecture “just works”No evidenceThe Bus architecture will scaleNo evidence for, much evidence againstThe bus architecture is simpleThe implementation isn’t though!
  13. What if we drew our inspiration from successful Web-scale companies?What are our goals for growth? Reliability?Why not use a different technology?Why deliver incrementally?Guerrilla SOA!Start with scalable storage
  14. Rethink designThink Web not EnterpriseThink about the customers, not just about ITAnd do it quickly because no design is complete without rapid validation through testing and implementation – NO NAVAL GAZING
  15. Carrier gateway can be scaled with enterprise tech like queuesIntegration database too risky to touch, needs replacing in medium term, but in short term less load is goodPost processing out of scope for nowFile system is too slow, too messy, no governance, flakyVoice to text algorithms, no governance, no way to properly scale, no monitoring, no ability to adapt to changing workload
  16. In one iteration, we created a skeletal storage serviceBased on Web standards, just like Amazon’s S3We used open source tools, libraries and operating systems
  17. We put high loads through it, and measured its behaviourWe met out SLA. Easily.
  18. We invested a single iterationWe got data that suggested our architectural approach would workCost of infrastructure, approximately $0We planned and built a system based on this empirical data
  19. Small team4 devs, 1 architect, 1 analyst, 1 QAInceptionArchitecture, story gathering, estimation14 iterationsReporting Weekly showcasesTeam kanbanJava-based solutionBDD’d throughoutDSLs used for functional testing, very cool!Performance testing throughout!Jmeter, integrated into buildContinuously built and deployed for testingNo production surprises
  20. Immediate reduced load on integration databaseHigher system stability/fewer disasters!Enabled removal of code from systemsLess to maintain, fewer places for bugs to hideDelivered business value by keeping customers happyMore messages got through, incidents decreased, carriers much happier
  21. This time around, the technical approach was already understoodOur challenge was to build a larger system, with many more moving parts
  22. Small team9 devs, 1 architect, 1 analyst, 2 QAInceptionArchitecture, story gathering, estimation14 iterationsReporting Weekly showcasesTeam kanbanJava-based solutionBDD’d throughoutBrowser-based testingDSLs used for functional testing, very cool!Performance testing throughout!Jmeter, integrated into buildContinuously built and deployed for testingNo production surprises
  23. Scalable, resilient platformAdd more hardware, scale horizontallyHardware crashes, system continuesAligned with business goalsGrowthExceptional customer experienceLowering costsFurther reduced load on integration databaseHigher system stability/fewer disasters!Set architectural precedent Voice to text algorithms have a stable place to live, no longer shoe-horningA place for everything, and everything in its place
  24. Remember the original cost? Around $25 million, without any implementation
  25. Total cost of this projectAround $2.5 million. Complete, delivered, functioning.Delivering value to the business