3 DevOps teams are building high tech big data web applications in a private cloud environment to support police work. These teams use microservices architectures, with separate front-end and back-end components developed independently but integrated via service discovery. Testing includes unit, integration, and load testing across feature branches in a continuous integration environment before production deployment. Future work includes improving zero downtime deployments, modularizing the front-end, and automating security testing.
Project Sherpa: How RightScale Went All in on DockerRightScale
We just finished a 7 week project at RightScale to migrate 48 services and 650+ cloud instances to Docker. As a result we’ve been able to accelerate our development processes and cut our cloud costs (a lot). Here we share lessons learned about our experience migrating to Docker and introduce our new Container Manager we added to the RightScale platform to help manage containerized environments.
Serverless is aiming to be the future of software development, but what does it really mean running without servers? In this session we will explain how to build a serverless application on top of AWS. We will understand how AWS Lambda functions work, how to use them properly and how can we debug and monitor serverless application.
Micro-Services and cloud-based applications demand robust and flexible CI/CD pipelines. Manually creating a Jenkins Job using the UI is just not an option any more, but which tool should we use? In this talk we will cover Jenkns Pipeline, Gitlab CI and Concourse. We will see the use case for every tool and when should we use it.
Matt Chung (Independent) - Serverless application with AWS Lambda Outlyer
The talk will focus on how we are utilizing AWS Lambda for certain applications and the advantages/disadvantages, and the challenges we discovered along the way. It would help those who are looking to reduce technical debt with the infrastructure and costs.
Previously a Director of technical operations at fox networks (21st Century Fox/News Corporation) responsible for infrastructure and building deployment pipelines. Currently a Python programmer / DevOps engineer with roots in systems/networks administration. Focus is on infrastructure and application automation. Worked as an engineer for Cisco Systems with emphasis on video conferencing. Built microwave networks at Bel Air Internet. Find me on github and twitter @itsmemattchung
Video: https://www.youtube.com/watch?v=BLcElBUhfrQ
Join DevOps Exchange London here: http://www.meetup.com/DevOps-Exchange-London
Follow DOXLON on twitter http://www.twitter.com/doxlon
Trent Hornibrook gave a recent talk at the Infracoders meet-up playing a thought experiment with the audience on 'what would be your tech decisions if you were given a blank cheque at at startup'.
Trent, recently working for a start-up then shared what decisions he made, and why
You know that adopting Continuous Delivery and DevOps is key to a high-performance company. You’ve read the books and are ready to build microservices in the cloud. Great! Let’s go back to the principles and see how to apply them in a cloud native environment. What used to about shipping code to static servers, is now about quickly creating decoupled pipelines for new services that are readily wired up into the platform and everything is driven by code.
This talk will give concrete guidance in a world where autonomous teams continuously deploy many independent services and containers into an infrastructure that is dynamically created via APIs. Learn how to establish a culture that fosters fast local decisions and is driven by fast feedback. Remove friction by removing the staging environment and still release with confidence.
Listen to stories from the trenches on true DevOps on AWS with “You build it, you run it” teams from AutoScout24, the largest online car marketplace Europe-wide.
https://devopsconference.de/continuous-delivery/cloud-native-continuous-delivery/
You know that adopting Continuous Delivery is key to a high-performance company. You’ve read the books and are ready to build microservices in the cloud. Great! Let’s go back to the principles and see how to apply them in a cloud native environment. What used to be about shipping code to static servers, is now about quickly creating decoupled pipelines for new services that are readily wired up into the platform, and everything is driven by code. This talk will give concrete guidance for a world where autonomous teams continuously deploy many independent services and containers into an infrastructure that is dynamically created via APIs. Release without staging environment, but with confidence.
Learn how to apply cloud native concepts to the delivery pipeline itself and how the concepts of continuous delivery need to be adjusted for microservices in the cloud. Hear real world examples, including how to QA in production.
06/18/2014 - Billing & Payments Engineering Meetup @ Netflix
For this Meetup, we have invited speakers from several tech companies to give a series of lightening talks on challenges related to billing & payments systems.
This event is for engineers who are interested in learning more about billing & payments systems. No previous experience with this kind of system is required to attend.
Presenters:
- Mathieu Chauvin - Engineering Manager for Payments @ Netflix
- Taylor Wicksell - Sr. Software Engineer for Billing @ Netflix
- Jean-Denis Greze - Engineer @ Dropbox
- Alec Holmes - Software Engineer @ Square
- Emmanuel Cron - Software Engineer III, Google Wallet @ Google
- Paul Huang - Engineering Manager @ Survey Monkey
- Anthony Zacharakis - Lead Engineer @ Lumos Labs
- Shengyong Li / Feifeng Yang - Dir. Engineering Commerce / Tech Lead Payment @ Electronic Arts
Kafka Summit SF 2017 - Worldwide Scalable and Resilient Messaging Services wi...confluent
ChatWork is a worldwide communication service, which holds 110k+ of customer organizations. In 2016, we have developed a new scalable infrastructure based on the idea of CQRS and Event Sourcing using Kafka and Kafka Streams combined with Akka and HBase. In this session, we talk about the concept of this architecture and lessons learned in production use cases.
Presented at Kafka Summit SF 2017 by Masaru Dobashi and Shingo Omura
Speed and agility are the most expected in today’s analytics tools. The quicker you get from idea to insights, the more you can innovate & perform ad-hoc data analysis. I will be talking about how we can use AWS serverless architecture to stream IoT data, managed by python. We can be up and running in minutes―starting small, but able to easily grow to millions of devices and billions of messages.
A technical presentation that accompanied a discussion on the topic of automation various aspects of the peering decision making and provisioning process
Architecture to Scale. DONN ROCHETTE at Big Data Spain 2012Big Data Spain
Session presented at Big Data Spain 2012 Conference
16th Nov 2012
ETSI Telecomunicacion UPM Madrid
www.bigdataspain.org
More info: http://www.bigdataspain.org/es-2012/conference/architecture-to-scale/donn-rochette
GeekOut 2017 - Microservices in action at the Dutch National PoliceBert Jan Schrijver
Microservices? At the Police? Definitely!
At the Cloud, Big Data and Internet division of the Dutch National Police, 3 DevOps teams use the latest open source technology to build high tech, cloud native web applications in a private cloud. These applications are used to support various types of police work with data from open, online sources and are built using Spring Boot, Angular 4, Spark, Kafka and Jenkins 2.
In this session, I'll share our experiences and real-world use cases for microservices. I’ll explain our architecture, why we chose it, which challenges we face and what this all brings us. I’ll show how 3 teams work together on one product, loosely based on the models used by Spotify and Netflix, and I’ll talk about how we apply the principles of DevOps and Continuous Delivery. I’ll show how we handle security, build pipelines, test automation, performance tests, automated deployments and monitoring.
You’ll leave this session with an understanding of how this approach enables us to have the agility of a startup within the large Police organisation.
Microservices in action at the Dutch National Police - Bert Jan Schrijver - C...Codemotion
At the Cloud, Big Data and Internet division of the Dutch National Police, 4 DevOps teams use the latest open source technology to build high tech, cloud native web applications using Spring Boot, Angular 5, Spark, Kafka and Jenkins 2. I'll share our experiences and real-world use cases for microservices. I’ll show how 4 teams work together on one product and I’ll talk about how we apply the principles of DevOps and Continuous Delivery. I’ll show how we handle security, build pipelines, test automation, performance tests, service discovery, automated deployments, monitoring and more!
Project Sherpa: How RightScale Went All in on DockerRightScale
We just finished a 7 week project at RightScale to migrate 48 services and 650+ cloud instances to Docker. As a result we’ve been able to accelerate our development processes and cut our cloud costs (a lot). Here we share lessons learned about our experience migrating to Docker and introduce our new Container Manager we added to the RightScale platform to help manage containerized environments.
Serverless is aiming to be the future of software development, but what does it really mean running without servers? In this session we will explain how to build a serverless application on top of AWS. We will understand how AWS Lambda functions work, how to use them properly and how can we debug and monitor serverless application.
Micro-Services and cloud-based applications demand robust and flexible CI/CD pipelines. Manually creating a Jenkins Job using the UI is just not an option any more, but which tool should we use? In this talk we will cover Jenkns Pipeline, Gitlab CI and Concourse. We will see the use case for every tool and when should we use it.
Matt Chung (Independent) - Serverless application with AWS Lambda Outlyer
The talk will focus on how we are utilizing AWS Lambda for certain applications and the advantages/disadvantages, and the challenges we discovered along the way. It would help those who are looking to reduce technical debt with the infrastructure and costs.
Previously a Director of technical operations at fox networks (21st Century Fox/News Corporation) responsible for infrastructure and building deployment pipelines. Currently a Python programmer / DevOps engineer with roots in systems/networks administration. Focus is on infrastructure and application automation. Worked as an engineer for Cisco Systems with emphasis on video conferencing. Built microwave networks at Bel Air Internet. Find me on github and twitter @itsmemattchung
Video: https://www.youtube.com/watch?v=BLcElBUhfrQ
Join DevOps Exchange London here: http://www.meetup.com/DevOps-Exchange-London
Follow DOXLON on twitter http://www.twitter.com/doxlon
Trent Hornibrook gave a recent talk at the Infracoders meet-up playing a thought experiment with the audience on 'what would be your tech decisions if you were given a blank cheque at at startup'.
Trent, recently working for a start-up then shared what decisions he made, and why
You know that adopting Continuous Delivery and DevOps is key to a high-performance company. You’ve read the books and are ready to build microservices in the cloud. Great! Let’s go back to the principles and see how to apply them in a cloud native environment. What used to about shipping code to static servers, is now about quickly creating decoupled pipelines for new services that are readily wired up into the platform and everything is driven by code.
This talk will give concrete guidance in a world where autonomous teams continuously deploy many independent services and containers into an infrastructure that is dynamically created via APIs. Learn how to establish a culture that fosters fast local decisions and is driven by fast feedback. Remove friction by removing the staging environment and still release with confidence.
Listen to stories from the trenches on true DevOps on AWS with “You build it, you run it” teams from AutoScout24, the largest online car marketplace Europe-wide.
https://devopsconference.de/continuous-delivery/cloud-native-continuous-delivery/
You know that adopting Continuous Delivery is key to a high-performance company. You’ve read the books and are ready to build microservices in the cloud. Great! Let’s go back to the principles and see how to apply them in a cloud native environment. What used to be about shipping code to static servers, is now about quickly creating decoupled pipelines for new services that are readily wired up into the platform, and everything is driven by code. This talk will give concrete guidance for a world where autonomous teams continuously deploy many independent services and containers into an infrastructure that is dynamically created via APIs. Release without staging environment, but with confidence.
Learn how to apply cloud native concepts to the delivery pipeline itself and how the concepts of continuous delivery need to be adjusted for microservices in the cloud. Hear real world examples, including how to QA in production.
06/18/2014 - Billing & Payments Engineering Meetup @ Netflix
For this Meetup, we have invited speakers from several tech companies to give a series of lightening talks on challenges related to billing & payments systems.
This event is for engineers who are interested in learning more about billing & payments systems. No previous experience with this kind of system is required to attend.
Presenters:
- Mathieu Chauvin - Engineering Manager for Payments @ Netflix
- Taylor Wicksell - Sr. Software Engineer for Billing @ Netflix
- Jean-Denis Greze - Engineer @ Dropbox
- Alec Holmes - Software Engineer @ Square
- Emmanuel Cron - Software Engineer III, Google Wallet @ Google
- Paul Huang - Engineering Manager @ Survey Monkey
- Anthony Zacharakis - Lead Engineer @ Lumos Labs
- Shengyong Li / Feifeng Yang - Dir. Engineering Commerce / Tech Lead Payment @ Electronic Arts
Kafka Summit SF 2017 - Worldwide Scalable and Resilient Messaging Services wi...confluent
ChatWork is a worldwide communication service, which holds 110k+ of customer organizations. In 2016, we have developed a new scalable infrastructure based on the idea of CQRS and Event Sourcing using Kafka and Kafka Streams combined with Akka and HBase. In this session, we talk about the concept of this architecture and lessons learned in production use cases.
Presented at Kafka Summit SF 2017 by Masaru Dobashi and Shingo Omura
Speed and agility are the most expected in today’s analytics tools. The quicker you get from idea to insights, the more you can innovate & perform ad-hoc data analysis. I will be talking about how we can use AWS serverless architecture to stream IoT data, managed by python. We can be up and running in minutes―starting small, but able to easily grow to millions of devices and billions of messages.
A technical presentation that accompanied a discussion on the topic of automation various aspects of the peering decision making and provisioning process
Architecture to Scale. DONN ROCHETTE at Big Data Spain 2012Big Data Spain
Session presented at Big Data Spain 2012 Conference
16th Nov 2012
ETSI Telecomunicacion UPM Madrid
www.bigdataspain.org
More info: http://www.bigdataspain.org/es-2012/conference/architecture-to-scale/donn-rochette
GeekOut 2017 - Microservices in action at the Dutch National PoliceBert Jan Schrijver
Microservices? At the Police? Definitely!
At the Cloud, Big Data and Internet division of the Dutch National Police, 3 DevOps teams use the latest open source technology to build high tech, cloud native web applications in a private cloud. These applications are used to support various types of police work with data from open, online sources and are built using Spring Boot, Angular 4, Spark, Kafka and Jenkins 2.
In this session, I'll share our experiences and real-world use cases for microservices. I’ll explain our architecture, why we chose it, which challenges we face and what this all brings us. I’ll show how 3 teams work together on one product, loosely based on the models used by Spotify and Netflix, and I’ll talk about how we apply the principles of DevOps and Continuous Delivery. I’ll show how we handle security, build pipelines, test automation, performance tests, automated deployments and monitoring.
You’ll leave this session with an understanding of how this approach enables us to have the agility of a startup within the large Police organisation.
Microservices in action at the Dutch National Police - Bert Jan Schrijver - C...Codemotion
At the Cloud, Big Data and Internet division of the Dutch National Police, 4 DevOps teams use the latest open source technology to build high tech, cloud native web applications using Spring Boot, Angular 5, Spark, Kafka and Jenkins 2. I'll share our experiences and real-world use cases for microservices. I’ll show how 4 teams work together on one product and I’ll talk about how we apply the principles of DevOps and Continuous Delivery. I’ll show how we handle security, build pipelines, test automation, performance tests, service discovery, automated deployments, monitoring and more!
J-Spring 2017 - Microservices in action at the Dutch National PoliceBert Jan Schrijver
Microservices? At the Police? Definitely! At the Cloud, Big Data and Internet division of the Dutch National Police, 3 DevOps teams use the latest open source technology to build high tech web applications. These applications are used to police work with data from open, online sources and are built using Spring Boot, Angular 2.x, Spark, Kafka and Jenkins 2. In this session, I'll share our experiences and real-world use cases for microservices. I’ll explain our architecture, why we chose it, which challenges we face and what this all brings us. I’ll show how 3 teams work together on one product, loosely based on the models used by Spotify and Netflix, and I’ll talk about how we apply the principles of DevOps and Continuous Delivery. I’ll show how we handle security, build pipelines, test automation, performance tests, automated deployments and monitoring. You’ll leave this session with an understanding of how this approach enables us to have the agility of a startup within the large Police organisation.
Whar are microservices and microservices architecture (MSA) How we reach them? Are they the same or SoA or not? When to use them? What are the key characteristics?
Slides of my talk given in #Gapand2017 in Andorra
Business and IT agility through DevOps and microservice architecture powered ...Lucas Jellema
IT needs to run in production in order to generate business value. DevOps is among other things a way of thinking focusing on production software. A business application requires a tailor made platform to generate business value. The combination of application and its platform is a DevOps product. The DevOps team has full responsibility for that product through its entire lifecycle.
The microservices architecture promises flexibility, scalability, and optimal use of compute resources. Via independent components with well-defined scope and responsibility, interface, and ownership that are evolved and managed in an automated DevOps process, this architecture leverages current technologies and hard-learned insights from past decades.
This session defines the objectives of Business with IT, of microservices and DevOps and introduces Containers and the container platform Kubernetes as crucial ingredients for making DevOps happen.
Dutch Oracle Architects Platform - Reviewing Oracle OpenWorld 2017 and New Tr...Lucas Jellema
Not since the rise of Service Oriented Architecture (and the supporting Fusion Middleware technology) over a decade ago have we seen so much rapid change in terms of application and infrastructure architecture. Cloud, Microservices and DevOps are perhaps the most explicit examples – but many other developments in technology, architecture and even the industry at large have an impact on how enterprises consider and employ IT – such as machine learning, IoT, blockchain.
In this session for (infrastructure, solution, application, enterprise, security, data) architects – we will present the main stories, roadmaps and technologies from Oracle OpenWorld 2017 (and JavaOne) that influence, shape and enable architecture. We will brainstorm together on the consequences of the new directions outlined by Oracle – and coming our way from other quarters. We are seeing a a lot of change. New opportunities arise – that may become challenges or threats if we fail to recognize and embrace the change in time. This session will help us all to get a better handle on the winds in enterprise IT in general and in Oracle land in particular.
Among the topics we will present and discuss are:
- The Only Way is Up – the inevitable and imminent move from on premises to the cloud, and upwards in the stack – from IaaS to SaaS
- Security and Ops in a hybrid landscape (multiple clouds & on premises, multiple technologies & interaction channels)
- Autonomous Database – what, when, how
- Oracle’s cloud strategy, High PaaS and Low PaaS, Open [source] technology (star of the show: Apache Kafka) and the commodization of the traditional Oracle platform
- Container and Cloud Native at Oracle Cloud (Docker, Kubernetes Container Platform, Wercker, Istio Service Mesh, CNCF)
- Serverless
- Java Reborn – for microservices and cloud, modularized (highlights from the JavaOne conference)
- Disruptive: Blockchain, IoT, Machine Learning
We are on the cusp of a new era of application development software: instead of bolting on operations as an after-thought to the software development process, Kubernetes promises to bring development and operations together by design.
These are my summarized notes from all the microservices session I attended at QCon 2015. These sessions had tons of learning around how to scale microservices and avoid common pitfalls
.Net Microservices with Event Sourcing, CQRS, Docker and... Windows Server 20...Javier García Magna
Good technical practices you can follow with (micro)services but can be applied to almost anything: discovery (microphone/consul), security, resilience (polly), composition, ssecurity (jwt/oauth2)... And then an example with a CQRS application, and how docker can be used in Windows 2016. Lastly a brief summary of what Service Fabric is and its programming models.
In this webinar, Michael Nash of BoldRadius explores the Typesafe Reactive Platform.
The Typesafe Reactive Platform is a suite of technologies and tools that support the creation of reactive applications, that is, applications that handle the kind of responsiveness requirements, data volume, and user load that was out of practical reach only a few years ago.
From analysis of the human genome to wearable technology to communications at a massive scale, BoldRadius has the premier team of experts with decades of collective experience in designing and building these types of applications, and in helping teams adopt these tools.
Istio Mesh – Managing Container Deployments at ScaleMofizur Rahman
The service mesh is an infrastructure component that helps manage services running within our clusters. Without any changes to service or application code, solutions like Istio and Linkerd provide features to manage container deployments at scale. With Istio we get traffic management, security, rate limiting, monitoring, and many more things out of the box. We will discuss these solutions and some of their features at a high level, then roll in some specific demonstrations of using a service mesh to route and shift service traffic, easily manage deployments and test our services with micro benchmarks and fault injection.
The service mesh is an infrastructure component that helps manage services running within our clusters. Without any changes to service or application code, solutions like Istio and Linkerd provide features to manage container deployments at scale. With Istio we get traffic management, security, rate limiting, monitoring, and many more things out of the box. We will discuss these solutions and some of their features at a high level, then roll in some specific demonstrations of using a service mesh to route and shift service traffic, easily manage deployments and test our services with micro benchmarks and fault injection. We will also look at some of the error scenarios you may encounter and how to deal with some of them while keeping your sanity.
Following simple patterns of good application design can allow you to scale your application for your customers easily. This presentation dives into the 12 factor application design and demo how this applies to containers and deployments on Amazon ECS and Fargate. We'll take a look at tooling that can be used to simplify your workflow and help you adopt the principles of the 12 factor application.
AWS re:Invent 2016: Moving Mission Critical Apps from One Region to Multi-Reg...Amazon Web Services
In gaming, low latencies and connectivity are bare minimum expectations users have while playing online on PlayStation Network. Alex and Dustin share key architectural patterns to provide low latency, multi-region services to global users. They discuss the testing methodologies and how to programmatically map out a large dependency multi-region deployment with data-driven techniques. The patterns shared show how to adapt to changing bottlenecks and sudden, several million request spikes. You’ll walk away with several key architectural patterns that can service users at global scale while being mindful of costs.
Presentation on the current state of cloud computing and the role that open source, containers and microservices are playing in the cloud.
Presented to Florida Linux Users Exchange on April 9th, 2015
Similar to Bol.com Tech lab September 2017 - Microservices in action at the Dutch National Police (20)
1.Wireless Communication System_Wireless communication is a broad term that i...JeyaPerumal1
Wireless communication involves the transmission of information over a distance without the help of wires, cables or any other forms of electrical conductors.
Wireless communication is a broad term that incorporates all procedures and forms of connecting and communicating between two or more devices using a wireless signal through wireless communication technologies and devices.
Features of Wireless Communication
The evolution of wireless technology has brought many advancements with its effective features.
The transmitted distance can be anywhere between a few meters (for example, a television's remote control) and thousands of kilometers (for example, radio communication).
Wireless communication can be used for cellular telephony, wireless access to the internet, wireless home networking, and so on.
Multi-cluster Kubernetes Networking- Patterns, Projects and GuidelinesSanjeev Rampal
Talk presented at Kubernetes Community Day, New York, May 2024.
Technical summary of Multi-Cluster Kubernetes Networking architectures with focus on 4 key topics.
1) Key patterns for Multi-cluster architectures
2) Architectural comparison of several OSS/ CNCF projects to address these patterns
3) Evolution trends for the APIs of these projects
4) Some design recommendations & guidelines for adopting/ deploying these solutions.
ER(Entity Relationship) Diagram for online shopping - TAEHimani415946
https://bit.ly/3KACoyV
The ER diagram for the project is the foundation for the building of the database of the project. The properties, datatypes, and attributes are defined by the ER diagram.
This 7-second Brain Wave Ritual Attracts Money To You.!nirahealhty
Discover the power of a simple 7-second brain wave ritual that can attract wealth and abundance into your life. By tapping into specific brain frequencies, this technique helps you manifest financial success effortlessly. Ready to transform your financial future? Try this powerful ritual and start attracting money today!
4. The police protects the
democracy, maintains the law
and is the authority on the
streets. Around 65.000 people
work at the Dutch police, of
which over 1500 IT
professionals.
Dutch National Police
5. CLOUD
PLATFORM
ANALYSE
PATRONEN
BIG DATA
SECURITY3 DevOps teams are building
high tech big data web
applications in a private cloud
environment. These
applications support police
related themes.
Product line
Cloud | Big Data | Internet
7. • 3 teams, separate backlogs
• Overall planning at start of sprint
• Minimal planning ritual
• Usability tests as part of sprint
• Phabricator as tool of choice
• (Almost) no meetings
Methodology
8. • Continuous Delivery & DevOps
• Short feedback loops
• Embrace change
• Minimal dependencies outside team
• Invest in people, not in products
• Open, transparent, verifiable
Culture
Source: http://kids.nationalgeographic.com/explore/countries/netherlands/#netherlands-tulip-fields.jpg
9. • How to handle support, monitoring and
(pro-active) maintenance during sprint?
Make this a role that cycles through the
team.
“Operator of the day” and “Developer of
the day”
Culture
Source: http://kids.nationalgeographic.com/explore/countries/netherlands/#netherlands-tulip-fields.jpg
11. • End-to-end security and encryption
• Version control for everything
• Horizontally scalable, no single points of failure
• No runtime dependencies on external systems
• Standardised naming
• Application config lives with code
• Services defined by business functionality
• Right tool for the job (polyglot)
Architecture
22. Source: https://www.google.com/about/datacenters
• How to manage 100’s of physical servers,
1000’s of virtual servers and 1000’s of
desktops?
Infrastructure as code.
Terraform for cloud, Puppet for servers,
Ansible for desktops
Platform
25. • How to decouple building a feature from
release and deployment?
Create feature toggles.
Frontend
26. • How to prevent creating a monolithic
frontend?
Apply microservice principles to the
frontend too.
Create re-usable frontend components as
standalone component libraries.
Frontend
28. • Small in size, single responsibility
• Runs in its own process
• Independently develop, deploy, upgrade, scale
• Has its own data store
• Distributed by default
• Potentially heterogeneous/polyglot
• Light-weight communication
Anatomy of a microservice
29. • Did we build microservices right from the start?
Nope.
• Why did we move to a microservices architecture?
• Scalability: both for performance/load and
development teams
• Modularity: independent development and
deployment of each part of the system
• The ‘cool factor’ helped bit ;-)
The path to microservices
30. • How did we move to microservices?
• Split the system in modules (bounded
contexts)
• For each module, create a microservice
• For every microservice, check if it now only
serves 1 part of the domain
• If so: cool. If not: repeat - split it up more.
The path to microservices
31. • Spring Boot, Java 8, Maven
• Stateless
• 1 service in 1 jar on 1 JVM on 1 host
• Minimal amount of shared code:
• Security
• Logging and metrics
• Past: high available via load balancers
• Present: moving from LB’s to service discovery
Backend
32. Service discovery is an advanced pattern.
Do you need it?
Probably not.
Do we need it?
We think we do.
Service discovery
33. Service discovery
• Why do we use service discovery?
• HA & load balancing without single points of failure
• Direct secure end-to-end client-service communication
• Kerberos: picky on DNS verification
• Dynamic horizontal scaling
• Resilience: automated response to failure
• Location transparency
• Zero downtime deployments
36. • Feature branch based development
• Master branch must always be releasable
• Test environment on OpenStack runs the
master branch
• Feature branches only live locally and on
the CI server
Development
37. • How to locally run a system that consists
of ~50 services?
Run only the component(s) you work on
locally.
For other components, local env connects
to test env on OpenStack
Development
38. • Unit tests
• Mutation tests
• Service/integration tests: Spring boot
integration, embedded in-memory data
stores, REST assured
• End-to-end test: Protractor
• Load tests: Gatling
Testing
39. • How to test feature branches in a
microservices environment?
Spin up branch version of component in a
container on the CI environment.
For dependencies, connect to test env.
Avoid changing multiple components at once.
Testing
42. • How to manage >100 builds with a single
team?
Create modular, reusable build
definitions.
(See https://virtualjug.com/pipeline-as-code-building-
continuous-delivery-pipelines-with-jenkins-2/)
Build tools
43. • Every push to master is a release
• Config embedded in executable jar
• Deployments via Rundeck and Puppet
Deployments
44. • How to know when, what and which version(s)
to deploy?
• Minimize administration and think time.
• Development: deploy component on commit
• Everything from dev -> acc during sprint
• Everything from acc -> prod after sprint
• Single component dev -> acc -> prod when needed
Deployments
45. • Logging and dashboards via Graylog
• Metrics:
• Spring Boot actuator
• Distributed tracing with Zipkin
• Grafana
• Kafka stats via Burrow
• Monitoring via Sensu and Flapjack
Running in production
47. Challenges
01
Share as little as possible; prefer
duplication over coupling.
Sharing code between services
04Authentication and authorisation
happen at every request. Find the
balance between performance and
security.
Running stateless has a cost
When moving fast,
don’t forget to finish up before
starting something new.
Switching focus has a cost
06
Throwing something away and
starting over can work out better
than refactoring.
Don’t be afraid to rebuild03
Microservices are not just for the
backend. Modularity is just as
important on the frontend.
Monolithic frontend
02
Minimalize dependencies on
other teams, or it will slow you
down.
Cross functional team
composition is vital
05
and lessons learned
48. Looking ahead
Upgrades and fixes without users even
noticing.
0-downtime deployments
Our plans for the (near) future.
@bjschrijver
Cross-functional teams with vertical
(full stack) responsibilities.
Product teams
Split the frontend in products and re-
usable components.
Modular frontend
There is no silver bullet here, but useful
tools and practices do exist.
Automated security testing
Get the teams the information they
need, but only when they need it.
Better dashboards and alerting