Se ha denunciado esta presentación.
Utilizamos tu perfil de LinkedIn y tus datos de actividad para personalizar los anuncios y mostrarte publicidad más relevante. Puedes cambiar tus preferencias de publicidad en cualquier momento.
Próximo SlideShare
Modeling on the Web
Siguiente
Descargar para leer sin conexión y ver en pantalla completa.

Compartir

SVQDC 2017 Tecnologías para Microservicios

Descargar para leer sin conexión

Charla impartida en el Sevilla Developers Conference el 18 de febrero de 2017. Introducción a Microservicios, tecnologías, casos de uso y stacks en diversos lenguajes.

Audiolibros relacionados

Gratis con una prueba de 30 días de Scribd

Ver todo

SVQDC 2017 Tecnologías para Microservicios

  1. 1. Sevilla Developer Conference #SVQDC 2017.02.18
  2. 2. Pedro J. Molina @pmolinam
  3. 3.   
  4. 4.           
  5. 5. “Las organizaciones que diseñan sistemas están limitadas a producir diseños que copian las estructuras de comunicación de esas organizaciones”. Melvin Conway, 1968    
  6. 6.    application/json  text/xml  text/html  text/plain  text/csv GET /actors/42 Accept: text/xml 200 OK Content-Type: text/xml <actor id="42"> <name>Jessica</name> <lastname>Alba</lastname> <filmography url= "/films/42" /> </actor>
  7. 7.       GET /actors/42 Accept: application/json 200 OK Content-Type: application/json { "id": 42 "name": "Jessica" "lastname": "Alba" "filmography": "/films/42" }
  8. 8.   GET /factura/217  POST /factura/  201 Created  <link rel=“lineas” uri=“/factura/217/lineas” />
  9. 9.   
  10. 10.  { “id”: 1234 “name”: “Alice in Wonderland” “_links”: { “self”: { “href”: “/book/10”}, “prev”: { “href”: “/book/9”}, “next”: { “href”: “/book/11”}, “action-delete”: { “verb”: “DELETE”, “href”: “/book/10” } } }
  11. 11.      
  12. 12.                   
  13. 13.          
  14. 14. Dev Local :27001 Local :5000 - Navegador Nube db :27001 app :80 - Navegador Producción cluster :27001 app :80 - Navegador lb: 443
  15. 15.  
  16. 16. Client ExpressJS BaucisJS Mongoose MongoDB HTTP req resource query/command data 401 | 403 AuthN/AuthZ middleware <req.user, res> Microservice
  17. 17.  var express = require('express'); var app = express(); app.get('/hello', function(req, res) { res.status(200).send('hello world'); }); /helloreq res
  18. 18.  public class SampleModule : Nancy.NancyModule { public SampleModule() { Get["/hello"] = _ => “hello world"; } } /helloreq res
  19. 19.     
  20. 20. exports.handler = function(event, context) { switch (event.operation) { case 'ping': context.succeed('pong'); return; case 'getSample': event.customArgs = ["rose:", "/tmp/rose.png"]; im.convert(event.customArgs, function(err, output) { if (err) context.fail(err); else { var resultImgBase64 = new Buffer( fs.readFileSync("/tmp/rose.png")).toString('base64'); try { fs.unlinkSync("/tmp/rose.png");} catch (e) {} context.succeed(resultImgBase64); } }); break; default: return context.fail(new Error('Unrecognized operation "' + event.operation + '"')); }};
  21. 21.         
  22. 22.    connect-mongo  nginx haproxy, etc.    
  23. 23.       
  24. 24.    process.env.VAR1 
  25. 25. git remote add heroku https://git.heroku.com/app1.git   /Procfile  git push heroku master web: node app/server.js
  26. 26. db: image: dockerfile/mongodb ports: - "27017" app: build: . environment: NODE_ENV: production PORT: 80 SERVICE_NAME: app links: - "db:DB" ports: - "80" lb: image: jasonwyatt/nginx-loadbalancer links: - app environment: APP_PATH: "/" ports: - "80:80"
  27. 27. db app lb app app #0 #1 #2 80 80 27017 consul prometheus 8500 8500 autoregistro 8500 autodescubre /metrics /ping
  28. 28.           
  29. 29.       
  30. 30.    
  31. 31. @pmolinam
  • vfernandezg

    Feb. 23, 2017
  • sharlie89

    Feb. 21, 2017
  • javiersanchezcastillo

    Feb. 19, 2017
  • mordraug

    Feb. 19, 2017
  • alberto.molina

    Feb. 19, 2017

Charla impartida en el Sevilla Developers Conference el 18 de febrero de 2017. Introducción a Microservicios, tecnologías, casos de uso y stacks en diversos lenguajes.

Vistas

Total de vistas

997

En Slideshare

0

De embebidos

0

Número de embebidos

31

Acciones

Descargas

29

Compartidos

0

Comentarios

0

Me gusta

5

×