SlideShare ist ein Scribd-Unternehmen logo
1 von 31
Downloaden Sie, um offline zu lesen
© 2014!
RECIPES FOR A SUCCESSFUL CLOUDFOUNDRY
PRODUCTION DEPLOYMENT!
Vinicius	
  Carvalho	
  –	
  Pivotal	
  
@vccarvalho	
  
I	
  am	
  a	
  developer	
  
CF	
  power	
  up	
  
Challenges	
  
•  Large	
  distributed	
  Systems	
  :	
  Failure	
  becomes	
  the	
  
norm	
  not	
  the	
  excepAon	
  
•  Enhance	
  developer	
  experience	
  of	
  your	
  API	
  
•  Enforce	
  security	
  and	
  access	
  control	
  of	
  endpoints	
  
•  Service	
  discovery	
  
•  Avoid	
  duplicaAon	
  
Give	
  this	
  to	
  your	
  	
  
developers	
  
They	
  will	
  soon	
  	
  
as	
  for	
  this	
  
Powered	
  by	
  
Swagger	
  
Talking	
  about	
  services	
  
Business	
  Value	
  
Reusability	
  
Biz	
  
Services	
  
Biz	
  
Services	
  
Biz	
  
Services	
  
Core	
  
Services	
  
Core	
  
Services	
  
Core	
  
Services	
  
Core	
  
Services	
  
Data	
  
Services	
  
Data	
  
Services	
  
Data	
  
Services	
  
Data	
  
Services	
  
Data	
  
Services	
  
Data	
  
Services	
  
Apps	
   API	
  
Core	
  Biz	
  
Services	
  
Who	
  the	
  hell	
  
are	
  those?	
  
Service	
  Registry	
  
•  Stores	
  service	
  informaAon	
  
– API	
  endpoints	
  
– Security	
  metadata	
  (Access	
  Control	
  Lists,	
  Roles)	
  
– Resource	
  relaAonships	
  
– Quality	
  of	
  service	
  
– Extended	
  Metadata	
  
Service	
  Registry	
  
Services	
  
Instances	
  
API	
  
Endpoints	
  
Security	
  
UI	
  
Metadata	
  
QOS	
  
Billing	
  
/api/apidocs!
GET /users!
PUT /{id}!
GET /users!
- ClientId: myapp!
- roles: [USER,MANAGER]
!!
User : {!
SSN: {!
type: “string”,!
selectable: false,!
editable: false!
}!
}!
/search : {!
limit : {!
value : 300,!
time: 3600,!
unit: “seconds”!
} !
}!
/search : {!
rate : {!
currency : “USD”,!
value : 0.10,!
meterType: “UNIT”,!
meterValue: 1000!
}!
}!
Cloud	
  Controller	
  
DEA	
   Registry	
  
GET	
  /v2/events	
  
GET	
  /api/apidocs	
  
push	
  app	
  
+	
  app	
  MD	
  
Router	
  
UAA	
  
	
  	
  	
  NeUy	
  Pipeline	
  
GET /users!
Authentication: Bearer <token>!
Service	
  Proxy	
  
User	
  
Service	
  
Registry	
  
Obtain	
  
metadata	
  
Validate	
  
CredenAals	
  
QoS	
   Billing	
  
UAA	
  
	
  	
  	
  NeUy	
  Pipeline	
  
GET /users!
Authentication: Bearer <token>!
Service	
  Proxy	
  
User	
  
Service	
  
Registry	
  
Data	
  
Filter	
  
{!
“firstname” : “joe”,!
“lastname” : “doe”,!
“comp” : 135,000.00!
}!
Obtain	
  
metadata	
  
Validate	
  
CredenAals	
  
QoS	
   Billing	
  
UAA	
  
	
  	
  	
  NeUy	
  Pipeline	
  
GET /users!
Authentication: Bearer <token>!
Service	
  Proxy	
  
