Microservices has been buzzword in the last years in software engineering. It helps to solve issues we had with monolith applications, however it also brings new challenges. Eclipse MicroProfile provides a time to market set of specifications and tools addressing these many challenges. Jean-Louis will be looking on how to use these spec implementations in practice throughout this presentation and show step-by-step examples on how to add monitoring with MP Health and with MP Metrics, security with MP JWT, custom configuration with MP Config, and also teach how to easily provide documentation with MP OpenAPI and much more. Lightweight will be achieved by deploying and running Docker on raspberry PIs.
Dublin JUG Lightweight Microservices with Microprofile and Raspberry PIsJean-Louis MONTEIRO
Microservices has been buzzword in the last years in software engineering. It helps to solve issues we had with monolith applications, however it also brings new challenges.
Eclipse MicroProfile provides a time to market set of specifications and tools addressing these many challenges. Jean-Louis will be looking on how to use these spec implementations in practice throughout this presentation and show step-by-step examples on how to add monitoring with MP Health and with MP Metrics, security with MP JWT, custom configuration with MP Config, and also teach how to easily provide documentation with MP OpenAPI and much more.
Lightweight will be achieved by deploying and running Docker on raspberry PIs.
Jean-Louis Monteiro gave a presentation on MicroProfile and microservices. He discussed what MicroProfile is, which includes specifications for CDI, JAX-RS and JSON-P. He demonstrated a simple MicroProfile application and how to deploy applications to Raspberry Pi devices using Docker. He also overviewed various MicroProfile specifications like configuration, metrics, health checks and fault tolerance.
This document provides an overview of consumer-driven contracts (CDC) and the Pact framework for implementing CDC. It defines CDC as a pattern where consumers capture expectations of providers in separate contract files (called pacts) that are shared with providers. This allows providers to validate that their implementations meet the consumers' expectations. The document then describes how Pact works, including capturing interactions on the consumer side, generating a pact file, and validating interactions on the provider side. It highlights advantages of CDC like reducing assumptions, enabling communication, and failing fast. The second half demonstrates setting up a mock provider and expectations on the consumer side, making a request and assertion, and validating the pact on the provider side.
"Asynchronous" Integration Tests for Microservices - RootConf 2017Ramya Authappan
The document discusses using consumer-driven contract (CDC) testing with Pact to test microservices integration. It explains that with CDC, consumers capture expectations of providers in "pact" files, which are shared and verified by providers. The demo shows generating a pact file on the consumer side by setting up expectations and making requests, then verifying it on the provider side by replaying requests and asserting responses match. CDC allows testing integrations independently and catching issues early without requiring running dependent services.
Why Everyone Needs DevOps Now: 15 Year Study Of High Performing Technology OrgsGene Kim
This presentation describes my interpretation of the Why and How of DevOps, and the key findings from my 15 year study of high-performing IT organizations, and how they simultaneously deliver stellar service levels and rapid implementation of new features into the production environment.
Organizations employing DevOps practices such as Google, Amazon, Facebook, Etsy and Twitter are routinely deploying code into production hundreds, or even thousands, of times per day, while providing world-class availability, reliability and security. In contrast, most organizations struggle to do releases more every nine months.
He will present how these high-performing organizations achieve this fast flow of work through Product Management and Development, through QA and Infosec, and into IT Operations. By doing so, other organizations can now replicate the extraordinary culture and outcomes enabling their organization to win in the marketplace.
Creando microservicios con Java y Microprofile - Nicaragua JUGCésar Hernández
En esta sesión los asistentes presenciaron la base teórica y práctica para la creación de micro servicios con Java, JakartaEE, MicroProfile utilizando TomEE como servidor de aplicaciones.
Building Your First App with MongoDB StitchMongoDB
MongoDB Stitch is a platform that allows developers to easily access MongoDB databases and integrate with key services. It provides native SDKs, integrated rules and functions to build scalable backends. Requests made through Stitch are parsed, services are orchestrated, rules are applied, and results are returned to clients. Stitch handles authentication, authorization and access controls through user profiles and declarative rules. It is a unified solution for building complete applications that connect to MongoDB and external services securely.
Dublin JUG Lightweight Microservices with Microprofile and Raspberry PIsJean-Louis MONTEIRO
Microservices has been buzzword in the last years in software engineering. It helps to solve issues we had with monolith applications, however it also brings new challenges.
Eclipse MicroProfile provides a time to market set of specifications and tools addressing these many challenges. Jean-Louis will be looking on how to use these spec implementations in practice throughout this presentation and show step-by-step examples on how to add monitoring with MP Health and with MP Metrics, security with MP JWT, custom configuration with MP Config, and also teach how to easily provide documentation with MP OpenAPI and much more.
Lightweight will be achieved by deploying and running Docker on raspberry PIs.
Jean-Louis Monteiro gave a presentation on MicroProfile and microservices. He discussed what MicroProfile is, which includes specifications for CDI, JAX-RS and JSON-P. He demonstrated a simple MicroProfile application and how to deploy applications to Raspberry Pi devices using Docker. He also overviewed various MicroProfile specifications like configuration, metrics, health checks and fault tolerance.
This document provides an overview of consumer-driven contracts (CDC) and the Pact framework for implementing CDC. It defines CDC as a pattern where consumers capture expectations of providers in separate contract files (called pacts) that are shared with providers. This allows providers to validate that their implementations meet the consumers' expectations. The document then describes how Pact works, including capturing interactions on the consumer side, generating a pact file, and validating interactions on the provider side. It highlights advantages of CDC like reducing assumptions, enabling communication, and failing fast. The second half demonstrates setting up a mock provider and expectations on the consumer side, making a request and assertion, and validating the pact on the provider side.
"Asynchronous" Integration Tests for Microservices - RootConf 2017Ramya Authappan
The document discusses using consumer-driven contract (CDC) testing with Pact to test microservices integration. It explains that with CDC, consumers capture expectations of providers in "pact" files, which are shared and verified by providers. The demo shows generating a pact file on the consumer side by setting up expectations and making requests, then verifying it on the provider side by replaying requests and asserting responses match. CDC allows testing integrations independently and catching issues early without requiring running dependent services.
Why Everyone Needs DevOps Now: 15 Year Study Of High Performing Technology OrgsGene Kim
This presentation describes my interpretation of the Why and How of DevOps, and the key findings from my 15 year study of high-performing IT organizations, and how they simultaneously deliver stellar service levels and rapid implementation of new features into the production environment.
Organizations employing DevOps practices such as Google, Amazon, Facebook, Etsy and Twitter are routinely deploying code into production hundreds, or even thousands, of times per day, while providing world-class availability, reliability and security. In contrast, most organizations struggle to do releases more every nine months.
He will present how these high-performing organizations achieve this fast flow of work through Product Management and Development, through QA and Infosec, and into IT Operations. By doing so, other organizations can now replicate the extraordinary culture and outcomes enabling their organization to win in the marketplace.
Creando microservicios con Java y Microprofile - Nicaragua JUGCésar Hernández
En esta sesión los asistentes presenciaron la base teórica y práctica para la creación de micro servicios con Java, JakartaEE, MicroProfile utilizando TomEE como servidor de aplicaciones.
Building Your First App with MongoDB StitchMongoDB
MongoDB Stitch is a platform that allows developers to easily access MongoDB databases and integrate with key services. It provides native SDKs, integrated rules and functions to build scalable backends. Requests made through Stitch are parsed, services are orchestrated, rules are applied, and results are returned to clients. Stitch handles authentication, authorization and access controls through user profiles and declarative rules. It is a unified solution for building complete applications that connect to MongoDB and external services securely.
Gene Kim shared his top five learnings from DevOps: 1) the business value of DevOps is higher than thought, with high performers seeing 30x more deployments and faster lead times; 2) DevOps benefits operations as much as development by reducing batch sizes and deploying changes more frequently; 3) measuring code deployment lead time is important and predicts performance; 4) DevOps is useful for large enterprises, not just unicorns, as seen from case studies at Capital One, Disney, and GE; 5) fear of deploying predicts performance, and organizations should reduce this fear.
Creando microservicios con Java MicroProfile y TomEE - OGBTCésar Hernández
En esta sesión los asistentes presenciaron la base teórica y práctica para la creación de micro servicios con Java, JakartaEE, MicroProfile utilizando TomEE como servidor de aplicaciones.
DevOps Patterns Distilled: Implementing The Needed Practices In Practical StepsCA Technologies
Learn from Gene Kim, one of the “DevOps Cookbook” authors, how to help accelerate DevOps adoption, increase the success of DevOps initiatives and lower the activation energy required for DevOps transformations to start and finish.
For more information on DevOps solutions from CA Technologies, please visit: http://bit.ly/1wbjjqX
Voxxed days cluj-napoca Nowadays architecture trends alberto_salazarv2Alberto Salazar
In this session, attendees will learn about a real-world evolution to a Distributed Architecture without being involved of a complete Microservices Madness; we will be covering tips and tricks of an experience of a evolution of a huge EAR Core Banking Application and how we evolve to a modern distributed Architecture until the evolution of use 3rd party services and Serverless; tips, tricks, pros, cons and the reasons for being involved on move forward and present sample code as FaaS and explain the pitfalls of Serverless and the security concerns on this evolution. We will be using snippets code based on JAVA, JWT, JWS, Auth0, Spring Boot, Reactor, Webflux, Spring Cloud Gateway and Spring Cloud Functions.
DevOps: Who Will Create $2.6 Trillion In Business Value Per Year?Gene Kim
This document discusses the benefits of adopting DevOps practices. It notes that wasted IT spending amounts to $2.6 trillion per year and that traditional divisions between development and operations hamper business goals. Adopting DevOps allows for faster delivery of code changes, more reliable systems through better feedback, and an organizational culture of continual learning through experimentation. Companies that have implemented DevOps see benefits like 30x more frequent deployments, 8,000x faster lead times, and higher success rates and availability. The document advocates that all organizations can achieve these gains through DevOps.
ES~Conference Mexico Nowadays Architecture Trends, from Monolith to Microserv...Alberto Salazar
In this session, attendees will learn about a real-world evolution to a Distributed Architecture without being involved of a complete Microservices Madness; we will be covering tips and tricks of an experience of a evolution of a huge EAR Core Banking Application and how we evolve to a modern distributed Architecture until the evolution of use 3rd party services and Serverless; tips, tricks, pros, cons and the reasons for being involved on move forward and present sample code as FaaS and explain the pitfalls of Serverless and the security concerns on this evolution. We will be using snippets code based on JAVA, Jakarta EE, JWT, JWS, Auth0, JBOSS EAP, Spring Boot, Reactor, Webflux, AWS, Lambdas, AWS Api Gateway and Spring Cloud Functions.
2019 Top Lessons Learned Since the Phoenix Project Was ReleasedGene Kim
This document summarizes key lessons from a presentation by Gene Kim on building a world-class engineering culture. Some of the main surprises discussed include: (1) the business value of DevOps is even higher than previously thought, (2) DevOps benefits operations and security as much as development, (3) measuring code deployment lead time is more important than deployments per day, and (4) Conway's Law has implications for organizational structure and architecture. The presentation also discusses how DevOps enables organizations to become dynamic learning organizations.
How to build a SaaS solution in 60 daysBrett McLain
Brett McLain built a SaaS solution in 60 days using MeteorJS to manage remote devices that customers used to control things like vehicle starters and irrigation pumps remotely via SMS or phone calls. He chose MeteorJS because it provided an integrated full-stack framework with reactivity out of the box. Key features included authentication using accounts packages, managing user devices and commands in MongoDB, and integrating Twilio and Stripe for SMS/call functionality and payments. The final application allowed users to control devices, monitor usage, and subscribe to the service with a credit card through Stripe for a simple backend-free payment experience.
The Unicorn Project and The Five Ideals (Updated Dec 2019)Gene Kim
It is impossible to overstate how much I’ve learned since co-authoring The Phoenix Project, DevOps Handbook, and Accelerate. I’m so excited that after years of work, The Unicorn Project will be published later this year.
This book is my attempt to frame what I’ve learned studying technology leaders adopting DevOps principles and patterns in large, complex organizations, often having to fight deeply entrenched orthodoxies. And yet, despite huge obstacles, they create incredibly effective and innovative teams that create beacons of greatness that inspire us all.
In this book, we follow a senior lead developer and architect as she is exiled to the Phoenix Project, to the horror of her friends and colleagues, as punishment for contributing to a payroll outage. She tries to survive in what feels like a heartless and uncaring bureaucracy, forced to work within a system where no one can get anything done without endless committees, paperwork, change requests, and approvals. Decades of technical debt make even small changes difficult or impossible, often causing catastrophic outcomes and fear of punishment.
I get tremendous delight and gratification that this book is not about the bridge crew of the Starship Enterprise -- instead, it is about redshirt engineers, which as it turns out, whose heroic work matters most to the long-term survival of almost every organization.
In my previous books, I’ve focused on principles and practices (e.g., Three Ways, Four Types of Work). However, I’ve always wanted to describe the spectrum of cultural, experiential and value decisions we make that either enable greatness, or create chronic suffering and underperformance. They are currently as follows:
• The First Ideal — Locality and Simplicity
• The Second Ideal — Focus, Flow and Joy
• The Third Ideal — Improvement of Daily Work
• The Fourth Ideal — Psychological Safety
• The Fifth Ideal — Customer Focus
In this talk, I’ll share with you my goals and aspirations for The Unicorn Project, describe in detail the Five Ideals, along with my favorite case studies of both ideal and non-ideal, and why I believe more than ever that DevOps will be one of the most potent economic forces for decades to come.
Tests? Who's got time for that? They slow us down.
Test code should be an investment and not a cost. Instead, it is often treated as a mere annoyance and impediment to our progress.
What does a good test code look like? One that will not annoy us and slow us down? One that will help us write, read and understand our code? How can we invest and collect interest from it instead of paying a price?
This is not a theoretical presentation. We will see how we can achieve this by example, using the common tools, libraries, and techniques available for us on the JVM ecosystem
Rendering strategies: Measuring the devil's details in core web vitals - Jam...Jamie Indigo
Core Web Vital are the results of how we render a page. For all this buzz, the battlefield fits in your pocket.
The battle field for CWV is the initial viewport AKA above the fold
CWV are diagnostic output, the result of how quick we complete the critical rendering path.
How we render affects how quickly we achieve the critical rendering path.
Devnexus - Nowadays Architecture Trends, from Monolith to Microservices and S...Alberto Salazar
This document discusses architecture trends from monolith to microservices and serverless. It begins with an overview of monolith applications and their limitations over time. It then covers challenges in transitioning from a monolith to microservices and some strategies for doing so incrementally, such as splitting the frontend from the backend. The document also discusses serverless architectures and third party services. It concludes with tips on logging, monitoring, and considerations around costs, complexity and vendor lock-in for different architectural approaches.
Infosec at Ludicrous Speeds - Rugged DevOps Gene Kim
The document discusses how information security (infosec) teams can adopt a DevOps approach. It describes five "acts" that outline historical tensions between different IT groups like operations, development, and infosec. It then provides three ways for infosec to integrate with DevOps: using systems thinking to understand workflow; amplifying feedback loops to fix issues faster; and embracing a culture of experimentation. Specific practices are outlined for each way to help infosec contribute to the organizational DevOps journey.
This document discusses MongoDB Mobile, which brings the power of MongoDB to mobile devices. It allows developers to build mobile apps that leverage MongoDB everywhere by providing a mobile database, drivers for iOS and Android, and the Stitch SDK to connect mobile and cloud services. Stitch provides authentication, rules, and syncing between local and remote data to enable seamless offline usage. An example chat app is outlined using Stitch for user authentication, custom user and channel models, and subscriptions to channel data.
Gene Kim gave a presentation on his 15-year journey studying high performing IT organizations and their use of DevOps practices. He discussed how traditional IT operations created conflict between development and operations teams. However, companies like Google, Amazon and Netflix achieved much higher performance through practices like continuous integration, deployment of smaller changes frequently, automated testing, and monitoring production environments. These practices improved flow, feedback and continuous learning.
The Unicorn Project and the Five Ideals.pdfVMware Tanzu
The document discusses several topics related to DevOps ideals:
1. It defines the fourth ideal of psychological safety as enabling an environment where people feel safe to take risks and try new ideas without fear of negative consequences.
2. It discusses research on high-performing teams from Google and others that identified psychological safety as a key factor in team performance.
3. It highlights the importance of a "generative" culture over a "bureaucratic" or "pathological" culture according to the Westrum typology of organizational culture.
Talk given by David Lucey, Systems Engineering Architect at Salesforce, at Open Network Users Group in May 2016
“Livestock, not Pets.” We’ve all heard the phrase, but it seems to be so much harder in practice. It’s even worse when applications are developed over decades.
Well, the Salesforce application suite has been developed over decades, with a massive number of products, features, and offerings within its own ecosystem. Come see how Salesforce wrangles that livestock and handles their scale of infrastructure at a high velocity – all while maintaining their high level of security.
Bye Bye Charles, Welcome Odo, Android Meetup Berlin May 2014Danny Preussler
Introducing the next generation testing proxy we use at Groupon to the public:
Odo an http proxy with a RESTful API for mocking or partial rewriting of responses and requests
Jconf Colombia Nowadays Architecture Trends, from Monolith to Microservices a...Alberto Salazar
This document discusses architecture trends from monoliths to microservices and serverless architectures. It begins with an overview of monoliths and their limitations as applications grow large. It then discusses how to transition from a monolith to microservices by splitting the frontend and backend, establishing interfaces, and moving functionality to independent services. It also covers challenges like distributed communication overhead and logging. Finally, it discusses serverless architectures and how business logic can be implemented as ephemeral functions to avoid server management overhead.
UI5con 2024 - Boost Your Development Experience with UI5 Tooling ExtensionsPeter Muessig
The UI5 tooling is the development and build tooling of UI5. It is built in a modular and extensible way so that it can be easily extended by your needs. This session will showcase various tooling extensions which can boost your development experience by far so that you can really work offline, transpile your code in your project to use even newer versions of EcmaScript (than 2022 which is supported right now by the UI5 tooling), consume any npm package of your choice in your project, using different kind of proxies, and even stitching UI5 projects during development together to mimic your target environment.
Gene Kim shared his top five learnings from DevOps: 1) the business value of DevOps is higher than thought, with high performers seeing 30x more deployments and faster lead times; 2) DevOps benefits operations as much as development by reducing batch sizes and deploying changes more frequently; 3) measuring code deployment lead time is important and predicts performance; 4) DevOps is useful for large enterprises, not just unicorns, as seen from case studies at Capital One, Disney, and GE; 5) fear of deploying predicts performance, and organizations should reduce this fear.
Creando microservicios con Java MicroProfile y TomEE - OGBTCésar Hernández
En esta sesión los asistentes presenciaron la base teórica y práctica para la creación de micro servicios con Java, JakartaEE, MicroProfile utilizando TomEE como servidor de aplicaciones.
DevOps Patterns Distilled: Implementing The Needed Practices In Practical StepsCA Technologies
Learn from Gene Kim, one of the “DevOps Cookbook” authors, how to help accelerate DevOps adoption, increase the success of DevOps initiatives and lower the activation energy required for DevOps transformations to start and finish.
For more information on DevOps solutions from CA Technologies, please visit: http://bit.ly/1wbjjqX
Voxxed days cluj-napoca Nowadays architecture trends alberto_salazarv2Alberto Salazar
In this session, attendees will learn about a real-world evolution to a Distributed Architecture without being involved of a complete Microservices Madness; we will be covering tips and tricks of an experience of a evolution of a huge EAR Core Banking Application and how we evolve to a modern distributed Architecture until the evolution of use 3rd party services and Serverless; tips, tricks, pros, cons and the reasons for being involved on move forward and present sample code as FaaS and explain the pitfalls of Serverless and the security concerns on this evolution. We will be using snippets code based on JAVA, JWT, JWS, Auth0, Spring Boot, Reactor, Webflux, Spring Cloud Gateway and Spring Cloud Functions.
DevOps: Who Will Create $2.6 Trillion In Business Value Per Year?Gene Kim
This document discusses the benefits of adopting DevOps practices. It notes that wasted IT spending amounts to $2.6 trillion per year and that traditional divisions between development and operations hamper business goals. Adopting DevOps allows for faster delivery of code changes, more reliable systems through better feedback, and an organizational culture of continual learning through experimentation. Companies that have implemented DevOps see benefits like 30x more frequent deployments, 8,000x faster lead times, and higher success rates and availability. The document advocates that all organizations can achieve these gains through DevOps.
ES~Conference Mexico Nowadays Architecture Trends, from Monolith to Microserv...Alberto Salazar
In this session, attendees will learn about a real-world evolution to a Distributed Architecture without being involved of a complete Microservices Madness; we will be covering tips and tricks of an experience of a evolution of a huge EAR Core Banking Application and how we evolve to a modern distributed Architecture until the evolution of use 3rd party services and Serverless; tips, tricks, pros, cons and the reasons for being involved on move forward and present sample code as FaaS and explain the pitfalls of Serverless and the security concerns on this evolution. We will be using snippets code based on JAVA, Jakarta EE, JWT, JWS, Auth0, JBOSS EAP, Spring Boot, Reactor, Webflux, AWS, Lambdas, AWS Api Gateway and Spring Cloud Functions.
2019 Top Lessons Learned Since the Phoenix Project Was ReleasedGene Kim
This document summarizes key lessons from a presentation by Gene Kim on building a world-class engineering culture. Some of the main surprises discussed include: (1) the business value of DevOps is even higher than previously thought, (2) DevOps benefits operations and security as much as development, (3) measuring code deployment lead time is more important than deployments per day, and (4) Conway's Law has implications for organizational structure and architecture. The presentation also discusses how DevOps enables organizations to become dynamic learning organizations.
How to build a SaaS solution in 60 daysBrett McLain
Brett McLain built a SaaS solution in 60 days using MeteorJS to manage remote devices that customers used to control things like vehicle starters and irrigation pumps remotely via SMS or phone calls. He chose MeteorJS because it provided an integrated full-stack framework with reactivity out of the box. Key features included authentication using accounts packages, managing user devices and commands in MongoDB, and integrating Twilio and Stripe for SMS/call functionality and payments. The final application allowed users to control devices, monitor usage, and subscribe to the service with a credit card through Stripe for a simple backend-free payment experience.
The Unicorn Project and The Five Ideals (Updated Dec 2019)Gene Kim
It is impossible to overstate how much I’ve learned since co-authoring The Phoenix Project, DevOps Handbook, and Accelerate. I’m so excited that after years of work, The Unicorn Project will be published later this year.
This book is my attempt to frame what I’ve learned studying technology leaders adopting DevOps principles and patterns in large, complex organizations, often having to fight deeply entrenched orthodoxies. And yet, despite huge obstacles, they create incredibly effective and innovative teams that create beacons of greatness that inspire us all.
In this book, we follow a senior lead developer and architect as she is exiled to the Phoenix Project, to the horror of her friends and colleagues, as punishment for contributing to a payroll outage. She tries to survive in what feels like a heartless and uncaring bureaucracy, forced to work within a system where no one can get anything done without endless committees, paperwork, change requests, and approvals. Decades of technical debt make even small changes difficult or impossible, often causing catastrophic outcomes and fear of punishment.
I get tremendous delight and gratification that this book is not about the bridge crew of the Starship Enterprise -- instead, it is about redshirt engineers, which as it turns out, whose heroic work matters most to the long-term survival of almost every organization.
In my previous books, I’ve focused on principles and practices (e.g., Three Ways, Four Types of Work). However, I’ve always wanted to describe the spectrum of cultural, experiential and value decisions we make that either enable greatness, or create chronic suffering and underperformance. They are currently as follows:
• The First Ideal — Locality and Simplicity
• The Second Ideal — Focus, Flow and Joy
• The Third Ideal — Improvement of Daily Work
• The Fourth Ideal — Psychological Safety
• The Fifth Ideal — Customer Focus
In this talk, I’ll share with you my goals and aspirations for The Unicorn Project, describe in detail the Five Ideals, along with my favorite case studies of both ideal and non-ideal, and why I believe more than ever that DevOps will be one of the most potent economic forces for decades to come.
Tests? Who's got time for that? They slow us down.
Test code should be an investment and not a cost. Instead, it is often treated as a mere annoyance and impediment to our progress.
What does a good test code look like? One that will not annoy us and slow us down? One that will help us write, read and understand our code? How can we invest and collect interest from it instead of paying a price?
This is not a theoretical presentation. We will see how we can achieve this by example, using the common tools, libraries, and techniques available for us on the JVM ecosystem
Rendering strategies: Measuring the devil's details in core web vitals - Jam...Jamie Indigo
Core Web Vital are the results of how we render a page. For all this buzz, the battlefield fits in your pocket.
The battle field for CWV is the initial viewport AKA above the fold
CWV are diagnostic output, the result of how quick we complete the critical rendering path.
How we render affects how quickly we achieve the critical rendering path.
Devnexus - Nowadays Architecture Trends, from Monolith to Microservices and S...Alberto Salazar
This document discusses architecture trends from monolith to microservices and serverless. It begins with an overview of monolith applications and their limitations over time. It then covers challenges in transitioning from a monolith to microservices and some strategies for doing so incrementally, such as splitting the frontend from the backend. The document also discusses serverless architectures and third party services. It concludes with tips on logging, monitoring, and considerations around costs, complexity and vendor lock-in for different architectural approaches.
Infosec at Ludicrous Speeds - Rugged DevOps Gene Kim
The document discusses how information security (infosec) teams can adopt a DevOps approach. It describes five "acts" that outline historical tensions between different IT groups like operations, development, and infosec. It then provides three ways for infosec to integrate with DevOps: using systems thinking to understand workflow; amplifying feedback loops to fix issues faster; and embracing a culture of experimentation. Specific practices are outlined for each way to help infosec contribute to the organizational DevOps journey.
This document discusses MongoDB Mobile, which brings the power of MongoDB to mobile devices. It allows developers to build mobile apps that leverage MongoDB everywhere by providing a mobile database, drivers for iOS and Android, and the Stitch SDK to connect mobile and cloud services. Stitch provides authentication, rules, and syncing between local and remote data to enable seamless offline usage. An example chat app is outlined using Stitch for user authentication, custom user and channel models, and subscriptions to channel data.
Gene Kim gave a presentation on his 15-year journey studying high performing IT organizations and their use of DevOps practices. He discussed how traditional IT operations created conflict between development and operations teams. However, companies like Google, Amazon and Netflix achieved much higher performance through practices like continuous integration, deployment of smaller changes frequently, automated testing, and monitoring production environments. These practices improved flow, feedback and continuous learning.
The Unicorn Project and the Five Ideals.pdfVMware Tanzu
The document discusses several topics related to DevOps ideals:
1. It defines the fourth ideal of psychological safety as enabling an environment where people feel safe to take risks and try new ideas without fear of negative consequences.
2. It discusses research on high-performing teams from Google and others that identified psychological safety as a key factor in team performance.
3. It highlights the importance of a "generative" culture over a "bureaucratic" or "pathological" culture according to the Westrum typology of organizational culture.
Talk given by David Lucey, Systems Engineering Architect at Salesforce, at Open Network Users Group in May 2016
“Livestock, not Pets.” We’ve all heard the phrase, but it seems to be so much harder in practice. It’s even worse when applications are developed over decades.
Well, the Salesforce application suite has been developed over decades, with a massive number of products, features, and offerings within its own ecosystem. Come see how Salesforce wrangles that livestock and handles their scale of infrastructure at a high velocity – all while maintaining their high level of security.
Bye Bye Charles, Welcome Odo, Android Meetup Berlin May 2014Danny Preussler
Introducing the next generation testing proxy we use at Groupon to the public:
Odo an http proxy with a RESTful API for mocking or partial rewriting of responses and requests
Jconf Colombia Nowadays Architecture Trends, from Monolith to Microservices a...Alberto Salazar
This document discusses architecture trends from monoliths to microservices and serverless architectures. It begins with an overview of monoliths and their limitations as applications grow large. It then discusses how to transition from a monolith to microservices by splitting the frontend and backend, establishing interfaces, and moving functionality to independent services. It also covers challenges like distributed communication overhead and logging. Finally, it discusses serverless architectures and how business logic can be implemented as ephemeral functions to avoid server management overhead.
Similar to Birmingham JUG Lightweight Microservices with Microprofile and Raspberry PIs (20)
UI5con 2024 - Boost Your Development Experience with UI5 Tooling ExtensionsPeter Muessig
The UI5 tooling is the development and build tooling of UI5. It is built in a modular and extensible way so that it can be easily extended by your needs. This session will showcase various tooling extensions which can boost your development experience by far so that you can really work offline, transpile your code in your project to use even newer versions of EcmaScript (than 2022 which is supported right now by the UI5 tooling), consume any npm package of your choice in your project, using different kind of proxies, and even stitching UI5 projects during development together to mimic your target environment.
E-Invoicing Implementation: A Step-by-Step Guide for Saudi Arabian CompaniesQuickdice ERP
Explore the seamless transition to e-invoicing with this comprehensive guide tailored for Saudi Arabian businesses. Navigate the process effortlessly with step-by-step instructions designed to streamline implementation and enhance efficiency.
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...Crescat
Crescat is industry-trusted event management software, built by event professionals for event professionals. Founded in 2017, we have three key products tailored for the live event industry.
Crescat Event for concert promoters and event agencies. Crescat Venue for music venues, conference centers, wedding venues, concert halls and more. And Crescat Festival for festivals, conferences and complex events.
With a wide range of popular features such as event scheduling, shift management, volunteer and crew coordination, artist booking and much more, Crescat is designed for customisation and ease-of-use.
Over 125,000 events have been planned in Crescat and with hundreds of customers of all shapes and sizes, from boutique event agencies through to international concert promoters, Crescat is rigged for success. What's more, we highly value feedback from our users and we are constantly improving our software with updates, new features and improvements.
If you plan events, run a venue or produce festivals and you're looking for ways to make your life easier, then we have a solution for you. Try our software for free or schedule a no-obligation demo with one of our product specialists today at crescat.io
Artificia Intellicence and XPath Extension FunctionsOctavian Nadolu
The purpose of this presentation is to provide an overview of how you can use AI from XSLT, XQuery, Schematron, or XML Refactoring operations, the potential benefits of using AI, and some of the challenges we face.
WhatsApp offers simple, reliable, and private messaging and calling services for free worldwide. With end-to-end encryption, your personal messages and calls are secure, ensuring only you and the recipient can access them. Enjoy voice and video calls to stay connected with loved ones or colleagues. Express yourself using stickers, GIFs, or by sharing moments on Status. WhatsApp Business enables global customer outreach, facilitating sales growth and relationship building through showcasing products and services. Stay connected effortlessly with group chats for planning outings with friends or staying updated on family conversations.
Measures in SQL (SIGMOD 2024, Santiago, Chile)Julian Hyde
SQL has attained widespread adoption, but Business Intelligence tools still use their own higher level languages based upon a multidimensional paradigm. Composable calculations are what is missing from SQL, and we propose a new kind of column, called a measure, that attaches a calculation to a table. Like regular tables, tables with measures are composable and closed when used in queries.
SQL-with-measures has the power, conciseness and reusability of multidimensional languages but retains SQL semantics. Measure invocations can be expanded in place to simple, clear SQL.
To define the evaluation semantics for measures, we introduce context-sensitive expressions (a way to evaluate multidimensional expressions that is consistent with existing SQL semantics), a concept called evaluation context, and several operations for setting and modifying the evaluation context.
A talk at SIGMOD, June 9–15, 2024, Santiago, Chile
Authors: Julian Hyde (Google) and John Fremlin (Google)
https://doi.org/10.1145/3626246.3653374
E-commerce Application Development Company.pdfHornet Dynamics
Your business can reach new heights with our assistance as we design solutions that are specifically appropriate for your goals and vision. Our eCommerce application solutions can digitally coordinate all retail operations processes to meet the demands of the marketplace while maintaining business continuity.
Hand Rolled Applicative User ValidationCode KataPhilip Schwarz
Could you use a simple piece of Scala validation code (granted, a very simplistic one too!) that you can rewrite, now and again, to refresh your basic understanding of Applicative operators <*>, <*, *>?
The goal is not to write perfect code showcasing validation, but rather, to provide a small, rough-and ready exercise to reinforce your muscle-memory.
Despite its grandiose-sounding title, this deck consists of just three slides showing the Scala 3 code to be rewritten whenever the details of the operators begin to fade away.
The code is my rough and ready translation of a Haskell user-validation program found in a book called Finding Success (and Failure) in Haskell - Fall in love with applicative functors.
Using Query Store in Azure PostgreSQL to Understand Query PerformanceGrant Fritchey
Microsoft has added an excellent new extension in PostgreSQL on their Azure Platform. This session, presented at Posette 2024, covers what Query Store is and the types of information you can get out of it.
OpenMetadata Community Meeting - 5th June 2024OpenMetadata
The OpenMetadata Community Meeting was held on June 5th, 2024. In this meeting, we discussed about the data quality capabilities that are integrated with the Incident Manager, providing a complete solution to handle your data observability needs. Watch the end-to-end demo of the data quality features.
* How to run your own data quality framework
* What is the performance impact of running data quality frameworks
* How to run the test cases in your own ETL pipelines
* How the Incident Manager is integrated
* Get notified with alerts when test cases fail
Watch the meeting recording here - https://www.youtube.com/watch?v=UbNOje0kf6E
Atelier - Innover avec l’IA Générative et les graphes de connaissancesNeo4j
Atelier - Innover avec l’IA Générative et les graphes de connaissances
Allez au-delà du battage médiatique autour de l’IA et découvrez des techniques pratiques pour utiliser l’IA de manière responsable à travers les données de votre organisation. Explorez comment utiliser les graphes de connaissances pour augmenter la précision, la transparence et la capacité d’explication dans les systèmes d’IA générative. Vous partirez avec une expérience pratique combinant les relations entre les données et les LLM pour apporter du contexte spécifique à votre domaine et améliorer votre raisonnement.
Amenez votre ordinateur portable et nous vous guiderons sur la mise en place de votre propre pile d’IA générative, en vous fournissant des exemples pratiques et codés pour démarrer en quelques minutes.
Neo4j - Product Vision and Knowledge Graphs - GraphSummit ParisNeo4j
Dr. Jesús Barrasa, Head of Solutions Architecture for EMEA, Neo4j
Découvrez les dernières innovations de Neo4j, et notamment les dernières intégrations cloud et les améliorations produits qui font de Neo4j un choix essentiel pour les développeurs qui créent des applications avec des données interconnectées et de l’IA générative.
What is Augmented Reality Image Trackingpavan998932
Augmented Reality (AR) Image Tracking is a technology that enables AR applications to recognize and track images in the real world, overlaying digital content onto them. This enhances the user's interaction with their environment by providing additional information and interactive elements directly tied to physical images.
Flutter is a popular open source, cross-platform framework developed by Google. In this webinar we'll explore Flutter and its architecture, delve into the Flutter Embedder and Flutter’s Dart language, discover how to leverage Flutter for embedded device development, learn about Automotive Grade Linux (AGL) and its consortium and understand the rationale behind AGL's choice of Flutter for next-gen IVI systems. Don’t miss this opportunity to discover whether Flutter is right for your project.
4. @dblevins @tomitribe
wm-jug
#wm-jug @jongallimore @JLouisMonteiro @tomitribe
What do people mean by Microservices?
• “Small autonomous services working together”
• “Small enough but not too small”
• “Can be wriCen in 2 weeks”
• “Single responsibility principle”
• “Domain-driven design”
10. @dblevins @tomitribe
wm-jug
#wm-jug @jongallimore @JLouisMonteiro @tomitribe
What is MicroProfile?
• hCp://microprofile.io/
• Enterprise Java for Microservices
• Open Source (Eclipse)
• 3 years old plaUorm
11. @dblevins @tomitribe
wm-jug
#wm-jug @jongallimore @JLouisMonteiro @tomitribe
What is MicroProfile?
• IniLal version 1.0 with CDI, JAX-RS, JSON-P in Sep 2016
• ApplicaLon portability across runLmes
• Currently at version 2.2 since Feb 2019
• ConfiguraLon, Fault Tolerance, JWT PropagaLon, Health Check,
Metrics, Open Tracing, Open API and REST Client
• ReacLve Streams released standalone
13. @dblevins @tomitribe
wm-jug
#wm-jug @jongallimore @JLouisMonteiro @tomitribe
Why MicroProfile?
• Slowdown in Java EE innovaLon
• NegaLve percepLon towards the technology
• Not prepared for Microservices development
15. @dblevins @tomitribe
wm-jug
#wm-jug @jongallimore @JLouisMonteiro @tomitribe
Why MicroProfile?
• A set of “standards” were required to offer guidance in building
Microservices in Java
• These need to evolve very quickly to adjust to the fast moving
Microservices world
• A community of individuals, organisaLons and vendors
collaboraLng to make this a reality
23. wm-jug
#wm-jug @jongallimore @JLouisMonteiro @tomitribe
Putting it all together
@ApplicationScoped
@Path("books")
public class BookResource {
@Inject
private BookBean bookBean;
@GET
@Path("{id}")
public Response findById(@PathParam("id") final Long id) {
final Book book = bookBean.find(id);
final JsonObjectBuilder builder =
Json.createObjectBuilder()
.add(“id", book.getId())
.add("name", book.getTitle());
return Response.ok(builder.build().toString()).build();
}
}
29. @dblevins @tomitribe
wm-jug
#wm-jug @jongallimore @JLouisMonteiro @tomitribe
Configuration
•ApplicaLons need configuraLon based on their running
environment
•It must be possible to change configuraLon without repacking
the applicaLon
•Based on DeltaSpike Config, Apache Tamaya and Sabot
35. @dblevins @tomitribe
wm-jug
#wm-jug @jongallimore @JLouisMonteiro @tomitribe
Fault Tolerance
• Different strategies to guide the execuLon and result of some
logic
• Inspired by Hystrix and Failsafe
• Supports Sync and Async execuLon
36. @dblevins @tomitribe
wm-jug
#wm-jug @jongallimore @JLouisMonteiro @tomitribe
Fault Tolerance
• Depends on CDI
• Interceptor bindings
• Business method invocaLon
• Integrates with MP Config and Metrics
37. @dblevins @tomitribe
wm-jug
#wm-jug @jongallimore @JLouisMonteiro @tomitribe
Timeout
• Prevents the execuLon from waiLng forever
• Fail the execuLon if the Lmeout is hit
• Useful when calling other services
39. @dblevins @tomitribe
wm-jug
#wm-jug @jongallimore @JLouisMonteiro @tomitribe
Fallback
• Invoked when the original execuLon fails
• Specify when it fails
• Fallback to some other execuLon to prevent failures
43. @dblevins @tomitribe
wm-jug
#wm-jug @jongallimore @JLouisMonteiro @tomitribe
Healthchecks
• Probe the state of a computer node
• Primary target cloud infrastructure
• Automated processes to maintain the state of nodes
44. @dblevins @tomitribe
wm-jug
#wm-jug @jongallimore @JLouisMonteiro @tomitribe
Healthchecks
• Simple API to specify health status
• /health JAX-RS endpoint reporLng server health
• Response status indicates if the health check passed
• Payload can include more detail
45. wm-jug
#wm-jug @jongallimore @JLouisMonteiro @tomitribe
Healthchecks
@Health
@ApplicationScoped
public class CheckDiskSpace implements HealthCheck {
public HealthCheckResponse call() {
}
}
49. @dblevins @tomitribe
wm-jug
#wm-jug @jongallimore @JLouisMonteiro @tomitribe
Metrics
• Monitor essenLal System Parameters
• Ensure reliable operaLon of soiware
• Monitoring endpoints to collect data
50. @dblevins @tomitribe
wm-jug
#wm-jug @jongallimore @JLouisMonteiro @tomitribe
Metrics
• Accessible via REST interface
• /metrics/base for MP compliant servers
• /metrics/applicaLon for ApplicaLon specific Metrics
• /metrics/vendor for Server specific metrics
• OPTIONS provides metadata, such as Unit of measure
58. wm-jug
#wm-jug @jongallimore @JLouisMonteiro @tomitribe
Gauge
public class BookResource {
private AtomicLong booksAdded = new AtomicLong();
@Gauge(name="booksadded", unit = MetricUnits.NONE)
public long count() {
return booksAdded.get();
}
}
62. @dblevins @tomitribe
wm-jug
#wm-jug @jongallimore @JLouisMonteiro @tomitribe
OpenTracing
• Trace the flow of a request across services
• OpenTracing is a distributed tracing standard for applicaLons
• Java Binding to OpenTracing ImplementaLon
63. @dblevins @tomitribe
wm-jug
#wm-jug @jongallimore @JLouisMonteiro @tomitribe
OpenTracing
• JAX-RS calls are traced
• Context propagated to services called with REST client
•X-B3-TraceId, X-B3-ParentSpanId, X-B3-SpanId
• Traces are collected and pushed to a database
66. wm-jug
#wm-jug @jongallimore @JLouisMonteiro @tomitribe
@ApplicationScoped
public class BookBean {
@Inject
private Tracer tracer;
public Book create(final Book book) {
final Span activeSpan = tracer.activeSpan();
final Tracer.SpanBuilder spanBuilder = tracer.buildSpan("create");
if (activeSpan != null) {
spanBuilder.asChildOf(activeSpan.context());
}
final Span span = spanBuilder.withTag("created", true).start();
tracer.scopeManager().activate(span, true);
// do work
span.finish();
return book;
}
}
OpenTracing
81. @dblevins @tomitribe
wm-jug
#wm-jug @jongallimore @JLouisMonteiro @tomitribe
REST Client
• Microservices typically talk REST to other services
• Several JAX-RS implementaLons already support interface
definiLon
• Consistent and easy to reuse
86. @dblevins @tomitribe
wm-jug
#wm-jug @jongallimore @JLouisMonteiro @tomitribe
MicroProfile Roadmap
• MicroProfile 3.0 by June 2019
• Major updates to Health and Metrics
• GraphQl, Long Running AcLons, Concurrency, ReacLve
Messaging, Event Data, ReacLve RelaLonal DB Access