SlideShare una empresa de Scribd logo
#SGVirtual
Arquitectura basada en
eventos para
principiantes
Hugo Guerrero
APIs & Messaging Developer Advocate @ Red Hat
Unidos compartiendo y aprendiendo
#SGVirtual
#SGVirtual
EVENT-DRIVEN ARCHITECTURE
Source: https://developers.redhat.com/blog/author/hguerrero/
Hugo Guerrero
APIs & Messaging Developer Advocate @
Red Hat
Viajes + Comida + Historia
Mexicano @ Massachusetts, USA
Twitter @hguerreroo
hguerrero@redhat.com
https://developers.redhat.com/blog/author/hguerrero/
Hola!
#SGVirtual
Modernizando Arquitecturas
EVENT-DRIVEN ARCHITECTURE
3
Ye Olde Architecture Enlightened
postmodernism
#SGVirtual
Conectado microservicios
EVENT-DRIVEN ARCHITECTURE
4
● Sistemas distribuidos
● Múltiples servidores
● Cada servicio es un proceso
● Abuso del protocolo
Customers
Billing
Administration
Operations
Customer
Service
#SGVirtual
EVENT-DRIVEN ARCHITECTURE
Los microservices son difíciles
5
#SGVirtual
SERVICES INTERACTIONS
6
Ejemplo
#SGVirtual
Gestionando errores
EVENT-DRIVEN ARCHITECTURE
7
Customers
Billing
Administration
Operations
Customer
Service
GUI
Customers
routing
service
discovery
retries /
timeouts
#SGVirtual
Gestionando errores
EVENT-DRIVEN ARCHITECTURE
8
#SGVirtual
Modernizando Arquitecturas
EVENT-DRIVEN ARCHITECTURE
9
#SGVirtual
¿Qué es la arquitectura basada en eventos (EDA)?
EVENT-DRIVEN ARCHITECTURE
10
Event-Driven Architecture
(EDA) es una forma de diseñar
aplicaciones y servicios que
respondan en tiempo real a
información basada en enviar y
recibir notificaciones de cambios
individuales en el sistema.
#SGVirtual
11
Source:
https://en.wikipedia.org/wiki/UNIVAC_1103
Inside Macintosh, Apple Computer Inc. Cupertino, CA, 1985.
https://en.wikipedia.org/wiki/Database_trigger
http://soft.vub.ac.be/Publications/2012/vub-soft-tr-12-13.pdf
https://en.wikipedia.org/wiki/Java_version_history
UNIVAC 1103, first computer with operating system level interrupts
debuts.
1953
Apple Macintosh interface based on main event handling loop.
1984
Database vendors Oracle, Sybase, and others add triggers.
1993
First reactive programming language, Fran (Haskell), released.
1997
Java 1.4 introduces event handlers as first class objects.
2002
#SGVirtual
¿Por qué arquitectura basada en eventos?
EVENT-DRIVEN ARCHITECTURE
12
Refleja el mundo real
El mundo real está basado en eventos. Como el
sistema nervioso, o una cafeteria.
Reduce el acoplamiento
EDA permite desacoplar servicios en tiempo de
ejecución así como en tecnología
Encapsulación
Servicios aislados ayudan a diseñar microservicios que
no dependen de cómo se consuman los eventos.
Escalamiento individual
Los servicios se pueden escalar independientemente.
Latencia en casi tiempo real
La desventaja de estar haciendo consultas se elimina
moviendose a EDA.
#SGVirtual
¿Qué es un evento?
EVENT-DRIVEN ARCHITECTURE
13
Image: https://foto.wuestenigel.com/hand-ready-to-push-domino-pieces/
Evento es una acción o un
acontecimiento procesado
por software usualmente
originado asíncronamente
fuera del sistema.
La mayoría de las veces
reemplazado por la
notificación del
acontecimiento.
#SGVirtual
EVENT-DRIVEN ARCHITECTURE
¿Qué es un evento?
14
Source:
QueryComandoEvento
#SGVirtual
EVENT-DRIVEN ARCHITECTURE
Tipos de eventos
15
Source:
ReplayableConsumibleVolatil
#SGVirtual
EVENT-DRIVEN ARCHITECTURE
Request-response / Event-driven
16
Source:
#SGVirtual
EVENT-DRIVEN ARCHITECTURE
Bus de Eventos (Event Broker)
17
Source:
#SGVirtual
EVENT-DRIVEN ARCHITECTURE
Algunos protocolos para eventos
18
Source:
● AMQP
○ Advanced Message Queuing Protocol
● STOMP
○ Simple (or Streaming) Text Orientated Messaging Protocol
● MQTT
○ Message Queuing Telemetry Transport
● KAFKA
○ Protocolo binario sobre TCP
● WEB
○ WebSockets
○ WebHooks
○ Server-Sent Events
#SGVirtual
Microservicios basados en eventos
EVENT-DRIVEN ARCHITECTURE
19
Ordering Billing
Orders Payments Shipments
Shipping Inventory
Notification
#SGVirtual
EVENT-DRIVEN ARCHITECTURE
¿Qué es Apache Kafka?
20
Apache Kafka es un sistema distribuido
diseñado para flujos de eventos. Está
construido para ser escalable
horizontalmente, tolerante a fallos,
como un registro de bitácora, que
permite procesar flujos y datos
distribuidos.
#SGVirtual
EVENT-DRIVEN ARCHITECTURE
Ecosistema de Apache Kafka
21
● Kafka Core
○ Broker
○ Producer API, Consumer API, Admin API
○ Herramientas de administración
● Kafka Connect
● Kafka Streams API
● Mirror Maker / Mirror Maker 2
● REST Proxy para HTTP y Kafka
● Registro de esquemas
#SGVirtual
EVENT-DRIVEN ARCHITECTURE
Apache Kafka y Kubernetes
22
Source: https://landscape.cncf.io/
#SGVirtual
EVENT-DRIVEN ARCHITECTURE
Patrones de implementación con Apache Kafka
23
Event Sourcing
Es un patrón que permite al sistema
registrar los cambios en orden y luego
reproducirlos para conocer el estado.
Captura de cambios en la base de datos
que permite auto generar eventos para
que otros servicios puedan tener los
últimos datos.
Change Data Capture
Estos sistemas detectan y reaccionan a
condiciones críticas consultando un flujo
continuo de eventos en ventanas de
tiempo.
Procesamiento de flujos de eventos
Flujos de datos con múltiples etapas y
consumidores formando un pipeline de
información.
Broadcast and Pipelines
Source:
#SGVirtual
EVENT-DRIVEN ARCHITECTURE
Eventos desde la base de datos
24
Debezium Change Data Capture Platform
Source: https://debezium.io/community/users/
● Conectores CDC para varias bases de datos
○ Basado en transaction logs
○ Snapshotting, Filtering etc.
● 100% open-source, comunidad activa
● Última version: 1.1
● Compañías desplegando en producción (e.g.
WePay, JW Player, Convoy, Trivago, OYO,
BlaBlaCar etc.)
#SGVirtual
Una vez que se empieza a trabajar en microservicios o funciones, la forma de
mantener la comunicación es mediante notificaciones.
Los patrones de integración basados en eventos permiten escalar y
desacoplar microservicios, usando una cola o un tópico se pueden
coordinar..
Microservicios y arquitecturas basadas en eventos
EVENT-DRIVEN ARCHITECTURE
25
Migración a Microservicios
Moverse a Serverless
#SGVirtual
Gracias
Hugo Guerrero
APIs & Messaging Developer Advocate @ Red Hat
Continuemos en slack o twitter @hguerreroo
#SGVirtual

