How Clarifai uses NATS and Kubernetes for Machine LearningApcera
Clarifai (www.clarifai.com) is a machine learning company which aims to make artificial intelligence accessible to the entire world.
Their platform allows users to tap into powerful machine learning algorithms while abstracting away the technical minutiae of how the algorithms work and the infrastructure scaling problems of building AI applications from scratch.
Clarifai has moved to a highly available Kubernetes (www.kubernetes.io) based architecture, which also required a simple, scalable messaging layer.
NATS (www.nats.io) was selected by the Clarifai team for a variety of reasons.
The video of the talk that accompanies these slides is available at:
https://www.youtube.com/watch?v=fJ20plWSBzw&feature=youtu.be
Tyler Treat
Workiva
NATS Meetup 3/22/16
• Embracing the reality of complex systems
• Using simplicity to your advantage
• Why NATS?
• How Workiva uses NATS
You can learn more about NATS at http://www.nats.io
Move fast and make things with microservicesMithun Arunan
1. How to apply microservices patterns & anti-patterns to design the right architecture
2. Why & how to build a core framework to ensure consistency & manage complexity
3. What are the challenges in adopting gRPC for inter-service communication
4. How to orchestrate & manage microservices at scale with Kubernetes
5. How to leverage Cloud Native ecosystem to move fast & avoid vendor lock-in
MongoDB .local London 2019: Modern Data Backup and Recovery from On-premises ...MongoDB
Whether you are running MongoDB on-premise, self-managing in the cloud, or using MongoDB Atlas, it's critical that you have dependable backups of your data for when things go sideways. This takes infrastructure, storage, and coordination, which can be complex and costly. In MongoDB 4.2, we are changing how backup is architected, helping you reduce the required storage footprint and remove architectural complexities to increase performance and decrease costs. Come to this session to see how we're accomplishing this.
MongoDB Evenings Toronto - Monolithic to Microservices with MongoDBMongoDB
Monolithic to Microservices with MongoDB: Building Highly Available Services
Shawn McCarthy, Senior Solutions Architect, MongoDB
MongoDB Evenings Toronto
Infusion Offices
September 27, 2016
NGINX, Istio, and the Move to Microservices and Service MeshNGINX, Inc.
On-demand recording: https://www.nginx.com/resources/webinars/istio-move-to-microservices-service-mesh/
About the webinar
NGINX is widely known, used, and trusted for a variety of purposes. NGINX works as a reliable, high-performance web server, reverse proxy server, and load balancer. NGINX is also a widely used microservices hub, an Ingress controller for Kubernetes, and a sidecar proxy in the Istio service mesh.
In this webinar, we’ll describe the move to microservices, the crucial role that NGINX has already played, and a range of architectural options that organizations have for their microservices apps, including three progressively complex models in the NGINX Microservices Reference Architecture. We’ll then introduce the emergence of Kubernetes as a container orchestration framework, the use of service mesh architectures, and the design of Istio. We’ll finish by showing how NGINX Open Source and NGINX Plus can be used as the sidecar proxy in an Istio service mesh, bringing greater reliability and capability to your service mesh application.
How Clarifai uses NATS and Kubernetes for Machine LearningApcera
Clarifai (www.clarifai.com) is a machine learning company which aims to make artificial intelligence accessible to the entire world.
Their platform allows users to tap into powerful machine learning algorithms while abstracting away the technical minutiae of how the algorithms work and the infrastructure scaling problems of building AI applications from scratch.
Clarifai has moved to a highly available Kubernetes (www.kubernetes.io) based architecture, which also required a simple, scalable messaging layer.
NATS (www.nats.io) was selected by the Clarifai team for a variety of reasons.
The video of the talk that accompanies these slides is available at:
https://www.youtube.com/watch?v=fJ20plWSBzw&feature=youtu.be
Tyler Treat
Workiva
NATS Meetup 3/22/16
• Embracing the reality of complex systems
• Using simplicity to your advantage
• Why NATS?
• How Workiva uses NATS
You can learn more about NATS at http://www.nats.io
Move fast and make things with microservicesMithun Arunan
1. How to apply microservices patterns & anti-patterns to design the right architecture
2. Why & how to build a core framework to ensure consistency & manage complexity
3. What are the challenges in adopting gRPC for inter-service communication
4. How to orchestrate & manage microservices at scale with Kubernetes
5. How to leverage Cloud Native ecosystem to move fast & avoid vendor lock-in
MongoDB .local London 2019: Modern Data Backup and Recovery from On-premises ...MongoDB
Whether you are running MongoDB on-premise, self-managing in the cloud, or using MongoDB Atlas, it's critical that you have dependable backups of your data for when things go sideways. This takes infrastructure, storage, and coordination, which can be complex and costly. In MongoDB 4.2, we are changing how backup is architected, helping you reduce the required storage footprint and remove architectural complexities to increase performance and decrease costs. Come to this session to see how we're accomplishing this.
MongoDB Evenings Toronto - Monolithic to Microservices with MongoDBMongoDB
Monolithic to Microservices with MongoDB: Building Highly Available Services
Shawn McCarthy, Senior Solutions Architect, MongoDB
MongoDB Evenings Toronto
Infusion Offices
September 27, 2016
NGINX, Istio, and the Move to Microservices and Service MeshNGINX, Inc.
On-demand recording: https://www.nginx.com/resources/webinars/istio-move-to-microservices-service-mesh/
About the webinar
NGINX is widely known, used, and trusted for a variety of purposes. NGINX works as a reliable, high-performance web server, reverse proxy server, and load balancer. NGINX is also a widely used microservices hub, an Ingress controller for Kubernetes, and a sidecar proxy in the Istio service mesh.
In this webinar, we’ll describe the move to microservices, the crucial role that NGINX has already played, and a range of architectural options that organizations have for their microservices apps, including three progressively complex models in the NGINX Microservices Reference Architecture. We’ll then introduce the emergence of Kubernetes as a container orchestration framework, the use of service mesh architectures, and the design of Istio. We’ll finish by showing how NGINX Open Source and NGINX Plus can be used as the sidecar proxy in an Istio service mesh, bringing greater reliability and capability to your service mesh application.
KubeCon EU 2019 "Securing Cloud Native Communication: From End User to Service"Daniel Bryant
Everyone building or operating cloud native applications must understand the fundamentals of security issues and modern threat models. Although this topic is vast, in this talk Nic and Daniel will focus on the end-to-end communication and higher-level networking threats, and explore how the combination of an edge proxy and service mesh using TLS and mTLS can be used to mitigate many man-in-the-middle attacks.
Key takeaways include:
- An understanding of the "three pillars" of service mesh functionality: observability, reliability, and security. A service mesh is in a unique place to enforce security features like mTLS
- Learn how to ensure that there are no exploitable "gaps" within the end-to-end/user-to-service communication path.
- Explore the differences in ingress/mesh control planes, with brief demonstrations using Ambassador and Consul Connect
Video and slides synchronized, mp3 and slide download available at URL http://bit.ly/20SN0dP.
Tammer Saleh talks about the mistakes people make when building a microservices architecture. He also talks about: when microservices are appropriate, and where to draw the lines between services, dealing with performance issues, testing and debugging techniques, managing a polyglot landscape and the explosion of platforms, managing failure and graceful degradation. Filmed at qconlondon.com.
Tammer Saleh is a long time developer, leader, and author of the acclaimed book *Rails AntiPatterns*. Saleh is currently building the Cloud Foundry platform at Pivotal.
More than 87% of websites are SSL-encrypted and organizations can have thousands of certificates in production. A more flexible approach to managing certificates is needed. In this webinar we cover how to load certificates dynamically and additional newly released features. https://attendee.gotowebinar.com/register/521167809778215683
Designing a Service Mesh with Kafka and Sagas | David Navalho, Marionete and ...HostedbyConfluent
Kafka has become more than a simple message bus: with a full stack of tooling and new concepts, it’s easy to start deploying complex service meshes, communicating through Kafka, enabling decoupled microservices, stable performance, high scalability and reusability.
As the service mesh grows, so does complexity and management. Maybe we need to add a new validation or computational step. Maybe we need to reorder how we process messages from one topic to the other. But how can we manage this change, avoiding either making our microservices monoliths (distributed monolith), leading to complex and dangerous weekend reconfigurations?
During our presentation, we will present an easy to implement solution over Kafka by injecting sagas (DAGs describing the execution path) into messages. This allows us to build simple and stateless microservices, providing an easy to reason about solution that is inherently extensible.
A New Way of Thinking | NATS 2.0 & ConnectivityNATS
NATS 2.0 is the largest feature release since the original code base for the server was released. NATS 2.0 was created to allow a new way of thinking about NATS as a shared utility, solving problems at scale through distributed security, multi-tenancy, larger networks, and secure sharing of data. In this presentation, Derek discusses the motives behind the newest features of NATS and how to leverage them to reduce total cost of ownership, decrease time to value, support extremely large scale deployments, and decentralize security to create secure and easy to manage modern distributed systems.
MongoDB .local London 2019: New Encryption Capabilities in MongoDB 4.2: A Dee...MongoDB
Many applications with high-sensitivity workloads require enhanced technical options to control and limit access to confidential and regulated data. In some cases, system requirements or compliance obligations dictate a separation of duties for staff operating the database and those who maintain the application layer. In cloud-hosted environments, certain data are sometimes deemed too sensitive to store on third-party infrastructure. This is a common pain for system architects in the healthcare, finance, and consumer tech sectors — the benefits of managed, easily expanded compute and storage have been considered unavailable because of data confidentiality and privacy concerns.
This session will take a deep dive into new security capabilities in MongoDB 4.2 that address these scenarios, by enabling native client-side field-level encryption, using customer-managed keys. We will review how confidential data can be securely stored and easily accessed by applications running on MongoDB. Common query design patterns will be presented, with example code demonstrating strong end-to-end encryption in Atlas or on-premise. Implications for developers and others designing systems in regulated environments will be discussed, followed by a Q&A with senior MongoDB security engineers.
.NET Fest 2017. Anton Moldovan. How do we cook highload microservices at SBTech?NETFest
In this talk I will explain our way into microservices architecture:
What technology stack we choose and why?
[Stateful/Stateless Services; Cache; Streaming Data; Structure Logging]
How do we use/adopt F# as a primary language and what do we gain?
[DDD; CQRS; ES; Property Based Testing; Dependency Rejection]
How do we test our microservices?
[Integration/Load/Failover Tests]
In addition, I will demo several production problems and solutions to it. Looking forward to seeing you all there!!!
The Blockchain for the Internet of Things (IoT) has considered to "change the future." Despite a myriad of studies on the blockchain IoT, few studies have investigated how an IoT blockchain system develops with open source technologies, open standards, web technologies, and a p2p network. In this presentation, Jollen will share the Flowchain case study, an open source IoT blockchain project in Node.js; he will discuss the practice, the technical challenges, and the engineering experiences. Furthermore, to provide the real-time data transaction capabilities for current IoT requirements, he will utilize the "virtual block" idea to facilitate such technical challenges.
NATS & Docker Meetup in Toronto - August 2016
Implementing Microservices with NATS, Diogo Monteiro
-How Aytra uses NATS
-Benefits of using NATS for inter service communication
-Lessons learned adopting NATS
-Overview of Houston NATS library
-Demo of Aytra
You can learn more about NATS at http://www.nats.io
There is a renaissance underway in the messaging space. Due to the demands of IoT networks, cloud native apps, and microservices developers are looking for simple, fast, messaging systems. This is a sharp contrast to how traditional messaging was done.
This webinar will cover:
- The basics of messaging patterns
- What makes NATS unique
- Using a demo inspired by Pokemon Go as an example
Distributed Enterprise Monitoring and Management of Apache Kafka (William McL...HostedbyConfluent
Managing a distributed system like Apache Kafka can be extremely challenging, especially when you try to approach monitoring and managing from a single centralized GUI approach. In this talk come here and see a demo of a more decoupled approach to Kafka management and Kafka Monitoring where data is centralized but access is is distributed to scale to enterprise deployments, CICD pipelines and much much more.
Early Draft: Service Mesh allows developers to focus on business logic while the crosscutting network data layer code is handled by the Service Mesh. This is a boon because this code can be tricky to implement and hard to test all of the edge cases. Service Mesh takes this a few steps further than AOP or Servlet Filters or custom language-specific frameworks because it works regardless of the underlying programming language being used which is great for polyglot development shops. Thus standardizing how these layers work, while allowing teams to pick the best tools or languages for the job at hand. Kubernetes and Istio Service Mesh automate best practices for DevSecOps needs like: failover, scale-out, scalability, health checks, circuit breakers, rate limiters, metrics, observability, avoiding cascading failure, disaster recovery, and traffic routing; supporting CI/CD and microservices architecture.
Istio’s ability to automate and maintaining zero trust networks is its most important feature. In the age of high-profile data breaches, security is paramount. Companies want to avoid major brand issues that impact the bottom line and shrink market capitalization in an instant. Istio allows a standard way to do mTLS and auto certificate rotation which helps prevent a breach and limits the blast radius if a breach occurs. Istio also takes the concern of mTLS from microservices deployments and makes it easy to use taking the burden off of application developers.
As presented on 1/31/2018 at Cisco NYC Security Open House. These slides describe how a proper Disaster Recovery infrastructure, with a proper an automated network integration can provide instant recovery from Ransomware attacks and can improve security of the production environment.
(BDT312) Using the Cloud to Scale from a Database to a Data Platform | AWS re...Amazon Web Services
Scaling highly available database infrastructure to 100x, 1000x, and beyond has historically been one of the hardest technical challenges that any successful web business must face. This is quickly changing with fully-managed database services such as Amazon DynamoDB and Amazon Redshift, as the scaling efforts which previously required herculean effort are now as simple as an API call.
Over the last few years, Twilio has evolved their database infrastructure to a pipeline consisting of Amazon SQS, Sharded MySQL, Amazon DynamoDB, Amazon S3, Amazon EMR and Amazon Redshift. In this session, Twilio cover show they achieved success, specifically:
- How they replaced their data pipeline deployed to Amazon EC2 to meet their scaling needs with zero downtime.
- How they adopted Amazon DynamoDB and Amazon Redshift at the same scale as their MySQL infrastructure, at 1/5th the cost and operational overhead.
- Why they believe adopting managed database services like Amazon DynamoDB is key to accelerating delivery of value to their customers.
Sponsored by Twilio.
KubeCon EU 2019 "Securing Cloud Native Communication: From End User to Service"Daniel Bryant
Everyone building or operating cloud native applications must understand the fundamentals of security issues and modern threat models. Although this topic is vast, in this talk Nic and Daniel will focus on the end-to-end communication and higher-level networking threats, and explore how the combination of an edge proxy and service mesh using TLS and mTLS can be used to mitigate many man-in-the-middle attacks.
Key takeaways include:
- An understanding of the "three pillars" of service mesh functionality: observability, reliability, and security. A service mesh is in a unique place to enforce security features like mTLS
- Learn how to ensure that there are no exploitable "gaps" within the end-to-end/user-to-service communication path.
- Explore the differences in ingress/mesh control planes, with brief demonstrations using Ambassador and Consul Connect
Video and slides synchronized, mp3 and slide download available at URL http://bit.ly/20SN0dP.
Tammer Saleh talks about the mistakes people make when building a microservices architecture. He also talks about: when microservices are appropriate, and where to draw the lines between services, dealing with performance issues, testing and debugging techniques, managing a polyglot landscape and the explosion of platforms, managing failure and graceful degradation. Filmed at qconlondon.com.
Tammer Saleh is a long time developer, leader, and author of the acclaimed book *Rails AntiPatterns*. Saleh is currently building the Cloud Foundry platform at Pivotal.
More than 87% of websites are SSL-encrypted and organizations can have thousands of certificates in production. A more flexible approach to managing certificates is needed. In this webinar we cover how to load certificates dynamically and additional newly released features. https://attendee.gotowebinar.com/register/521167809778215683
Designing a Service Mesh with Kafka and Sagas | David Navalho, Marionete and ...HostedbyConfluent
Kafka has become more than a simple message bus: with a full stack of tooling and new concepts, it’s easy to start deploying complex service meshes, communicating through Kafka, enabling decoupled microservices, stable performance, high scalability and reusability.
As the service mesh grows, so does complexity and management. Maybe we need to add a new validation or computational step. Maybe we need to reorder how we process messages from one topic to the other. But how can we manage this change, avoiding either making our microservices monoliths (distributed monolith), leading to complex and dangerous weekend reconfigurations?
During our presentation, we will present an easy to implement solution over Kafka by injecting sagas (DAGs describing the execution path) into messages. This allows us to build simple and stateless microservices, providing an easy to reason about solution that is inherently extensible.
A New Way of Thinking | NATS 2.0 & ConnectivityNATS
NATS 2.0 is the largest feature release since the original code base for the server was released. NATS 2.0 was created to allow a new way of thinking about NATS as a shared utility, solving problems at scale through distributed security, multi-tenancy, larger networks, and secure sharing of data. In this presentation, Derek discusses the motives behind the newest features of NATS and how to leverage them to reduce total cost of ownership, decrease time to value, support extremely large scale deployments, and decentralize security to create secure and easy to manage modern distributed systems.
MongoDB .local London 2019: New Encryption Capabilities in MongoDB 4.2: A Dee...MongoDB
Many applications with high-sensitivity workloads require enhanced technical options to control and limit access to confidential and regulated data. In some cases, system requirements or compliance obligations dictate a separation of duties for staff operating the database and those who maintain the application layer. In cloud-hosted environments, certain data are sometimes deemed too sensitive to store on third-party infrastructure. This is a common pain for system architects in the healthcare, finance, and consumer tech sectors — the benefits of managed, easily expanded compute and storage have been considered unavailable because of data confidentiality and privacy concerns.
This session will take a deep dive into new security capabilities in MongoDB 4.2 that address these scenarios, by enabling native client-side field-level encryption, using customer-managed keys. We will review how confidential data can be securely stored and easily accessed by applications running on MongoDB. Common query design patterns will be presented, with example code demonstrating strong end-to-end encryption in Atlas or on-premise. Implications for developers and others designing systems in regulated environments will be discussed, followed by a Q&A with senior MongoDB security engineers.
.NET Fest 2017. Anton Moldovan. How do we cook highload microservices at SBTech?NETFest
In this talk I will explain our way into microservices architecture:
What technology stack we choose and why?
[Stateful/Stateless Services; Cache; Streaming Data; Structure Logging]
How do we use/adopt F# as a primary language and what do we gain?
[DDD; CQRS; ES; Property Based Testing; Dependency Rejection]
How do we test our microservices?
[Integration/Load/Failover Tests]
In addition, I will demo several production problems and solutions to it. Looking forward to seeing you all there!!!
The Blockchain for the Internet of Things (IoT) has considered to "change the future." Despite a myriad of studies on the blockchain IoT, few studies have investigated how an IoT blockchain system develops with open source technologies, open standards, web technologies, and a p2p network. In this presentation, Jollen will share the Flowchain case study, an open source IoT blockchain project in Node.js; he will discuss the practice, the technical challenges, and the engineering experiences. Furthermore, to provide the real-time data transaction capabilities for current IoT requirements, he will utilize the "virtual block" idea to facilitate such technical challenges.
NATS & Docker Meetup in Toronto - August 2016
Implementing Microservices with NATS, Diogo Monteiro
-How Aytra uses NATS
-Benefits of using NATS for inter service communication
-Lessons learned adopting NATS
-Overview of Houston NATS library
-Demo of Aytra
You can learn more about NATS at http://www.nats.io
There is a renaissance underway in the messaging space. Due to the demands of IoT networks, cloud native apps, and microservices developers are looking for simple, fast, messaging systems. This is a sharp contrast to how traditional messaging was done.
This webinar will cover:
- The basics of messaging patterns
- What makes NATS unique
- Using a demo inspired by Pokemon Go as an example
Distributed Enterprise Monitoring and Management of Apache Kafka (William McL...HostedbyConfluent
Managing a distributed system like Apache Kafka can be extremely challenging, especially when you try to approach monitoring and managing from a single centralized GUI approach. In this talk come here and see a demo of a more decoupled approach to Kafka management and Kafka Monitoring where data is centralized but access is is distributed to scale to enterprise deployments, CICD pipelines and much much more.
Early Draft: Service Mesh allows developers to focus on business logic while the crosscutting network data layer code is handled by the Service Mesh. This is a boon because this code can be tricky to implement and hard to test all of the edge cases. Service Mesh takes this a few steps further than AOP or Servlet Filters or custom language-specific frameworks because it works regardless of the underlying programming language being used which is great for polyglot development shops. Thus standardizing how these layers work, while allowing teams to pick the best tools or languages for the job at hand. Kubernetes and Istio Service Mesh automate best practices for DevSecOps needs like: failover, scale-out, scalability, health checks, circuit breakers, rate limiters, metrics, observability, avoiding cascading failure, disaster recovery, and traffic routing; supporting CI/CD and microservices architecture.
Istio’s ability to automate and maintaining zero trust networks is its most important feature. In the age of high-profile data breaches, security is paramount. Companies want to avoid major brand issues that impact the bottom line and shrink market capitalization in an instant. Istio allows a standard way to do mTLS and auto certificate rotation which helps prevent a breach and limits the blast radius if a breach occurs. Istio also takes the concern of mTLS from microservices deployments and makes it easy to use taking the burden off of application developers.
As presented on 1/31/2018 at Cisco NYC Security Open House. These slides describe how a proper Disaster Recovery infrastructure, with a proper an automated network integration can provide instant recovery from Ransomware attacks and can improve security of the production environment.
(BDT312) Using the Cloud to Scale from a Database to a Data Platform | AWS re...Amazon Web Services
Scaling highly available database infrastructure to 100x, 1000x, and beyond has historically been one of the hardest technical challenges that any successful web business must face. This is quickly changing with fully-managed database services such as Amazon DynamoDB and Amazon Redshift, as the scaling efforts which previously required herculean effort are now as simple as an API call.
Over the last few years, Twilio has evolved their database infrastructure to a pipeline consisting of Amazon SQS, Sharded MySQL, Amazon DynamoDB, Amazon S3, Amazon EMR and Amazon Redshift. In this session, Twilio cover show they achieved success, specifically:
- How they replaced their data pipeline deployed to Amazon EC2 to meet their scaling needs with zero downtime.
- How they adopted Amazon DynamoDB and Amazon Redshift at the same scale as their MySQL infrastructure, at 1/5th the cost and operational overhead.
- Why they believe adopting managed database services like Amazon DynamoDB is key to accelerating delivery of value to their customers.
Sponsored by Twilio.
An overview of project Skyfall. A globally distributed fault tolerant event consumption framework used by AddThis.com to consume billions of events per day.
Patterns and Pains of Migrating Legacy Applications to KubernetesQAware GmbH
Open Source Summit 2018, Vancouver (Canada): Talk by Josef Adersberger (@adersberger, CTO at QAware), Michael Frank (Software Architect at QAware) and Robert Bichler (IT Project Manager at Allianz Germany)
Abstract:
Running applications on Kubernetes can provide a lot of benefits: more dev speed, lower ops costs and a higher elasticity & resiliency in production. Kubernetes is the place to be for cloud-native apps. But what to do if you’ve no shiny new cloud-native apps but a whole bunch of JEE legacy systems? No chance to leverage the advantages of Kubernetes? Yes you can!
We’re facing the challenge of migrating hundreds of JEE legacy applications of a German blue chip company onto a Kubernetes cluster within one year.
The talk will be about the lessons we've learned - the best practices and pitfalls we've discovered along our way.
Patterns and Pains of Migrating Legacy Applications to KubernetesJosef Adersberger
Running applications on Kubernetes can provide a lot of benefits: more dev speed, lower ops costs, and a higher elasticity & resiliency in production. Kubernetes is the place to be for cloud native apps. But what to do if you’ve no shiny new cloud native apps but a whole bunch of JEE legacy systems? No chance to leverage the advantages of Kubernetes? Yes you can!
We’re facing the challenge of migrating hundreds of JEE legacy applications of a German blue chip company onto a Kubernetes cluster within one year.
The talk will be about the lessons we've learned - the best practices and pitfalls we've discovered along our way.
Discussion of how microservices are being applied across both web scale and enterprise/government use cases to help speed up development.
Video available at http://www.ustream.tv/recorded/86151804
Service Virtualization - Next Gen Testing Conference Singapore 2013Min Fang
Most major enterprises have invested millions of dollars on soIware performance lab infrastructure, that develop recurring maintenance effort and costs, unstable environments, and conflicts over constrained resources. To combat this drain and deliver value, companies need to find ways to optimize. Virtualizing the behavior and performance characteristics of test lab dependencies, CA LISA Service Virtualization has helped many enterprises achieving highly available labs that allow earlier performance testing with greater flexibility, at a much lower cost. Techniques discussed in this session include:
Removing capacity constraints from performance testing lab
Optimizing performance management by decomposing SLAs
Shift-Left: conducting incremental, iterative performance testing
2016 - 10 questions you should answer before building a new microservicedevopsdaysaustin
Session Presentation by Brian Kelly
Microservices appear simple to build on the surface, but there's more to creating them than just launching some code running in a container. This talk outlines 10 important questions that should be answered about any new microservice before development begins on it - - and certainly before it gets deployed into production.
This talk was done in Feb 2020. Sergey and I co-presented at CTO Forum on Microservices and Service Mesh (how they relate, requirements, goals, best practices and how DevOps and Agile has had convergence in the set of features for Service Mesh and gateways around observability, feature flags, etc.)
Netflix: From Zero to Production-Ready in Minutes (QCon 2017)Tim Bozarth
Slides from Tim Bozarth's (@timbozarth) QCon 2017 presentation (https://qconnewyork.com/ny2017/presentation/zero-production-ready-minutes)
Abstract:
The fabric of Netflix's approach to building new highly-available services is evolving. The Runtime Platform Team is focused on improving developer productivity while simultaneously making it simpler to build and maintain the high-availability services that Netflix expects. Starting with application generation, and leveraging a new approach to communication between services (RPC), we're simplifying what's needed to build a fast, reliable, and optimized service capable of delivering a fantastic customer experience.
We'll be sharing how Netflix is enabling engineers to go from "zero" to "production ready" in minutes - incorporating best-practices learned through years in the cloud. We will also share the story of transitioning from our home-grown RPC machinery to open-source standards, how we recognized when it was the right time to walk away from our own creations, and how our new approach is improving team velocity across Netflix engineering.
Andreas Grabner maintains that most performance and scalability problems don’t need a large or long running performance test or the expertise of a performance engineering guru. Don’t let anybody tell you that performance is too hard to practice because it actually is not. You can take the initiative and find these often serious defects. Andreas analyzed and spotted the performance and scalability issues in more than 200 applications last year. He shares his performance testing approaches and explores the top problem patterns that you can learn to spot in your apps. By looking at key metrics found in log files and performance monitoring data, you will learn to identify most problems with a single functional test and a simple five-user load test. The problem patterns Andreas explains are applicable to any type of technology and platform. Try out your new skills in your current testing project and take the first step toward becoming a performance diagnostic hero.
Covers how we built a set of high-speed reactive microservices and maximized cloud/hardware costs while meeting objectives in resilience and scalability. Talks about Akka, Kafka, QBit, in-memory computing, from a practitioners point of view. Based on the talks delivered by Geoff Chandler, Jason Daniel, and Rick Hightower at JavaOne 2016 and SF Fintech at Scale 2017, but updated.
Service Discovery and Registration in a Microservices ArchitecturePLUMgrid
Microservices, Service Discovery and Registration have been heading towards the peak of inflated expectations on the Gartner Hype cycle for over the last year or so, but there has often been a lack of clarity as to what these are, why are they needed or how to implement them well.
Service discovery and registration are key components of most distributed systems and service oriented architectures. In this session we will talk about what, why and how of service registration and discovery in distributed systems in general and OpenStack in particular.
We will talk about some of the technologies that address this challenge like Zookeeper, Etcd, Consul, Mesos-DNS, Minuteman, SkyDNS, SmartStack or Eureka. We will also address how these technologies as well as existing OpenStack projects can be used to solve this problem inside OpenStack environments.
Speaker:
Owen Garrett
Sr. Director, Product Management
NGINX, Inc.
On-Deman Link: https://www.nginx.com/resources/webinars/need-service-mesh/
About the webinar:
Service mesh is one of the hottest emerging technologies. Even though it’s a nascent technology, many vendors have already released their implementation. But do you really need a service mesh?
Attend this webinar to learn about the levels of maturity on the journey to modernizing your apps using microservices, and the traffic management approaches best suited to each level. We’ll help you figure out if you really need a service mesh.
Velocity San Jose 2017: Traffic shifts: Avoiding disasters at scaleMichael Kehoe
LinkedIn has evolved from serving live traffic out of one data center to four data centers spread geographically. Serving live traffic from four data centers at the same time has taken the company from a disaster recovery model to a disaster avoidance model, where an unhealthy data center can be taken out of rotation and its traffic redistributed to the healthy data centers within minutes, with virtually no visible impact to users.
As LinkedIn transitioned from big monolithic applications to microservices, it was difficult to determine capacity constraints of individual services to handle extra load during disaster scenarios. Stress testing individual services using artificial load in a complex microservices architecture wasn’t sufficient to provide enough confidence in data center’s capacity. To solve this problem, LinkedIn leverages live traffic to stress services site-wide by shifting traffic to simulate a disaster load.
Michael Kehoe and Anil Mallapur discuss how LinkedIn uses traffic shifts to mitigate user impact by migrating live traffic between its data centers and stress test site-wide services for improved capacity handling and member experience.
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdfPeter Spielvogel
Building better applications for business users with SAP Fiori.
• What is SAP Fiori and why it matters to you
• How a better user experience drives measurable business benefits
• How to get started with SAP Fiori today
• How SAP Fiori elements accelerates application development
• How SAP Build Code includes SAP Fiori tools and other generative artificial intelligence capabilities
• How SAP Fiori paves the way for using AI in SAP apps
Key Trends Shaping the Future of Infrastructure.pdfCheryl Hung
Keynote at DIGIT West Expo, Glasgow on 29 May 2024.
Cheryl Hung, ochery.com
Sr Director, Infrastructure Ecosystem, Arm.
The key trends across hardware, cloud and open-source; exploring how these areas are likely to mature and develop over the short and long-term, and then considering how organisations can position themselves to adapt and thrive.
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Ramesh Iyer
In today's fast-changing business world, Companies that adapt and embrace new ideas often need help to keep up with the competition. However, fostering a culture of innovation takes much work. It takes vision, leadership and willingness to take risks in the right proportion. Sachin Dev Duggal, co-founder of Builder.ai, has perfected the art of this balance, creating a company culture where creativity and growth are nurtured at each stage.
UiPath Test Automation using UiPath Test Suite series, part 3DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 3. In this session, we will cover desktop automation along with UI automation.
Topics covered:
UI automation Introduction,
UI automation Sample
Desktop automation flow
Pradeep Chinnala, Senior Consultant Automation Developer @WonderBotz and UiPath MVP
Deepak Rai, Automation Practice Lead, Boundaryless Group and UiPath MVP
Transcript: Selling digital books in 2024: Insights from industry leaders - T...BookNet Canada
The publishing industry has been selling digital audiobooks and ebooks for over a decade and has found its groove. What’s changed? What has stayed the same? Where do we go from here? Join a group of leading sales peers from across the industry for a conversation about the lessons learned since the popularization of digital books, best practices, digital book supply chain management, and more.
Link to video recording: https://bnctechforum.ca/sessions/selling-digital-books-in-2024-insights-from-industry-leaders/
Presented by BookNet Canada on May 28, 2024, with support from the Department of Canadian Heritage.
DevOps and Testing slides at DASA ConnectKari Kakkonen
My and Rik Marselis slides at 30.5.2024 DASA Connect conference. We discuss about what is testing, then what is agile testing and finally what is Testing in DevOps. Finally we had lovely workshop with the participants trying to find out different ways to think about quality and testing in different parts of the DevOps infinity loop.
GraphRAG is All You need? LLM & Knowledge GraphGuy Korland
Guy Korland, CEO and Co-founder of FalkorDB, will review two articles on the integration of language models with knowledge graphs.
1. Unifying Large Language Models and Knowledge Graphs: A Roadmap.
https://arxiv.org/abs/2306.08302
2. Microsoft Research's GraphRAG paper and a review paper on various uses of knowledge graphs:
https://www.microsoft.com/en-us/research/blog/graphrag-unlocking-llm-discovery-on-narrative-private-data/
A tale of scale & speed: How the US Navy is enabling software delivery from l...sonjaschweigert1
Rapid and secure feature delivery is a goal across every application team and every branch of the DoD. The Navy’s DevSecOps platform, Party Barge, has achieved:
- Reduction in onboarding time from 5 weeks to 1 day
- Improved developer experience and productivity through actionable findings and reduction of false positives
- Maintenance of superior security standards and inherent policy enforcement with Authorization to Operate (ATO)
Development teams can ship efficiently and ensure applications are cyber ready for Navy Authorizing Officials (AOs). In this webinar, Sigma Defense and Anchore will give attendees a look behind the scenes and demo secure pipeline automation and security artifacts that speed up application ATO and time to production.
We will cover:
- How to remove silos in DevSecOps
- How to build efficient development pipeline roles and component templates
- How to deliver security artifacts that matter for ATO’s (SBOMs, vulnerability reports, and policy evidence)
- How to streamline operations with automated policy checks on container images
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf91mobiles
91mobiles recently conducted a Smart TV Buyer Insights Survey in which we asked over 3,000 respondents about the TV they own, aspects they look at on a new TV, and their TV buying preferences.
9. Monolithic Code
public double getQuote(String type) {
double quote=0;
for (Product product: products) {
quote += product.getValue();
}
return quote;
}
N+1 Call Pattern
Works well within 1
process
10. N+1 Call Pattern
Product Service
Quote Service
1 call to Quote Service
= 44 calls to product
service
19. Granularity
Doc Processor Doc Transformer Doc Signer
Doc Encryption
Doc Shipment
Document Encryption is carved out at a separate
service. May not be the best option to run it as a
separate service
Documents
23. WPO (Web Performance Optimization)
taught us optimizing resource dependencies
when loading a web page by analyzing
Resource Waterfalls
24. Especially useful when page loads get very
complex and overloaded:
3rd party dependencies, non optimize
resources, wrong cache settings, loading too
much data too early, …
25. SFPO (Service Flow&Performance Optimization)
has to teach us how to optimize (micro)service
dependencies through Service Flows
26. Especially useful to identify: inefficient 3rd party services, recursive
call chains, N+1 Query Patterns, loading too much data, no data
caching, … -> sounds very familiar to WPO
45. 26.7s Load Time
5kB Payload
33! Service Calls
99kB - 3kB for each call!
171!Total SQL Count
Architecture Violation
Direct access to DB from frontend service
Single search query end-to-end
46. The fixed end-to-end use case
2.5s (vs 26.7)
5kB Payload
1! (vs 33!) Service Call
5kB (vs 99) Payload!
3!(vs 177) Total
SQL Count
48. Infrastructure Utilization
Is the load on microservices equally load
balanced?
When do you scale up/down?
• CPU
• Memory
• Load
Use automation process to scale up/down
Dynatrace – enterprise monitoring software vendor
Presentation today – discuss common issues monolith to microservices and how to fix them
Avoid common issues with performance
Best practices in continuous deployment
Leveraging infrastructure efficiently
It’s only one of ten things
Sample application
Application that can spin up multiple microservices on a single host
Not just theories – but have actual examples of the issues
Components:
Controller spin up multiple processes – each service instance
Registry service – acts as a router
Service client – example web browser or upstream service
Used spring boot as the base
- offers rich set of technologies, multiple technology support
- every one of the services is based on same binaries
- spring boot allows to easily change singular service instances
Example of code written to access the service remotely
Anti-patterns shown are for any type of process, not just for spring boot
Iterative loop over to get a list of products and get some value from them
Very likely that the values required are in the cache of the local process
Works well for monolith, what happens if you break out functionality
Transaction flow – topology of the lifecycle of the transaction
left hand side shows the web request from client all the way to the DB on the right
Can see the quote service goes to product which goes to db
Problems with this
- Request to quote service spawns 44 calls downstream
Potential solution
- group summation logic at the product service component as opposed to the quote service
Some high level issues with the microservice architectures
- organizations now break up responsibilities into multiple devs or teams
- the logic at one tier impacts the scalability or performance of a downstream component
If you eliminate n+1 call pattern, this problem gets solved
Use cache at service level to eliminate redundant calls
As soon as you are splitting up monolythic applications, revisit caching strategies
Happens when there are multiple steps in a transformation process
AA – Use photoshop to make doc node make calls to transformer and signer
Document creates document, then hands off to next document processor
Bandwidth limit isnt going to impact internal dc traffic
But the transition to cloud or multiple infra locations can cause significant overhead and delay
Split up the flow from a manager and distributor relationship
Each component does not get the full document, but just the required part
Architect the service to do the processing asynchronously
They had a monolithic app that couldnt scale endlessly. Their popularity caused them to think about re-architecture and allowing developers to make faster changes to their code. The were moving towards a Service Approach
Separating frontend logic from backend (search service). The idea was to also host these services potentially in the public cloud (frontend) and in a dynamic virtual enviornment (backend) to be able to scale better globally
On Go Live Date with the new architecture everything looked good at 7AM where not many folks were yet online!
By noon – when the real traffic started to come in the picture was completely different. User Experience across the globe was bad. Response Time jumped from 2.5 to 25s and bounce rate trippled from 20% to 60%
The backend service itself was well tested. The problem was that they never looked at what happens under load „end-to-end“. Turned out that the frontend had direct access to the database to execute the initial query when somebody executed a search. The returned list of search result IDs was then iterated over in a loop. For every element a „Micro“ Service call was made to the backend which resulted in 33! Service Invokations for this particular use case where the search result returned 33 items. Lots of wasted traffic and resources as these Key Architectural Metrics show us
They fixed the problem by understanding the end-to-end use cases and then defined backend service APIs that provided the data they really needed by the frontend. This reduced roundtrips, elimiated the architectural regression and improved performance and scalability