User	
  
Service	
  
Outbound	
  	
  
handler	
  
Registry	
  
Data	
  
Filter	
  
Obtain	
  
metadata	
  
Validate	
  
CredenAals	
  
QoS	
   Billing	
  
Outbound	
  	
  
handler	
  
{!
“firstname” : “joe”,!
“lastname” : “doe”,!
}!
{!
“firstname” : “joe”,!
“lastname” : “doe”,!
“comp” : 135,000.00!
}!
Security	
  	
  
•  Don’t	
  use	
  LDAP	
  for	
  authorizaAon	
  
•  Corporate	
  LDAPs	
  can	
  be	
  very	
  polluted,	
  move	
  away	
  from	
  role	
  
mapping	
  and	
  don’t	
  add	
  more	
  noise	
  to	
  them	
  
UAA	
  
LDAP	
  
AuthenAcate	
  
{!
"jti":"4657c1a8-b2d0-4304-b1fe-7bdc203d944f",!
"aud":["openid","cloud_controller"],!
"scope":["read"],!
"email":"marissa@test.org",!
"exp":138943173,!
"user_id":"41750ae1-b2d0-4304-b1fe-7bdc24256387",!
"user_name":"marissa",!
"client_id":"vmc"!
}!
ACLS	
  
Biz	
  
Services	
  
Data	
  
Services	
  
Core	
  
Services	
  
Make	
  sure	
  your	
  rest	
  client	
  propagates	
  the	
  token	
  for	
  the	
  next	
  service	
  
The	
  Dark	
  side	
  of	
  microservices	
  architectures	
  
•  MulAple	
  remote	
  calls	
  
•  EnAty	
  relaAonships	
  
•  Great	
  arAcle	
  by	
  Chris	
  Richardson	
  :	
  hUp://
www.infoq.com/arAcles/microservices-­‐intro	
  
Biz	
  
Services	
  
Biz	
  
Services	
  
Data	
  
Services	
  
Data	
  
Services	
  
Data	
  
Services	
  
Data	
  
Services	
  
Data	
  
Services	
  
Data	
  
Services	
  
Apps	
  
Core	
  
Services	
  
Core	
  
Services	
  
Core	
  
Services	
  
Core	
  
Services	
  
Response	
  Time	
  
Biz	
  
Services	
  
Biz	
  
Services	
  
Data	
  
Services	
  
Data	
  
Services	
  
Data	
  
Services	
  
Data	
  
Services	
  
Data	
  
Services	
  
Data	
  
Services	
  
Apps	
  
Core	
  
Services	
  
Core	
  
Services	
  
Core	
  
Services	
  
Core	
  
Services	
  
Response	
  Time	
  
Biz	
  
Services	
  
Biz	
  
Services	
  
Data	
  
Services	
  
Data	
  
Services	
  
Data	
  
Services	
  
Data	
  
Services	
  
Data	
  
Services	
  
Data	
  
Services	
  
Apps	
  
Core	
  
Services	
  
Core	
  
Services	
  
Core	
  
Services	
  
Core	
  
Services	
  
Response	
  Time	
  
Biz	
  
Services	
  
Biz	
  
Services	
  
Data	
  
Services	
  
Data	
  
Services	
  
Data	
  
Services	
  
Data	
  
Services	
  
Data	
  
Services	
  
Data	
  
Services	
  
Apps	
  
Core	
  
Services	
  
Core	
  
Services	
  
Core	
  
Services	
  
Core	
  
Services	
  
Response	
  Time	
  
TX	
  Manager	
  
Hibernate	
  	
  
Session	
  
TradiAonal	
  web	
  applicaAon	
  
Controller	
  
Service	
   Repo	
  
EnAty	
   EnAty	
  
Cascading operations
are managed by the
session factory
Ripple	
  effect	
  of	
  enAty	
  relaAonship	
  
Product	
  
Inventory	
  