Más contenido relacionado

La actualidad más candente

Event-Driven Transformation in Banking and FSI
Event-Driven Transformation in Banking and FSIEvent-Driven Transformation in Banking and FSI
Event-Driven Transformation in Banking and FSISolace
 
Microservices design patterns
Microservices design patternsMicroservices design patterns
Microservices design patternsMasashi Narumoto
 
Desarrollo web front-end con TypeScript, Angular 2 e Ionic
Desarrollo web front-end con TypeScript, Angular 2 e IonicDesarrollo web front-end con TypeScript, Angular 2 e Ionic
Desarrollo web front-end con TypeScript, Angular 2 e IonicMicael Gallego
 
Visualizing Software Architecture with C4 Model
Visualizing Software Architecture with C4 ModelVisualizing Software Architecture with C4 Model
Visualizing Software Architecture with C4 ModelMarco Beelen
 
Microservices Design Patterns | Edureka
Microservices Design Patterns | EdurekaMicroservices Design Patterns | Edureka
Microservices Design Patterns | EdurekaEdureka!
 
Building Streaming Data Pipelines with Google Cloud Dataflow and Confluent Cl...
Building Streaming Data Pipelines with Google Cloud Dataflow and Confluent Cl...Building Streaming Data Pipelines with Google Cloud Dataflow and Confluent Cl...
Building Streaming Data Pipelines with Google Cloud Dataflow and Confluent Cl...HostedbyConfluent
 
Microservices Architecture Part 2 Event Sourcing and Saga
Microservices Architecture Part 2 Event Sourcing and SagaMicroservices Architecture Part 2 Event Sourcing and Saga
Microservices Architecture Part 2 Event Sourcing and SagaAraf Karsh Hamid
 
Mapa mental de patrones de diseño
Mapa mental de patrones de diseñoMapa mental de patrones de diseño
Mapa mental de patrones de diseñoadryanaguiilar
 
Event Sourcing & CQRS, Kafka, Rabbit MQ
Event Sourcing & CQRS, Kafka, Rabbit MQEvent Sourcing & CQRS, Kafka, Rabbit MQ
Event Sourcing & CQRS, Kafka, Rabbit MQAraf Karsh Hamid
 
Implementing Domain Events with Kafka
Implementing Domain Events with KafkaImplementing Domain Events with Kafka
Implementing Domain Events with KafkaAndrei Rugina
 
DevOps Culture
DevOps CultureDevOps Culture
DevOps Culturerouanw
 
METODOLOGÍA UWE (UML-BASED WEB ENGINEERING)
METODOLOGÍA UWE (UML-BASED WEB ENGINEERING) METODOLOGÍA UWE (UML-BASED WEB ENGINEERING)
METODOLOGÍA UWE (UML-BASED WEB ENGINEERING) Germán Sánchez
 
Event Driven Software Architecture Pattern
Event Driven Software Architecture PatternEvent Driven Software Architecture Pattern
Event Driven Software Architecture Patternjeetendra mandal
 
CQRS + Event Sourcing
CQRS + Event SourcingCQRS + Event Sourcing
CQRS + Event SourcingMike Bild
 

La actualidad más candente (20)

Event-Driven Transformation in Banking and FSI
Event-Driven Transformation in Banking and FSIEvent-Driven Transformation in Banking and FSI
Event-Driven Transformation in Banking and FSI
 
analisis de aplicaciones web
analisis de aplicaciones webanalisis de aplicaciones web
analisis de aplicaciones web
 
De Mensajería hacia Logs con Apache Kafka
De Mensajería hacia Logs con Apache KafkaDe Mensajería hacia Logs con Apache Kafka
De Mensajería hacia Logs con Apache Kafka
 
Microservices design patterns
Microservices design patternsMicroservices design patterns
Microservices design patterns
 
Desarrollo web front-end con TypeScript, Angular 2 e Ionic
Desarrollo web front-end con TypeScript, Angular 2 e IonicDesarrollo web front-end con TypeScript, Angular 2 e Ionic
Desarrollo web front-end con TypeScript, Angular 2 e Ionic
 
Visualizing Software Architecture with C4 Model
Visualizing Software Architecture with C4 ModelVisualizing Software Architecture with C4 Model
Visualizing Software Architecture with C4 Model
 
Microservices Design Patterns | Edureka
Microservices Design Patterns | EdurekaMicroservices Design Patterns | Edureka
Microservices Design Patterns | Edureka
 
Building Streaming Data Pipelines with Google Cloud Dataflow and Confluent Cl...
Building Streaming Data Pipelines with Google Cloud Dataflow and Confluent Cl...Building Streaming Data Pipelines with Google Cloud Dataflow and Confluent Cl...
Building Streaming Data Pipelines with Google Cloud Dataflow and Confluent Cl...
 
Microservices Architecture Part 2 Event Sourcing and Saga
Microservices Architecture Part 2 Event Sourcing and SagaMicroservices Architecture Part 2 Event Sourcing and Saga
Microservices Architecture Part 2 Event Sourcing and Saga
 
Mapa mental de patrones de diseño
Mapa mental de patrones de diseñoMapa mental de patrones de diseño
Mapa mental de patrones de diseño
 
Event Sourcing & CQRS, Kafka, Rabbit MQ
Event Sourcing & CQRS, Kafka, Rabbit MQEvent Sourcing & CQRS, Kafka, Rabbit MQ
Event Sourcing & CQRS, Kafka, Rabbit MQ
 
Implementing Domain Events with Kafka
Implementing Domain Events with KafkaImplementing Domain Events with Kafka
Implementing Domain Events with Kafka
 
B. manejo de concurrencia
B.  manejo de concurrenciaB.  manejo de concurrencia
B. manejo de concurrencia
 
DevOps Culture
DevOps CultureDevOps Culture
DevOps Culture
 
Ejemplo de fdd
Ejemplo de fddEjemplo de fdd
Ejemplo de fdd
 
Metodologias rup
Metodologias rupMetodologias rup
Metodologias rup
 
METODOLOGÍA UWE (UML-BASED WEB ENGINEERING)
METODOLOGÍA UWE (UML-BASED WEB ENGINEERING) METODOLOGÍA UWE (UML-BASED WEB ENGINEERING)
METODOLOGÍA UWE (UML-BASED WEB ENGINEERING)
 
Event Driven Software Architecture Pattern
Event Driven Software Architecture PatternEvent Driven Software Architecture Pattern
Event Driven Software Architecture Pattern
 
Proceso unificado
Proceso unificadoProceso unificado
Proceso unificado
 
CQRS + Event Sourcing
CQRS + Event SourcingCQRS + Event Sourcing
CQRS + Event Sourcing
 

Similar a Arquitectura basada a Eventos para principiantes con Apache Kafka

Dynamics saturday madrid 2019 sergio hernandez
Dynamics saturday madrid 2019 sergio hernandezDynamics saturday madrid 2019 sergio hernandez
Dynamics saturday madrid 2019 sergio hernandezDemian Raschkovan
 
Orquestando microservicios como lo hace Netflix
Orquestando microservicios como lo hace NetflixOrquestando microservicios como lo hace Netflix
Orquestando microservicios como lo hace NetflixParadigma Digital
 
Creando Aplicaciones Web en el 2015
 Creando Aplicaciones Web en el 2015 Creando Aplicaciones Web en el 2015
Creando Aplicaciones Web en el 2015Globant
 
Aplicación práctica de FIWARE al Internet de las Cosas
Aplicación práctica de FIWARE al Internet de las CosasAplicación práctica de FIWARE al Internet de las Cosas
Aplicación práctica de FIWARE al Internet de las CosasJavier García Puga
 