Orders	
   Users	
  
Event	
  driven	
  data	
  services	
  
Inventory	
   Orders	
   Users	
  
{enAty:	
  Product,	
  
Event:	
  UPDATE}	
  
Product	
  
HTTP	
  events	
  
•  High	
  efficient	
  server	
  sent	
  events	
  using	
  non	
  
blocking	
  containers	
  (JeUy	
  9,	
  Tomcat	
  8,	
  
Spray,	
  Play,	
  NeUy)	
  
•  Use	
  webhooks	
  when	
  comet/conAnuaAons	
  
are	
  not	
  possible	
  
•  Pubsubhubbub?	
  
Product	
  
GET	
  /{id}	
  
PUT	
  /{Id}	
  
POST	
  /	
  
	
  
GET	
  /events	
  à	
  SSE	
  
POST	
  /hook/	
  à	
  callback	
  url	
  
Polyglot	
  persistence	
  
Polyglot	
  persistence	
  
Data	
  	
  
Service	
  
{!
"posts": [{!
"id": "1",!
"title": “The four levels of HA on pivotal
CF",!
"links": [{!
”author": {!
"href": "http://blog.gopivotal.com/author/
cdavis",!
"id":”ffd5b644-b220-4f7c-
efad-2dfee6768bb9” !
}]!
}!
}]!
}!
EnAty	
  	
  
RelaAonship	
  
Data	
  	
  
Service	
  
Data	
  	
  
Service	
  
Data	
  	
  
Service	
  
Data	
  	
  
Service	
  
Thank	
  you!	
  

Weitere ähnliche Inhalte

Was ist angesagt?

Patterns & Practices of Microservices
Patterns & Practices of MicroservicesPatterns & Practices of Microservices
Patterns & Practices of Microservices
Wesley Reisz
 

Was ist angesagt? (20)

(WEB301) Operational Web Log Analysis | AWS re:Invent 2014
(WEB301) Operational Web Log Analysis | AWS re:Invent 2014(WEB301) Operational Web Log Analysis | AWS re:Invent 2014
(WEB301) Operational Web Log Analysis | AWS re:Invent 2014
 
ClearScale: Continuous Automation with Docker on AWS
ClearScale: Continuous Automation with Docker on AWSClearScale: Continuous Automation with Docker on AWS
ClearScale: Continuous Automation with Docker on AWS
 
(DVO314) USA Today Uses Chef & AWS for Infrastructure Standardization
(DVO314) USA Today Uses Chef & AWS for Infrastructure Standardization(DVO314) USA Today Uses Chef & AWS for Infrastructure Standardization
(DVO314) USA Today Uses Chef & AWS for Infrastructure Standardization
 
Preparing for Data Residency and Custom Domains
Preparing for Data Residency and Custom DomainsPreparing for Data Residency and Custom Domains
Preparing for Data Residency and Custom Domains
 
Chris Munns, DevOps @ Amazon: Microservices, 2 Pizza Teams, & 50 Million Depl...
Chris Munns, DevOps @ Amazon: Microservices, 2 Pizza Teams, & 50 Million Depl...Chris Munns, DevOps @ Amazon: Microservices, 2 Pizza Teams, & 50 Million Depl...
Chris Munns, DevOps @ Amazon: Microservices, 2 Pizza Teams, & 50 Million Depl...
 