Visual Studio 2010 Ligthswitch + AZURE + Zero Code
Visual Studio 2010 Ligthswitch + AZURE + Zero CodeVisual Studio 2010 Ligthswitch + AZURE + Zero Code
Visual Studio 2010 Ligthswitch + AZURE + Zero CodeBruno Capuano
 
Webinar con QA Lovers - Shift left a11y: Haz tu aplicación accesible para más...
Webinar con QA Lovers - Shift left a11y: Haz tu aplicación accesible para más...Webinar con QA Lovers - Shift left a11y: Haz tu aplicación accesible para más...
Webinar con QA Lovers - Shift left a11y: Haz tu aplicación accesible para más...Lisandra Armas
 
Prog. web. equipo 5
Prog. web. equipo 5Prog. web. equipo 5
Prog. web. equipo 5Luis Mendez
 
Intelligent Sharing Platform
Intelligent Sharing Platform Intelligent Sharing Platform
Intelligent Sharing Platform Jorge Magaña
 
Mob Plataforma de movilidad Inteligente
Mob Plataforma de movilidad InteligenteMob Plataforma de movilidad Inteligente
Mob Plataforma de movilidad InteligenteJorge Magaña
 
Propuesta de Plataforma IoT - UCA Cuenca 2018
Propuesta de Plataforma IoT - UCA Cuenca 2018Propuesta de Plataforma IoT - UCA Cuenca 2018
Propuesta de Plataforma IoT - UCA Cuenca 2018Andres Solorzano
 
Dev ops mobile(webinar)
Dev ops mobile(webinar)Dev ops mobile(webinar)
Dev ops mobile(webinar)Globe Testing
 
Presentación de Sistema GESTSEG
Presentación de Sistema GESTSEGPresentación de Sistema GESTSEG
Presentación de Sistema GESTSEGdarwinjtc
 
Derribando la torre de marfil - Plain Concepts Dev Day
Derribando la torre de marfil - Plain Concepts Dev DayDerribando la torre de marfil - Plain Concepts Dev Day
Derribando la torre de marfil - Plain Concepts Dev DayPlain Concepts
 
2015 10 - Curso Cliente @firma INAP día 2
2015 10 - Curso Cliente @firma INAP día 22015 10 - Curso Cliente @firma INAP día 2
2015 10 - Curso Cliente @firma INAP día 2Tomás García-Merás
 
Unidad iv tema 2 - rtu
Unidad iv   tema 2 - rtuUnidad iv   tema 2 - rtu
Unidad iv tema 2 - rtuUDO Monagas
 
Exposicionproyecto 130711103653-phpapp01
Exposicionproyecto 130711103653-phpapp01Exposicionproyecto 130711103653-phpapp01
Exposicionproyecto 130711103653-phpapp01Samuel Guillen
 

Similar a Arquitectura basada a Eventos para principiantes con Apache Kafka (20)

Dynamics saturday madrid 2019 sergio hernandez
Dynamics saturday madrid 2019 sergio hernandezDynamics saturday madrid 2019 sergio hernandez
Dynamics saturday madrid 2019 sergio hernandez
 
Orquestando microservicios como lo hace Netflix
Orquestando microservicios como lo hace NetflixOrquestando microservicios como lo hace Netflix
Orquestando microservicios como lo hace Netflix
 
Kit para crear un Sitio Web Móvil asombroso!
Kit para crear un Sitio Web Móvil asombroso!Kit para crear un Sitio Web Móvil asombroso!
Kit para crear un Sitio Web Móvil asombroso!
 
Creando Aplicaciones Web en el 2015
 Creando Aplicaciones Web en el 2015 Creando Aplicaciones Web en el 2015
Creando Aplicaciones Web en el 2015
 
Aplicación práctica de FIWARE al Internet de las Cosas
Aplicación práctica de FIWARE al Internet de las CosasAplicación práctica de FIWARE al Internet de las Cosas
Aplicación práctica de FIWARE al Internet de las Cosas
 
Visual Studio 2010 Ligthswitch + AZURE + Zero Code
Visual Studio 2010 Ligthswitch + AZURE + Zero CodeVisual Studio 2010 Ligthswitch + AZURE + Zero Code
Visual Studio 2010 Ligthswitch + AZURE + Zero Code
 
Webinar con QA Lovers - Shift left a11y: Haz tu aplicación accesible para más...
Webinar con QA Lovers - Shift left a11y: Haz tu aplicación accesible para más...Webinar con QA Lovers - Shift left a11y: Haz tu aplicación accesible para más...
Webinar con QA Lovers - Shift left a11y: Haz tu aplicación accesible para más...
 
Microservicios con .NET
Microservicios con .NETMicroservicios con .NET
Microservicios con .NET
 
Prog. web. equipo 5
Prog. web. equipo 5Prog. web. equipo 5
Prog. web. equipo 5
 
Intelligent Sharing Platform
Intelligent Sharing Platform Intelligent Sharing Platform
Intelligent Sharing Platform
 
Mob Plataforma de movilidad Inteligente
Mob Plataforma de movilidad InteligenteMob Plataforma de movilidad Inteligente
Mob Plataforma de movilidad Inteligente
 
Propuesta de Plataforma IoT - UCA Cuenca 2018
Propuesta de Plataforma IoT - UCA Cuenca 2018Propuesta de Plataforma IoT - UCA Cuenca 2018
Propuesta de Plataforma IoT - UCA Cuenca 2018
 
Dev ops mobile(webinar)
Dev ops mobile(webinar)Dev ops mobile(webinar)
Dev ops mobile(webinar)
 
Presentación de Sistema GESTSEG
Presentación de Sistema GESTSEGPresentación de Sistema GESTSEG
Presentación de Sistema GESTSEG
 
Derribando la torre de marfil - Plain Concepts Dev Day
Derribando la torre de marfil - Plain Concepts Dev DayDerribando la torre de marfil - Plain Concepts Dev Day
Derribando la torre de marfil - Plain Concepts Dev Day
 
Reporte1
Reporte1Reporte1
Reporte1
 
2015 10 - Curso Cliente @firma INAP día 2
2015 10 - Curso Cliente @firma INAP día 22015 10 - Curso Cliente @firma INAP día 2
2015 10 - Curso Cliente @firma INAP día 2
 
Unidad iv tema 2 - rtu
Unidad iv   tema 2 - rtuUnidad iv   tema 2 - rtu
Unidad iv tema 2 - rtu
 
Exposicionproyecto 130711103653-phpapp01
Exposicionproyecto 130711103653-phpapp01Exposicionproyecto 130711103653-phpapp01
Exposicionproyecto 130711103653-phpapp01
 
EDA
EDAEDA
EDA
 

Más de Software Guru

Hola Mundo del Internet de las Cosas
Hola Mundo del Internet de las CosasHola Mundo del Internet de las Cosas
Hola Mundo del Internet de las CosasSoftware Guru
 
Estructuras de datos avanzadas: Casos de uso reales
Estructuras de datos avanzadas: Casos de uso realesEstructuras de datos avanzadas: Casos de uso reales
Estructuras de datos avanzadas: Casos de uso realesSoftware Guru
 
Building bias-aware environments
Building bias-aware environmentsBuilding bias-aware environments
Building bias-aware environmentsSoftware Guru
 
El secreto para ser un desarrollador Senior
El secreto para ser un desarrollador SeniorEl secreto para ser un desarrollador Senior
El secreto para ser un desarrollador SeniorSoftware Guru
 
Cómo encontrar el trabajo remoto ideal
Cómo encontrar el trabajo remoto idealCómo encontrar el trabajo remoto ideal
Cómo encontrar el trabajo remoto idealSoftware Guru
 
Automatizando ideas con Apache Airflow
Automatizando ideas con Apache AirflowAutomatizando ideas con Apache Airflow
Automatizando ideas con Apache AirflowSoftware Guru
 
How thick data can improve big data analysis for business:
How thick data can improve big data analysis for business:How thick data can improve big data analysis for business:
How thick data can improve big data analysis for business:Software Guru
 
Introducción al machine learning
Introducción al machine learningIntroducción al machine learning
Introducción al machine learningSoftware Guru
 
Democratizando el uso de CoDi
Democratizando el uso de CoDiDemocratizando el uso de CoDi
Democratizando el uso de CoDiSoftware Guru
 
Gestionando la felicidad de los equipos con Management 3.0
Gestionando la felicidad de los equipos con Management 3.0Gestionando la felicidad de los equipos con Management 3.0
Gestionando la felicidad de los equipos con Management 3.0Software Guru
 
Taller: Creación de Componentes Web re-usables con StencilJS
Taller: Creación de Componentes Web re-usables con StencilJSTaller: Creación de Componentes Web re-usables con StencilJS
Taller: Creación de Componentes Web re-usables con StencilJSSoftware Guru
 