Pragmatic CQRS with existing applications and databases (Digital Xchange, May...
Pragmatic CQRS with existing applications and databases (Digital Xchange, May...Pragmatic CQRS with existing applications and databases (Digital Xchange, May...
Pragmatic CQRS with existing applications and databases (Digital Xchange, May...
 
Docker in the Enterprise
Docker in the EnterpriseDocker in the Enterprise
Docker in the Enterprise
 
Running Microservices on AWS Elastic Beanstalk
Running Microservices on AWS Elastic BeanstalkRunning Microservices on AWS Elastic Beanstalk
Running Microservices on AWS Elastic Beanstalk
 
(DVO312) Sony: Building At-Scale Services with AWS Elastic Beanstalk
(DVO312) Sony: Building At-Scale Services with AWS Elastic Beanstalk(DVO312) Sony: Building At-Scale Services with AWS Elastic Beanstalk
(DVO312) Sony: Building At-Scale Services with AWS Elastic Beanstalk
 
Integrating Microservices with Apache Camel
Integrating Microservices with Apache CamelIntegrating Microservices with Apache Camel
Integrating Microservices with Apache Camel
 
jQuery and OData - Perfect Together
jQuery and OData - Perfect TogetherjQuery and OData - Perfect Together
jQuery and OData - Perfect Together
 
Set up an SharePoint On-Premises environment for developing provider-hosted a...
Set up an SharePoint On-Premises environment for developing provider-hosted a...Set up an SharePoint On-Premises environment for developing provider-hosted a...
Set up an SharePoint On-Premises environment for developing provider-hosted a...
 
Leaning into Server to Cloud App Migration
Leaning into Server to Cloud App MigrationLeaning into Server to Cloud App Migration
Leaning into Server to Cloud App Migration
 
Infrastructure as Code for Beginners
Infrastructure as Code for BeginnersInfrastructure as Code for Beginners
Infrastructure as Code for Beginners
 
Patterns & Practices of Microservices
Patterns & Practices of MicroservicesPatterns & Practices of Microservices
Patterns & Practices of Microservices
 
(ARC401) Cloud First: New Architecture for New Infrastructure
(ARC401) Cloud First: New Architecture for New Infrastructure(ARC401) Cloud First: New Architecture for New Infrastructure
(ARC401) Cloud First: New Architecture for New Infrastructure
 
AWS APAC Webinar Week - Securing Your Business on AWS
AWS APAC Webinar Week - Securing Your Business on AWSAWS APAC Webinar Week - Securing Your Business on AWS
AWS APAC Webinar Week - Securing Your Business on AWS
 
Building API-Driven Microservices with Amazon API Gateway - AWS Online Tech T...
Building API-Driven Microservices with Amazon API Gateway - AWS Online Tech T...Building API-Driven Microservices with Amazon API Gateway - AWS Online Tech T...
Building API-Driven Microservices with Amazon API Gateway - AWS Online Tech T...
 
Hands-On Terraform Module for AWS Landing Zone at HashiTalks2020
Hands-On Terraform Module for AWS Landing Zone at HashiTalks2020Hands-On Terraform Module for AWS Landing Zone at HashiTalks2020
Hands-On Terraform Module for AWS Landing Zone at HashiTalks2020
 
(DVO201) Scaling Your Web Applications with AWS Elastic Beanstalk
(DVO201) Scaling Your Web Applications with AWS Elastic Beanstalk(DVO201) Scaling Your Web Applications with AWS Elastic Beanstalk
(DVO201) Scaling Your Web Applications with AWS Elastic Beanstalk
 

Andere mochten auch

Dte scholarship advt
Dte scholarship advtDte scholarship advt
Dte scholarship advt
gangarmitesh
 
Temario de gabinete
Temario de gabineteTemario de gabinete
Temario de gabinete
Torreani
 
Trendlab Telco Report 2013/14 - Global Trends and Challenges for Companies an...
Trendlab Telco Report 2013/14 - Global Trends and Challenges for Companies an...Trendlab Telco Report 2013/14 - Global Trends and Challenges for Companies an...
Trendlab Telco Report 2013/14 - Global Trends and Challenges for Companies an...
Sasserath Munzinger Plus
 
Popvox 2.0 tutorial 11 24 14
Popvox 2.0 tutorial 11 24 14Popvox 2.0 tutorial 11 24 14
Popvox 2.0 tutorial 11 24 14
POPVOX
 

Andere mochten auch (20)

Seguro moto
Seguro motoSeguro moto
Seguro moto
 
Dte scholarship advt
Dte scholarship advtDte scholarship advt
Dte scholarship advt
 
AMIGOS UTA
AMIGOS  UTAAMIGOS  UTA
AMIGOS UTA
 
Java und Python - Das Beste aus beiden Welten nutzen
Java und Python - Das Beste aus beiden Welten nutzenJava und Python - Das Beste aus beiden Welten nutzen
Java und Python - Das Beste aus beiden Welten nutzen
 
Ucasocialmediav2
Ucasocialmediav2Ucasocialmediav2
Ucasocialmediav2
 
Lorenita
LorenitaLorenita
Lorenita
 
Temario de gabinete
Temario de gabineteTemario de gabinete
Temario de gabinete
 
Email marketing, charla Web Cat - Barcelona
Email marketing, charla Web Cat - Barcelona  Email marketing, charla Web Cat - Barcelona
Email marketing, charla Web Cat - Barcelona
 
Imprimir plinio
Imprimir plinioImprimir plinio
Imprimir plinio
 
YesEuropa Building Bridges Association
YesEuropa Building Bridges AssociationYesEuropa Building Bridges Association
YesEuropa Building Bridges Association
 
Los verdaderos ejercicios abdominales
Los verdaderos ejercicios abdominalesLos verdaderos ejercicios abdominales
Los verdaderos ejercicios abdominales
 
Central Standard Wichita, KS 2011 Informatioin Packet
Central Standard Wichita, KS 2011 Informatioin PacketCentral Standard Wichita, KS 2011 Informatioin Packet
Central Standard Wichita, KS 2011 Informatioin Packet
 
Grey Oaks Partners
Grey Oaks PartnersGrey Oaks Partners
Grey Oaks Partners
 
Trendlab Telco Report 2013/14 - Global Trends and Challenges for Companies an...
Trendlab Telco Report 2013/14 - Global Trends and Challenges for Companies an...Trendlab Telco Report 2013/14 - Global Trends and Challenges for Companies an...
Trendlab Telco Report 2013/14 - Global Trends and Challenges for Companies an...
 
Chamam me lírico - resigno-me e demonstro porquê - iiiª parte
Chamam me lírico - resigno-me e demonstro porquê - iiiª parteChamam me lírico - resigno-me e demonstro porquê - iiiª parte
Chamam me lírico - resigno-me e demonstro porquê - iiiª parte
 
Recurso 2.4. complementario. ejer acti-tareas combas,-ifiie[1]
Recurso 2.4. complementario. ejer acti-tareas combas,-ifiie[1]Recurso 2.4. complementario. ejer acti-tareas combas,-ifiie[1]
Recurso 2.4. complementario. ejer acti-tareas combas,-ifiie[1]
 
Popvox 2.0 tutorial 11 24 14
Popvox 2.0 tutorial 11 24 14Popvox 2.0 tutorial 11 24 14
Popvox 2.0 tutorial 11 24 14
 
Manual la responsabilidad_social_corporativa
Manual la responsabilidad_social_corporativaManual la responsabilidad_social_corporativa
Manual la responsabilidad_social_corporativa
 
How to start and run a sanctuary
How to start and run a sanctuaryHow to start and run a sanctuary
How to start and run a sanctuary
 
DS-Rendite-Fonds: Ausschüttungen werden zurückgefordert! Können Anleger sich ...
DS-Rendite-Fonds: Ausschüttungen werden zurückgefordert! Können Anleger sich ...DS-Rendite-Fonds: Ausschüttungen werden zurückgefordert! Können Anleger sich ...
DS-Rendite-Fonds: Ausschüttungen werden zurückgefordert! Können Anleger sich ...
 

Ähnlich wie Recipes for a successful production cloudfoundry deployment - CF Summit 2014

Application Services On The Web Sales Forcecom
Application Services On The Web Sales ForcecomApplication Services On The Web Sales Forcecom
Application Services On The Web Sales Forcecom
QConLondon2008
 
Dave Carroll Application Services Salesforce
Dave Carroll Application Services SalesforceDave Carroll Application Services Salesforce
Dave Carroll Application Services Salesforce
deimos
 

Ähnlich wie Recipes for a successful production cloudfoundry deployment - CF Summit 2014 (20)

Software as a Service workshop / Unlocked: the Hybrid Cloud 12th May 2014
Software as a Service workshop / Unlocked: the Hybrid Cloud 12th May 2014Software as a Service workshop / Unlocked: the Hybrid Cloud 12th May 2014
Software as a Service workshop / Unlocked: the Hybrid Cloud 12th May 2014
 
Application Services On The Web Sales Forcecom
Application Services On The Web Sales ForcecomApplication Services On The Web Sales Forcecom
Application Services On The Web Sales Forcecom
 
MongoDB.local Dallas 2019: Pissing Off IT and Delivery: A Tale of 2 ODS's
MongoDB.local Dallas 2019: Pissing Off IT and Delivery: A Tale of 2 ODS'sMongoDB.local Dallas 2019: Pissing Off IT and Delivery: A Tale of 2 ODS's
MongoDB.local Dallas 2019: Pissing Off IT and Delivery: A Tale of 2 ODS's
 
Dave Carroll Application Services Salesforce
Dave Carroll Application Services SalesforceDave Carroll Application Services Salesforce
Dave Carroll Application Services Salesforce
 
Explore Advanced CA Release Automation Configuration Topics
Explore Advanced CA Release Automation Configuration TopicsExplore Advanced CA Release Automation Configuration Topics
Explore Advanced CA Release Automation Configuration Topics
 
AWS Enterprise Summit Netherlands - Creating a Landing Zone
AWS Enterprise Summit Netherlands - Creating a Landing ZoneAWS Enterprise Summit Netherlands - Creating a Landing Zone
AWS Enterprise Summit Netherlands - Creating a Landing Zone
 
AWS Summit Auckland - Application Delivery Patterns for Developers
AWS Summit Auckland - Application Delivery Patterns for DevelopersAWS Summit Auckland - Application Delivery Patterns for Developers
AWS Summit Auckland - Application Delivery Patterns for Developers
 
Integrating Infrastructure as Code into a Continuous Delivery Pipeline | AWS ...
Integrating Infrastructure as Code into a Continuous Delivery Pipeline | AWS ...Integrating Infrastructure as Code into a Continuous Delivery Pipeline | AWS ...
Integrating Infrastructure as Code into a Continuous Delivery Pipeline | AWS ...
 
SenchaCon 2016: A Look Ahead: Survey Next-Gen Modern Browser APIs - Shikhir S...
SenchaCon 2016: A Look Ahead: Survey Next-Gen Modern Browser APIs - Shikhir S...SenchaCon 2016: A Look Ahead: Survey Next-Gen Modern Browser APIs - Shikhir S...
SenchaCon 2016: A Look Ahead: Survey Next-Gen Modern Browser APIs - Shikhir S...
 
Introduction about Alfresco webscript
Introduction about Alfresco webscriptIntroduction about Alfresco webscript
Introduction about Alfresco webscript
 
Leveraging Microservice Architectures & Event-Driven Systems for Global APIs
Leveraging Microservice Architectures & Event-Driven Systems for Global APIsLeveraging Microservice Architectures & Event-Driven Systems for Global APIs
Leveraging Microservice Architectures & Event-Driven Systems for Global APIs
 
.NET microservices with Azure Service Fabric
.NET microservices with Azure Service Fabric.NET microservices with Azure Service Fabric
.NET microservices with Azure Service Fabric
 
Externalizing Authorization in Micro Services world
Externalizing Authorization in Micro Services worldExternalizing Authorization in Micro Services world
Externalizing Authorization in Micro Services world
 
Service Virtualization: What Testers Need to Know
Service Virtualization: What Testers Need to KnowService Virtualization: What Testers Need to Know
Service Virtualization: What Testers Need to Know
 
Application Delivery Patterns for Developers - Technical 401
Application Delivery Patterns for Developers - Technical 401Application Delivery Patterns for Developers - Technical 401
Application Delivery Patterns for Developers - Technical 401
 
Hands-on SaaS: Constructing a Multi-Tenant Solution on AWS (ARC327-R1) - AWS ...
Hands-on SaaS: Constructing a Multi-Tenant Solution on AWS (ARC327-R1) - AWS ...Hands-on SaaS: Constructing a Multi-Tenant Solution on AWS (ARC327-R1) - AWS ...
Hands-on SaaS: Constructing a Multi-Tenant Solution on AWS (ARC327-R1) - AWS ...
 
AWS Serverless API Management - Meetup
AWS Serverless API Management - MeetupAWS Serverless API Management - Meetup
AWS Serverless API Management - Meetup
 
What's new in log insight 3.3 presentation
What's new in log insight 3.3 presentationWhat's new in log insight 3.3 presentation
What's new in log insight 3.3 presentation
 
Application Delivery Patterns
Application Delivery PatternsApplication Delivery Patterns
Application Delivery Patterns
 
REST APIs
REST APIsREST APIs
REST APIs
 

Kürzlich hochgeladen

+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 

Kürzlich hochgeladen (20)

+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
[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
 
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
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
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
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 

Recipes for a successful production cloudfoundry deployment - CF Summit 2014

  • 2. RECIPES FOR A SUCCESSFUL CLOUDFOUNDRY PRODUCTION DEPLOYMENT! Vinicius  Carvalho  –  Pivotal   @vccarvalho  
  • 3. I  am  a  developer  
  • 5. Challenges   •  Large  distributed  Systems  :  Failure  becomes  the   norm  not  the  excepAon   •  Enhance  developer  experience  of  your  API   •  Enforce  security  and  access  control  of  endpoints   •  Service  discovery   •  Avoid  duplicaAon  
  • 6. Give  this  to  your     developers  
  • 7. They  will  soon     as  for  this  
  • 9. Talking  about  services   Business  Value   Reusability   Biz   Services   Biz   Services   Biz   Services   Core   Services   Core   Services   Core   Services   Core   Services   Data   Services   Data   Services   Data   Services   Data   Services   Data   Services   Data   Services   Apps   API  
  • 10. Core  Biz   Services   Who  the  hell   are  those?  
  • 11. Service  Registry   •  Stores  service  informaAon   – API  endpoints   – Security  metadata  (Access  Control  Lists,  Roles)   – Resource  relaAonships   – Quality  of  service   – Extended  Metadata  
  • 12. Service  Registry   Services   Instances   API   Endpoints   Security   UI   Metadata   QOS   Billing   /api/apidocs! GET /users! PUT /{id}! GET /users! - ClientId: myapp! - roles: [USER,MANAGER] !! User : {! SSN: {! type: “string”,! selectable: false,! editable: false! }! }! /search : {! limit : {! value : 300,! time: 3600,! unit: “seconds”! } ! }! /search : {! rate : {! currency : “USD”,! value : 0.10,! meterType: “UNIT”,! meterValue: 1000! }! }!
  • 13. Cloud  Controller   DEA   Registry   GET  /v2/events   GET  /api/apidocs   push  app   +  app  MD   Router  
  • 14. UAA        NeUy  Pipeline   GET /users! Authentication: Bearer <token>! Service  Proxy   User   Service   Registry   Obtain   metadata   Validate   CredenAals   QoS   Billing  
  • 15. UAA        NeUy  Pipeline   GET /users! Authentication: Bearer <token>! Service  Proxy   User   Service   Registry   Data   Filter   {! “firstname” : “joe”,! “lastname” : “doe”,! “comp” : 135,000.00! }! Obtain   metadata   Validate   CredenAals   QoS   Billing  
  • 16. UAA        NeUy  Pipeline   GET /users! Authentication: Bearer <token>! Service  Proxy   User   Service   Outbound     handler   Registry   Data   Filter   Obtain   metadata   Validate   CredenAals   QoS   Billing   Outbound     handler   {! “firstname” : “joe”,! “lastname” : “doe”,! }! {! “firstname” : “joe”,! “lastname” : “doe”,! “comp” : 135,000.00! }!
  • 17. Security     •  Don’t  use  LDAP  for  authorizaAon   •  Corporate  LDAPs  can  be  very  polluted,  move  away  from  role   mapping  and  don’t  add  more  noise  to  them   UAA   LDAP   AuthenAcate   {! "jti":"4657c1a8-b2d0-4304-b1fe-7bdc203d944f",! "aud":["openid","cloud_controller"],! "scope":["read"],! "email":"marissa@test.org",! "exp":138943173,! "user_id":"41750ae1-b2d0-4304-b1fe-7bdc24256387",! "user_name":"marissa",! "client_id":"vmc"! }! ACLS  
  • 18. Biz   Services   Data   Services   Core   Services   Make  sure  your  rest  client  propagates  the  token  for  the  next  service  
  • 19. The  Dark  side  of  microservices  architectures   •  MulAple  remote  calls   •  EnAty  relaAonships   •  Great  arAcle  by  Chris  Richardson  :  hUp:// www.infoq.com/arAcles/microservices-­‐intro  
  • 20. Biz   Services   Biz   Services   Data   Services   Data   Services   Data   Services   Data   Services   Data   Services   Data   Services   Apps   Core   Services   Core   Services   Core   Services   Core   Services   Response  Time  
  • 21. Biz   Services   Biz   Services   Data   Services   Data   Services   Data   Services   Data   Services   Data   Services   Data   Services   Apps   Core   Services   Core   Services   Core   Services   Core   Services   Response  Time  
  • 22. Biz   Services   Biz   Services   Data   Services   Data   Services   Data   Services   Data   Services   Data   Services   Data   Services   Apps   Core   Services   Core   Services   Core   Services   Core   Services   Response  Time  
  • 23. Biz   Services   Biz   Services   Data   Services   Data   Services   Data   Services   Data   Services   Data   Services   Data   Services   Apps   Core   Services   Core   Services   Core   Services   Core   Services   Response  Time  
  • 24.
  • 25. TX  Manager   Hibernate     Session   TradiAonal  web  applicaAon   Controller   Service   Repo   EnAty   EnAty   Cascading operations are managed by the session factory
  • 26. Ripple  effect  of  enAty  relaAonship   Product   Inventory   Orders   Users  
  • 27. Event  driven  data  services   Inventory   Orders   Users   {enAty:  Product,   Event:  UPDATE}   Product  
  • 28. HTTP  events   •  High  efficient  server  sent  events  using  non   blocking  containers  (JeUy  9,  Tomcat  8,   Spray,  Play,  NeUy)   •  Use  webhooks  when  comet/conAnuaAons   are  not  possible   •  Pubsubhubbub?   Product   GET  /{id}   PUT  /{Id}   POST  /     GET  /events  à  SSE   POST  /hook/  à  callback  url  
  • 30. Polyglot  persistence   Data     Service   {! "posts": [{! "id": "1",! "title": “The four levels of HA on pivotal CF",! "links": [{! ”author": {! "href": "http://blog.gopivotal.com/author/ cdavis",! "id":”ffd5b644-b220-4f7c- efad-2dfee6768bb9” ! }]! }! }]! }! EnAty     RelaAonship   Data     Service   Data     Service   Data     Service   Data     Service