El camino del full stack developer (o como hacemos en SERTI para que no solo ...
El camino del full stack developer (o como hacemos en SERTI para que no solo ...El camino del full stack developer (o como hacemos en SERTI para que no solo ...
El camino del full stack developer (o como hacemos en SERTI para que no solo ...Software Guru
 
¿Qué significa ser un programador en Bitso?
¿Qué significa ser un programador en Bitso?¿Qué significa ser un programador en Bitso?
¿Qué significa ser un programador en Bitso?Software Guru
 
Colaboración efectiva entre desarrolladores del cliente y tu equipo.
Colaboración efectiva entre desarrolladores del cliente y tu equipo.Colaboración efectiva entre desarrolladores del cliente y tu equipo.
Colaboración efectiva entre desarrolladores del cliente y tu equipo.Software Guru
 
Pruebas de integración con Docker en Azure DevOps
Pruebas de integración con Docker en Azure DevOpsPruebas de integración con Docker en Azure DevOps
Pruebas de integración con Docker en Azure DevOpsSoftware Guru
 
Elixir + Elm: Usando lenguajes funcionales en servicios productivos
Elixir + Elm: Usando lenguajes funcionales en servicios productivosElixir + Elm: Usando lenguajes funcionales en servicios productivos
Elixir + Elm: Usando lenguajes funcionales en servicios productivosSoftware Guru
 
Así publicamos las apps de Spotify sin stress
Así publicamos las apps de Spotify sin stressAsí publicamos las apps de Spotify sin stress
Así publicamos las apps de Spotify sin stressSoftware Guru
 
Achieving Your Goals: 5 Tips to successfully achieve your goals
Achieving Your Goals: 5 Tips to successfully achieve your goalsAchieving Your Goals: 5 Tips to successfully achieve your goals
Achieving Your Goals: 5 Tips to successfully achieve your goalsSoftware Guru
 
Acciones de comunidades tech en tiempos del Covid19
Acciones de comunidades tech en tiempos del Covid19Acciones de comunidades tech en tiempos del Covid19
Acciones de comunidades tech en tiempos del Covid19Software Guru
 
De lo operativo a lo estratégico: un modelo de management de diseño
De lo operativo a lo estratégico: un modelo de management de diseñoDe lo operativo a lo estratégico: un modelo de management de diseño
De lo operativo a lo estratégico: un modelo de management de diseñoSoftware Guru
 

Más de Software Guru (20)

Hola Mundo del Internet de las Cosas
Hola Mundo del Internet de las CosasHola Mundo del Internet de las Cosas
Hola Mundo del Internet de las Cosas
 
Estructuras de datos avanzadas: Casos de uso reales
Estructuras de datos avanzadas: Casos de uso realesEstructuras de datos avanzadas: Casos de uso reales
Estructuras de datos avanzadas: Casos de uso reales
 
Building bias-aware environments
Building bias-aware environmentsBuilding bias-aware environments
Building bias-aware environments
 
El secreto para ser un desarrollador Senior
El secreto para ser un desarrollador SeniorEl secreto para ser un desarrollador Senior
El secreto para ser un desarrollador Senior
 
Cómo encontrar el trabajo remoto ideal
Cómo encontrar el trabajo remoto idealCómo encontrar el trabajo remoto ideal
Cómo encontrar el trabajo remoto ideal
 
Automatizando ideas con Apache Airflow
Automatizando ideas con Apache AirflowAutomatizando ideas con Apache Airflow
Automatizando ideas con Apache Airflow
 
How thick data can improve big data analysis for business:
How thick data can improve big data analysis for business:How thick data can improve big data analysis for business:
How thick data can improve big data analysis for business:
 
Introducción al machine learning
Introducción al machine learningIntroducción al machine learning
Introducción al machine learning
 
Democratizando el uso de CoDi
Democratizando el uso de CoDiDemocratizando el uso de CoDi
Democratizando el uso de CoDi
 
Gestionando la felicidad de los equipos con Management 3.0
Gestionando la felicidad de los equipos con Management 3.0Gestionando la felicidad de los equipos con Management 3.0
Gestionando la felicidad de los equipos con Management 3.0
 
Taller: Creación de Componentes Web re-usables con StencilJS
Taller: Creación de Componentes Web re-usables con StencilJSTaller: Creación de Componentes Web re-usables con StencilJS
Taller: Creación de Componentes Web re-usables con StencilJS
 
El camino del full stack developer (o como hacemos en SERTI para que no solo ...
El camino del full stack developer (o como hacemos en SERTI para que no solo ...El camino del full stack developer (o como hacemos en SERTI para que no solo ...
El camino del full stack developer (o como hacemos en SERTI para que no solo ...
 
¿Qué significa ser un programador en Bitso?
¿Qué significa ser un programador en Bitso?¿Qué significa ser un programador en Bitso?
¿Qué significa ser un programador en Bitso?
 
Colaboración efectiva entre desarrolladores del cliente y tu equipo.
Colaboración efectiva entre desarrolladores del cliente y tu equipo.Colaboración efectiva entre desarrolladores del cliente y tu equipo.
Colaboración efectiva entre desarrolladores del cliente y tu equipo.
 
Pruebas de integración con Docker en Azure DevOps
Pruebas de integración con Docker en Azure DevOpsPruebas de integración con Docker en Azure DevOps
Pruebas de integración con Docker en Azure DevOps
 
Elixir + Elm: Usando lenguajes funcionales en servicios productivos
Elixir + Elm: Usando lenguajes funcionales en servicios productivosElixir + Elm: Usando lenguajes funcionales en servicios productivos
Elixir + Elm: Usando lenguajes funcionales en servicios productivos
 
Así publicamos las apps de Spotify sin stress
Así publicamos las apps de Spotify sin stressAsí publicamos las apps de Spotify sin stress
Así publicamos las apps de Spotify sin stress
 
Achieving Your Goals: 5 Tips to successfully achieve your goals
Achieving Your Goals: 5 Tips to successfully achieve your goalsAchieving Your Goals: 5 Tips to successfully achieve your goals
Achieving Your Goals: 5 Tips to successfully achieve your goals
 
Acciones de comunidades tech en tiempos del Covid19
Acciones de comunidades tech en tiempos del Covid19Acciones de comunidades tech en tiempos del Covid19
Acciones de comunidades tech en tiempos del Covid19
 
De lo operativo a lo estratégico: un modelo de management de diseño
De lo operativo a lo estratégico: un modelo de management de diseñoDe lo operativo a lo estratégico: un modelo de management de diseño
De lo operativo a lo estratégico: un modelo de management de diseño
 

Último

Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...
Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...
Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...Telefónica
 
leidy fuentes - power point -expocccion -unidad 4 (1).pptx
leidy fuentes - power point -expocccion -unidad 4 (1).pptxleidy fuentes - power point -expocccion -unidad 4 (1).pptx
leidy fuentes - power point -expocccion -unidad 4 (1).pptxLeidyfuentes19
 
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informáticavazquezgarciajesusma
 
HerramientasInformaticas ¿Que es? - ¿Para que sirve? - Recomendaciones - Comp...
HerramientasInformaticas ¿Que es? - ¿Para que sirve? - Recomendaciones - Comp...HerramientasInformaticas ¿Que es? - ¿Para que sirve? - Recomendaciones - Comp...
HerramientasInformaticas ¿Que es? - ¿Para que sirve? - Recomendaciones - Comp...Kevin Serna
 
Inteligencia Artificial y Ciberseguridad.pdf
Inteligencia Artificial y Ciberseguridad.pdfInteligencia Artificial y Ciberseguridad.pdf
Inteligencia Artificial y Ciberseguridad.pdfEmilio Casbas
 
Licencias para el Uso y el Desarrollo de Software
Licencias para el Uso y el Desarrollo de SoftwareLicencias para el Uso y el Desarrollo de Software
Licencias para el Uso y el Desarrollo de SoftwareAndres Avila
 
lenguaje algebraico.pptx álgebra, trigonometria
lenguaje algebraico.pptx álgebra, trigonometrialenguaje algebraico.pptx álgebra, trigonometria
lenguaje algebraico.pptx álgebra, trigonometriasofiasonder
 
Posnarrativas en la era de la IA generativa
Posnarrativas en la era de la IA generativaPosnarrativas en la era de la IA generativa
Posnarrativas en la era de la IA generativaFernando Villares
 
3Redu: Responsabilidad, Resiliencia y Respeto
3Redu: Responsabilidad, Resiliencia y Respeto3Redu: Responsabilidad, Resiliencia y Respeto
3Redu: Responsabilidad, Resiliencia y Respetocdraco
 
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informáticavazquezgarciajesusma
 
ACTIVIDAD DE TECNOLOGÍA AÑO LECTIVO 2024
ACTIVIDAD DE TECNOLOGÍA AÑO LECTIVO 2024ACTIVIDAD DE TECNOLOGÍA AÑO LECTIVO 2024
ACTIVIDAD DE TECNOLOGÍA AÑO LECTIVO 2024DanielErazoMedina
 
PRÁCTICAS DEL MÓDULO I Y II DE EDUCACIÓN Y SOCIEDAD.docx
PRÁCTICAS DEL MÓDULO I Y II DE EDUCACIÓN Y SOCIEDAD.docxPRÁCTICAS DEL MÓDULO I Y II DE EDUCACIÓN Y SOCIEDAD.docx
PRÁCTICAS DEL MÓDULO I Y II DE EDUCACIÓN Y SOCIEDAD.docxencinasm992
 
Trabajo Coding For kids 1 y 2 grado 9-4.pdf
Trabajo Coding For kids 1 y 2 grado 9-4.pdfTrabajo Coding For kids 1 y 2 grado 9-4.pdf
Trabajo Coding For kids 1 y 2 grado 9-4.pdfcj3806354
 
Desarrollo de Habilidades de Pensamiento.docx (3).pdf
Desarrollo de Habilidades de Pensamiento.docx (3).pdfDesarrollo de Habilidades de Pensamiento.docx (3).pdf
Desarrollo de Habilidades de Pensamiento.docx (3).pdfAlejandraCasallas7
 
Alan Turing Vida o biografía resumida como presentación
Alan Turing Vida o biografía resumida como presentaciónAlan Turing Vida o biografía resumida como presentación
Alan Turing Vida o biografía resumida como presentaciónJuanPrez962115
 
EduFlex, una educación accesible para quienes no entienden en clases
EduFlex, una educación accesible para quienes no entienden en clasesEduFlex, una educación accesible para quienes no entienden en clases
EduFlex, una educación accesible para quienes no entienden en clasesPABLOCESARGARZONBENI
 
herramientas informaticas mas utilizadas
herramientas informaticas mas utilizadasherramientas informaticas mas utilizadas
herramientas informaticas mas utilizadaspqeilyn0827
 
Presentacion y Extension de tema para Blogger.pptx
Presentacion y Extension de tema para Blogger.pptxPresentacion y Extension de tema para Blogger.pptx
Presentacion y Extension de tema para Blogger.pptxTaim11
 
3°ð_¦_â_¾ï¸_S34 PLAN DARUKEL DIDÃ_CTICA 23-24.docx
3°ð_¦_â_¾ï¸_S34 PLAN DARUKEL DIDÃ_CTICA 23-24.docx3°ð_¦_â_¾ï¸_S34 PLAN DARUKEL DIDÃ_CTICA 23-24.docx
3°ð_¦_â_¾ï¸_S34 PLAN DARUKEL DIDÃ_CTICA 23-24.docxwerito139410
 
Diagrama de flujo basada en la reparacion de automoviles.pdf
Diagrama de flujo basada en la reparacion de automoviles.pdfDiagrama de flujo basada en la reparacion de automoviles.pdf
Diagrama de flujo basada en la reparacion de automoviles.pdfManuelCampos464987
 

Último (20)

Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...
Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...
Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...
 
leidy fuentes - power point -expocccion -unidad 4 (1).pptx
leidy fuentes - power point -expocccion -unidad 4 (1).pptxleidy fuentes - power point -expocccion -unidad 4 (1).pptx
leidy fuentes - power point -expocccion -unidad 4 (1).pptx
 
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
 
HerramientasInformaticas ¿Que es? - ¿Para que sirve? - Recomendaciones - Comp...
HerramientasInformaticas ¿Que es? - ¿Para que sirve? - Recomendaciones - Comp...HerramientasInformaticas ¿Que es? - ¿Para que sirve? - Recomendaciones - Comp...
HerramientasInformaticas ¿Que es? - ¿Para que sirve? - Recomendaciones - Comp...
 
Inteligencia Artificial y Ciberseguridad.pdf
Inteligencia Artificial y Ciberseguridad.pdfInteligencia Artificial y Ciberseguridad.pdf
Inteligencia Artificial y Ciberseguridad.pdf
 
Licencias para el Uso y el Desarrollo de Software
Licencias para el Uso y el Desarrollo de SoftwareLicencias para el Uso y el Desarrollo de Software
Licencias para el Uso y el Desarrollo de Software
 
lenguaje algebraico.pptx álgebra, trigonometria
lenguaje algebraico.pptx álgebra, trigonometrialenguaje algebraico.pptx álgebra, trigonometria
lenguaje algebraico.pptx álgebra, trigonometria
 
Posnarrativas en la era de la IA generativa
Posnarrativas en la era de la IA generativaPosnarrativas en la era de la IA generativa
Posnarrativas en la era de la IA generativa
 
3Redu: Responsabilidad, Resiliencia y Respeto
3Redu: Responsabilidad, Resiliencia y Respeto3Redu: Responsabilidad, Resiliencia y Respeto
3Redu: Responsabilidad, Resiliencia y Respeto
 
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
 
ACTIVIDAD DE TECNOLOGÍA AÑO LECTIVO 2024
ACTIVIDAD DE TECNOLOGÍA AÑO LECTIVO 2024ACTIVIDAD DE TECNOLOGÍA AÑO LECTIVO 2024
ACTIVIDAD DE TECNOLOGÍA AÑO LECTIVO 2024
 
PRÁCTICAS DEL MÓDULO I Y II DE EDUCACIÓN Y SOCIEDAD.docx
PRÁCTICAS DEL MÓDULO I Y II DE EDUCACIÓN Y SOCIEDAD.docxPRÁCTICAS DEL MÓDULO I Y II DE EDUCACIÓN Y SOCIEDAD.docx
PRÁCTICAS DEL MÓDULO I Y II DE EDUCACIÓN Y SOCIEDAD.docx
 
Trabajo Coding For kids 1 y 2 grado 9-4.pdf
Trabajo Coding For kids 1 y 2 grado 9-4.pdfTrabajo Coding For kids 1 y 2 grado 9-4.pdf
Trabajo Coding For kids 1 y 2 grado 9-4.pdf
 
Desarrollo de Habilidades de Pensamiento.docx (3).pdf
Desarrollo de Habilidades de Pensamiento.docx (3).pdfDesarrollo de Habilidades de Pensamiento.docx (3).pdf
Desarrollo de Habilidades de Pensamiento.docx (3).pdf
 
Alan Turing Vida o biografía resumida como presentación
Alan Turing Vida o biografía resumida como presentaciónAlan Turing Vida o biografía resumida como presentación
Alan Turing Vida o biografía resumida como presentación
 
EduFlex, una educación accesible para quienes no entienden en clases
EduFlex, una educación accesible para quienes no entienden en clasesEduFlex, una educación accesible para quienes no entienden en clases
EduFlex, una educación accesible para quienes no entienden en clases
 
herramientas informaticas mas utilizadas
herramientas informaticas mas utilizadasherramientas informaticas mas utilizadas
herramientas informaticas mas utilizadas
 
Presentacion y Extension de tema para Blogger.pptx
Presentacion y Extension de tema para Blogger.pptxPresentacion y Extension de tema para Blogger.pptx
Presentacion y Extension de tema para Blogger.pptx
 
3°ð_¦_â_¾ï¸_S34 PLAN DARUKEL DIDÃ_CTICA 23-24.docx
3°ð_¦_â_¾ï¸_S34 PLAN DARUKEL DIDÃ_CTICA 23-24.docx3°ð_¦_â_¾ï¸_S34 PLAN DARUKEL DIDÃ_CTICA 23-24.docx
3°ð_¦_â_¾ï¸_S34 PLAN DARUKEL DIDÃ_CTICA 23-24.docx
 
Diagrama de flujo basada en la reparacion de automoviles.pdf
Diagrama de flujo basada en la reparacion de automoviles.pdfDiagrama de flujo basada en la reparacion de automoviles.pdf
Diagrama de flujo basada en la reparacion de automoviles.pdf
 

Arquitectura basada a Eventos para principiantes con Apache Kafka