While microservices are becoming the norm due to advancements in development, deployment and monitoring techniques in the last few years, we are still using the same testing methodologies we used for monolithic apps. In this talk, we look at how distributed tracing can be applied to testing modern, distributed applications, from unit to end-to-end tests, to continuously give developers invaluable insight on how entire applications behave, and when and why they fail, before they are deployed to production. We'll also discuss the power of distributed context propagation and how it can be leveraged for testing purposes, from safely testing in production to failure injection.
The monolith to cloud-native, microservices evolution has driven a shift from monitoring to observability. OpenTelemetry, a merger of the OpenTracing and OpenCensus projects, is enabling Observability 2.0. This talk gives an overview of the OpenTelemetry project and then outlines some production-proven architectures for improving the observability of your applications and systems.
Architectures That Scale Deep - Regaining Control in Deep SystemsC4Media
Video and slides synchronized, mp3 and slide download available at URL https://bit.ly/2FWc5Sk.
Ben Sigelman talks about "Deep Systems", their common properties and re-introduces the fundamentals of control theory from the 1960s, including the original conceptualizations of Observability & Controllability. He uses examples from Google & other companies to illustrate how deep systems have damaged people's ability to observe software, and what needs to be done in order to regain control. Filmed at qconsf.com.
Ben Sigelman is a co-founder and the CEO at LightStep, a co-creator of Dapper (Google’s distributed tracing system), and co-creator of the OpenTracing and OpenTelemetry projects (both part of the CNCF). His work and interests gravitate towards observability, especially where microservices, high transaction volumes, and large engineering organizations are involved.
Solving the Hidden Costs of Kubernetes with ObservabilityDevOps.com
Kubernetes has enabled software organizations to realize the benefits of microservices through its convenient and powerful abstractions. Deploying, scaling, and running distributed software at scale is much easier through the use of Kubernetes.
However, these benefits have not come without costs compared to traditional software operations. Spiraling monitoring expenses, the creation of single points of human failure, and a lack of understanding of service dependencies all contribute to significant hidden costs associated with running software with Kubernetes.
In this talk, we’ll discuss how observability addresses these costs and helps you quantify and understand them. You’ll learn how new open source tools such as OpenTelemetry can help you understand performance of cloud-native software, and how you can easily get started using them today. Come be a part of the future of cloud-native observability!
WJAX 2019 - Taking Distributed Tracing to the next levelFrank Pfleger
The shift from monolithic applications to microservices led to many new challenges we haven’t had before. Especially analyzing problems and tracking down erroneous components of a distributed system has become much more difficult as slicing and decoupling applications advances. We now have to answer questions like: How do we find out which services were involved when processing a specific request and how long did it take to respond? How do we figure out which service is causing a request to fail and why? These issues are addressed by Distributed Tracing tools like Zipkin, Jaeger, OpenTracing and OpenCensus. But how can we leverage the data we are gathering using such tools to gain new insights into our business processes, instead of just focussing on the technical aspects?
Everything You wanted to Know About Distributed TracingAmuhinda Hungai
In the age of microservices, understanding how applications are executing in a highly distributed environment can be complicated. Looking at log files only gives a snapshot of the whole story and looking at a single service in isolation simply does not give enough information. Each service is just one side of a bigger story. Distributed tracing has emerged as an invaluable technique that succeeds in summarizing all sides of the story into a shared timeline. Yet deploying it can be quite challenging, especially in the large scale, polyglot environments of modern companies that mix together many different technologies. During this session, we will take a look at patterns and means to implement Tracing for services. After introducing the basic concepts we will cover how the tracing model works, and how to safely use it in production to troubleshoot and diagnose issues.
The monolith to cloud-native, microservices evolution has driven a shift from monitoring to observability. OpenTelemetry, a merger of the OpenTracing and OpenCensus projects, is enabling Observability 2.0. This talk covers the fundamental concepts of observability and then demonstrates how to instrument your applications using the OpenTelemetry libraries.
Why Distributed Tracing is Essential for Performance and ReliabilityDevOps.com
Many engineering organizations are adopting microservices or other loosely coupled architectures, often alongside DevOps practices. Together these have enabled individual service teams to become more independent and, as a result, have boosted developer velocity.
However, this increased velocity often comes at the cost of overall application performance or reliability. Worse, teams often don’t understand what’s affecting performance or reliability – or even who to ask to learn more. Distributed tracing was developed at organizations like Google and Twitter to address these problems.
In this talk, we’ll cover the fundamentals of distributed tracing and how it can be not only used to understand a distributed system, but also prioritize engineering work. As part of an observability platform, tracing can improve communication among teams, support other DevOps practices, and ultimately bring performance and reliability back until control.
Why Distributed Tracing is Essential for Performance and ReliabilityAggregage
Many engineering organizations have now adopted microservices or other loosely coupled architectures, often alongside DevOps practices. Together these have enabled individual service teams to become more independent and, as a result, have boosted developer velocity. However, this increased velocity often comes at the cost of overall application performance or reliability. Worse, teams often don’t understand what’s affecting performance or reliability – or even who to ask to learn more. Distributed tracing was developed at organizations like Google and Twitter to address these problems and has also come a long way in the decade since then. By the end of this presentation, you’ll understand why distributed tracing is necessary and how it can bring performance and reliability back under control.
The monolith to cloud-native, microservices evolution has driven a shift from monitoring to observability. OpenTelemetry, a merger of the OpenTracing and OpenCensus projects, is enabling Observability 2.0. This talk gives an overview of the OpenTelemetry project and then outlines some production-proven architectures for improving the observability of your applications and systems.
Architectures That Scale Deep - Regaining Control in Deep SystemsC4Media
Video and slides synchronized, mp3 and slide download available at URL https://bit.ly/2FWc5Sk.
Ben Sigelman talks about "Deep Systems", their common properties and re-introduces the fundamentals of control theory from the 1960s, including the original conceptualizations of Observability & Controllability. He uses examples from Google & other companies to illustrate how deep systems have damaged people's ability to observe software, and what needs to be done in order to regain control. Filmed at qconsf.com.
Ben Sigelman is a co-founder and the CEO at LightStep, a co-creator of Dapper (Google’s distributed tracing system), and co-creator of the OpenTracing and OpenTelemetry projects (both part of the CNCF). His work and interests gravitate towards observability, especially where microservices, high transaction volumes, and large engineering organizations are involved.
Solving the Hidden Costs of Kubernetes with ObservabilityDevOps.com
Kubernetes has enabled software organizations to realize the benefits of microservices through its convenient and powerful abstractions. Deploying, scaling, and running distributed software at scale is much easier through the use of Kubernetes.
However, these benefits have not come without costs compared to traditional software operations. Spiraling monitoring expenses, the creation of single points of human failure, and a lack of understanding of service dependencies all contribute to significant hidden costs associated with running software with Kubernetes.
In this talk, we’ll discuss how observability addresses these costs and helps you quantify and understand them. You’ll learn how new open source tools such as OpenTelemetry can help you understand performance of cloud-native software, and how you can easily get started using them today. Come be a part of the future of cloud-native observability!
WJAX 2019 - Taking Distributed Tracing to the next levelFrank Pfleger
The shift from monolithic applications to microservices led to many new challenges we haven’t had before. Especially analyzing problems and tracking down erroneous components of a distributed system has become much more difficult as slicing and decoupling applications advances. We now have to answer questions like: How do we find out which services were involved when processing a specific request and how long did it take to respond? How do we figure out which service is causing a request to fail and why? These issues are addressed by Distributed Tracing tools like Zipkin, Jaeger, OpenTracing and OpenCensus. But how can we leverage the data we are gathering using such tools to gain new insights into our business processes, instead of just focussing on the technical aspects?
Everything You wanted to Know About Distributed TracingAmuhinda Hungai
In the age of microservices, understanding how applications are executing in a highly distributed environment can be complicated. Looking at log files only gives a snapshot of the whole story and looking at a single service in isolation simply does not give enough information. Each service is just one side of a bigger story. Distributed tracing has emerged as an invaluable technique that succeeds in summarizing all sides of the story into a shared timeline. Yet deploying it can be quite challenging, especially in the large scale, polyglot environments of modern companies that mix together many different technologies. During this session, we will take a look at patterns and means to implement Tracing for services. After introducing the basic concepts we will cover how the tracing model works, and how to safely use it in production to troubleshoot and diagnose issues.
The monolith to cloud-native, microservices evolution has driven a shift from monitoring to observability. OpenTelemetry, a merger of the OpenTracing and OpenCensus projects, is enabling Observability 2.0. This talk covers the fundamental concepts of observability and then demonstrates how to instrument your applications using the OpenTelemetry libraries.
Why Distributed Tracing is Essential for Performance and ReliabilityDevOps.com
Many engineering organizations are adopting microservices or other loosely coupled architectures, often alongside DevOps practices. Together these have enabled individual service teams to become more independent and, as a result, have boosted developer velocity.
However, this increased velocity often comes at the cost of overall application performance or reliability. Worse, teams often don’t understand what’s affecting performance or reliability – or even who to ask to learn more. Distributed tracing was developed at organizations like Google and Twitter to address these problems.
In this talk, we’ll cover the fundamentals of distributed tracing and how it can be not only used to understand a distributed system, but also prioritize engineering work. As part of an observability platform, tracing can improve communication among teams, support other DevOps practices, and ultimately bring performance and reliability back until control.
Why Distributed Tracing is Essential for Performance and ReliabilityAggregage
Many engineering organizations have now adopted microservices or other loosely coupled architectures, often alongside DevOps practices. Together these have enabled individual service teams to become more independent and, as a result, have boosted developer velocity. However, this increased velocity often comes at the cost of overall application performance or reliability. Worse, teams often don’t understand what’s affecting performance or reliability – or even who to ask to learn more. Distributed tracing was developed at organizations like Google and Twitter to address these problems and has also come a long way in the decade since then. By the end of this presentation, you’ll understand why distributed tracing is necessary and how it can bring performance and reliability back under control.
Observability in Java: Getting Started with OpenTelemetryDevOps.com
Our software is more complex than ever: applications must be reliable, predictable, and easy to use to meet modern expectations. As developers, this means our responsibilities have grown while the things we can control have stayed the same. In order to better understand our systems and create truly modern software, we need observability.
This workshop will walk through what observability means for Java developers and how to achieve it in our systems with the least amount of work using the open source observability project OpenTelemetry.
Observability and more architecture next 2020Alon Fliess
You have a mature development process, and you also embrace DevOps. Your development team uses agile methodology. You use Git, and you have a continuous dev, test, deployment, everything process. But do you sleep well at night? Do you know that your services are up and running? That there are no availability, performance, and stability problems? Do you know if your customers are happy?
The answer to all of those questions is precisely what APM systems provide.
Application Performance Monitoring systems have become the IDE of the Site Reliability Engineers (SRE) and, as a matter of fact, for the all DevOps team, including the Dev part. In this lecture, you will get to know the essence of the APM systems, the good, the bad, and the vision about their future.
Talk by David Jorm on the state of Security in Java frameworks, and more specifically OpenDaylight. He also talks about his vision for where the platform should get to for delivering on the SDN promise.
Tracing Micro Services with OpenTracingHemant Kumar
Tracing in the world of micro services has become a standard with people using distributed tracers like Zipkin, Jaeger, Appdash etc. But, with so many different tracers, its confusing to choose one tracer and then painful to replace a tracer. That's where OpenTracing comes in. OT provides a consistent, vendor-neutral API to allow users to choose whatever distributed tracer they need and can change the tracer with just an O(1) operation.
The Knowledge Laboratory, in short k.LAB, is a software stack that embraces the FAIR principles: findable, accessible, interoperable and reusable. Its objective is to support linked knowledge across the borders of the domains of single modelers and scientists. k.LAB’s fascinating novelty is the possibility to work in an interconnected manner of knowledge networks, on which resources and models are described without ambiguity. This is achieved through the use of semantics to create a natural language to describe the models and the qualities that want to be observed.
Modelers can develop their models and publish them to the network. Publishing makes them findable and accessible within the network. Since everything in the network is observable, when running a model, k.LAB looks for the best knowledge unit able to resolve the particular request. This can be due to a given rule in a particular location in the world, or the chosen timestep of an environmental model, the availability of data at a needed resolution or just the fact that a different model is describe to work best for the given spatio-temporal context. Much as search engine ranking algorithms do, a reasoner takes care of transforming the observation strategy of the modeler, i.e. the model, into the best possible dataflow to produce the final observations. Interoperability is build and reusability is a natural consequence.
The k.LAB software stack is free and open source and relies on various projects of the Osgeo community as Geoserver, Openlayers and the Hortonmachine.
Initially started in the USA with NSF fundings, k.LAB is now an initiative of a partnership led by the Basque Centre for Climate Change. It currently involves scientists and decision makers from various research centers and organizations like: USGS, Ca’ Foscari Venezia, Universita’ degli studi di Udine, IMaSS at Nagoya University, IH Cantabria and the UNEP.
Business metrics visualization with Grafana and PrometheusVasilis Stergioulis
How to design a system to visualize critical business metrics and KPI’s for proprietary database applications using Docker, Grafana, Prometheus and custom Java EE ThinWAR agent.
Presentation for Docker Athens meetup group, given Jul 5 2017 by Vasilis Stergioulis of InsurIT Advisors
Monitoring Cloud Native Applications with PrometheusJacopo Nardiello
This talk is a quick intro to Prometheus with an overview on all its components. The presentation points to a generally available demo so that you can see all its components in action.
Reactive Programming In Java Using: Project ReactorKnoldus Inc.
The session provides details about reactive programming with reactive streams. The purpose of Reactive Streams is to provide a standard for asynchronous stream processing with non-blocking backpressure.”
This concept is explained using Project reactor.
. (TCO 2) _____ is the layer in hierarchical network design that is concerned with switching packets as fast as possible.
2. (TCO 2) The point at which the customer turns over control to the WAN service provider refers to the _____.
3. (TCO 2) _____ is an industry-standard, switched data-link-layer protocol that handles multiple virtual circuits using HDLC encapsulation between connected devices
4. (TCO 6) Asymmetric encryption is utilized in VPNs to
Case study and guidelines for performance testing microservices. The talk focuses on clarifying the goals of performance testing, suggestions on tools that will help get started and common pitfalls. Originally presented at Reactive Summit 2018.
Observability in Java: Getting Started with OpenTelemetryDevOps.com
Our software is more complex than ever: applications must be reliable, predictable, and easy to use to meet modern expectations. As developers, this means our responsibilities have grown while the things we can control have stayed the same. In order to better understand our systems and create truly modern software, we need observability.
This workshop will walk through what observability means for Java developers and how to achieve it in our systems with the least amount of work using the open source observability project OpenTelemetry.
Observability and more architecture next 2020Alon Fliess
You have a mature development process, and you also embrace DevOps. Your development team uses agile methodology. You use Git, and you have a continuous dev, test, deployment, everything process. But do you sleep well at night? Do you know that your services are up and running? That there are no availability, performance, and stability problems? Do you know if your customers are happy?
The answer to all of those questions is precisely what APM systems provide.
Application Performance Monitoring systems have become the IDE of the Site Reliability Engineers (SRE) and, as a matter of fact, for the all DevOps team, including the Dev part. In this lecture, you will get to know the essence of the APM systems, the good, the bad, and the vision about their future.
Talk by David Jorm on the state of Security in Java frameworks, and more specifically OpenDaylight. He also talks about his vision for where the platform should get to for delivering on the SDN promise.
Tracing Micro Services with OpenTracingHemant Kumar
Tracing in the world of micro services has become a standard with people using distributed tracers like Zipkin, Jaeger, Appdash etc. But, with so many different tracers, its confusing to choose one tracer and then painful to replace a tracer. That's where OpenTracing comes in. OT provides a consistent, vendor-neutral API to allow users to choose whatever distributed tracer they need and can change the tracer with just an O(1) operation.
The Knowledge Laboratory, in short k.LAB, is a software stack that embraces the FAIR principles: findable, accessible, interoperable and reusable. Its objective is to support linked knowledge across the borders of the domains of single modelers and scientists. k.LAB’s fascinating novelty is the possibility to work in an interconnected manner of knowledge networks, on which resources and models are described without ambiguity. This is achieved through the use of semantics to create a natural language to describe the models and the qualities that want to be observed.
Modelers can develop their models and publish them to the network. Publishing makes them findable and accessible within the network. Since everything in the network is observable, when running a model, k.LAB looks for the best knowledge unit able to resolve the particular request. This can be due to a given rule in a particular location in the world, or the chosen timestep of an environmental model, the availability of data at a needed resolution or just the fact that a different model is describe to work best for the given spatio-temporal context. Much as search engine ranking algorithms do, a reasoner takes care of transforming the observation strategy of the modeler, i.e. the model, into the best possible dataflow to produce the final observations. Interoperability is build and reusability is a natural consequence.
The k.LAB software stack is free and open source and relies on various projects of the Osgeo community as Geoserver, Openlayers and the Hortonmachine.
Initially started in the USA with NSF fundings, k.LAB is now an initiative of a partnership led by the Basque Centre for Climate Change. It currently involves scientists and decision makers from various research centers and organizations like: USGS, Ca’ Foscari Venezia, Universita’ degli studi di Udine, IMaSS at Nagoya University, IH Cantabria and the UNEP.
Business metrics visualization with Grafana and PrometheusVasilis Stergioulis
How to design a system to visualize critical business metrics and KPI’s for proprietary database applications using Docker, Grafana, Prometheus and custom Java EE ThinWAR agent.
Presentation for Docker Athens meetup group, given Jul 5 2017 by Vasilis Stergioulis of InsurIT Advisors
Monitoring Cloud Native Applications with PrometheusJacopo Nardiello
This talk is a quick intro to Prometheus with an overview on all its components. The presentation points to a generally available demo so that you can see all its components in action.
Reactive Programming In Java Using: Project ReactorKnoldus Inc.
The session provides details about reactive programming with reactive streams. The purpose of Reactive Streams is to provide a standard for asynchronous stream processing with non-blocking backpressure.”
This concept is explained using Project reactor.
. (TCO 2) _____ is the layer in hierarchical network design that is concerned with switching packets as fast as possible.
2. (TCO 2) The point at which the customer turns over control to the WAN service provider refers to the _____.
3. (TCO 2) _____ is an industry-standard, switched data-link-layer protocol that handles multiple virtual circuits using HDLC encapsulation between connected devices
4. (TCO 6) Asymmetric encryption is utilized in VPNs to
Case study and guidelines for performance testing microservices. The talk focuses on clarifying the goals of performance testing, suggestions on tools that will help get started and common pitfalls. Originally presented at Reactive Summit 2018.
Why test automation is getting more difficult, and what can be done about it. This slides are from a presentation by Group Director, Product Management at TestPlant, Gordon McKeown, which was presented at the Northern Lights conference in Manchester in April 2016.
1,2,3 … testing : is this thing on(line)? Meet your new Microsoft Testing toolsNETUsergroupZentrals
Is your environment acting the way you intended it to be, as in do your users see what you wanted them to see?
Is your app breaking under stress or even worse going down when components are acting up (or down in this case)?
In the past people were using Azure Devops Load Testing and related. But we all know some of these services have been deprecated. In this session you will be guided though all the options you have today lining out all the testing capabilities you have in the Microsoft Coding Universe.
Let’s take a stroll through the various options for load, chaos and automated testing in all things Microsoft devops and Azure. In doing so you will get to learn which services to use to improve reliability, performance usability and resilience of the applications you are building.
Mike Martin
As a Microsoft Technical Evangelist, Mike is an Azure goto for ISV’s (independent software vendors). He’s been active in the IT industry for more than 20 years and has performed almost all types of job profiles, going from coaching and leading a team to architecting and systems design and training. Today he’s primarily into the Microsoft Cloud Platform and Application Lifecycle Management. He’s not a stranger to both dev and IT Pro topics, they even call him the perfect hybrid solution.
Flink Forward San Francisco 2018: David Reniz & Dahyr Vergara - "Real-time m...Flink Forward
“Customer experience is the next big battle ground for telcos,” proclaimed recently Amit Akhelikar, Global Director of Lynx Analytics at TM Forum Live! Asia in Singapore. But, how to fight in this battle? A common approach has been to keep “under control” some well-known network quality indicators, like dropped calls, radio access congestion, availability, and so on; but this has proven not to be enough to keep customers happy, like a siege weapon is not enough to conquer a city. But, what if it were possible to know how customers perceive services, at least most demanded ones, like web browsing or video streaming? That would be like a squad of archers ready to battle. And even having that, how to extract value of it and take actions in no time, giving our skilled archers the right targets? Meet CANVAS (Customer And Network Visualization and AnaltyticS), one of the first LATAM implementations of a Flink-based stream processing use case for a telco, which successfully combines leading and innovative technologies like Apache Hadoop, YARN, Kafka, Nifi, Druid and advanced visualizations with Flink core features like non-trivial stateful stream processing (joins, windows and aggregations on event time) and CEP capabilities for alarm generation, delivering a next-generation tool for SOC (Service Operation Center) teams.
The mainstreaming of containerization and microservices is raising a critical question by both developers and operators: how do we debug all this?
Debugging microservices applications is a difficult task. The state of the application is spread across multiple microservices, and it is hard to get a holistic view of the state of the application. Currently debugging of microservices is assisted by openTracing, which helps in tracing of a transaction or workflow for post-mortem analysis, and linkerd and itsio which monitor the network to identify latency problems. These tools however, do not allow to monitor and interfere with the application during run time.
In this talk, we will describe and demonstrate common debugging techniques and we will introduce Squash, a new tool and methodology.
How to Monitor Application Performance in a Container-Based WorldKen Owens
Monitoring applications that consists of multiple containers is not easy or available as part of any container solution or orchestration platform. This talk looks at how to address application performance leveraging business service level objectives and the architecture for implementing the solution. The solution has been prototyped at ciscoshipped.io and we would love your thoughts.
Observability foundations in dynamically evolving architecturesBoyan Dimitrov
Holistic application health monitoring, request tracing across distributed systems, instrumentation, business process SLAs - all of them are integral parts of today’s technical stacks. Nevertheless many teams decide to integrate observability last which makes it an almost impossible challenge - especially if you have to deal with hundreds and thousands of services. Therefore starting early is essential and in this talk we are going to see how we can solve those challenges early and explore the foundations of building and evolving complex microservices platforms in respect to observability.
We are going to share some of the best practices and quick wins that allow us to correlate different telemetry systems and gradually build up towards more sophisticated use-cases.
We are also going to look at some of the standard AWS services such as X-Ray and Cloudwatch that help us get going "for free" and then discuss more complex tooling and integrations building up towards a fully integrated ecosystem. As part of this talk we are also going to share some of the learnings we have made at Sixt on this topic and we are going to introduce some of the solutions that help us operate our microservices stack
Using static code analysis tools and detecting and fixing identified issues is very important in order to improve the quality and security of the code baseline.
CodeChecker (https://github.com/Ericsson/codechecker ) is an open source analyzer tooling, defect database and viewer extension for the Clang Static Analyzer and Clang Tidy.
It provides a number of additional features:
- Good visualization of problems in the code
- Overview of results for the whole product
- Filtering
- Cross translational unit analysis and statistical checkers support
- Suppression handling
- And many others...
These features simplify the follow up of results and make it more efficient.
In the video, an overview of features and capabilities of CodeChecker is demonstrated as well as a description and recommendation of how to introduce new tools.
Recording of the demo: https://youtu.be/sQ2Qj0kHoRY published in C++ Dublin User group https://www.youtube.com/channel/UCZ4UNE_1IMUFfAhcdq7CMOg/
Useful links:
open source project: https://github.com/Ericsson/codechecker
http://codechecker-demo.eastus.cloudapp.azure.com/login.html#
demo/demo
https://codechecker.readthedocs.io/en/latest/
http://clang-analyzer.llvm.org/available_checks.html
http://clang.llvm.org/extra/clang-tidy/checks/list.html
Other related videos about Clang Static Analyzer and CodeChecker that goes a bit more deeply into how Clang Static Analyzer works:
Clang Static Analysis - Meeting C++ 2016 Gabor Horvath
https://www.youtube.com/watch?v=UcxF6CVueDM
CppCon 2016: Gabor Horvath “Make Friends with the Clang Static Analysis Tools"
https://www.youtube.com/watch?v=AQF6hjLKsnM
top nidhi software solution freedownloadvrstrong314
This presentation emphasizes the importance of data security and legal compliance for Nidhi companies in India. It highlights how online Nidhi software solutions, like Vector Nidhi Software, offer advanced features tailored to these needs. Key aspects include encryption, access controls, and audit trails to ensure data security. The software complies with regulatory guidelines from the MCA and RBI and adheres to Nidhi Rules, 2014. With customizable, user-friendly interfaces and real-time features, these Nidhi software solutions enhance efficiency, support growth, and provide exceptional member services. The presentation concludes with contact information for further inquiries.
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...Shahin Sheidaei
Games are powerful teaching tools, fostering hands-on engagement and fun. But they require careful consideration to succeed. Join me to explore factors in running and selecting games, ensuring they serve as effective teaching tools. Learn to maintain focus on learning objectives while playing, and how to measure the ROI of gaming in education. Discover strategies for pitching gaming to leadership. This session offers insights, tips, and examples for coaches, team leads, and enterprise leaders seeking to teach from simple to complex concepts.
Understanding Globus Data Transfers with NetSageGlobus
NetSage is an open privacy-aware network measurement, analysis, and visualization service designed to help end-users visualize and reason about large data transfers. NetSage traditionally has used a combination of passive measurements, including SNMP and flow data, as well as active measurements, mainly perfSONAR, to provide longitudinal network performance data visualization. It has been deployed by dozens of networks world wide, and is supported domestically by the Engagement and Performance Operations Center (EPOC), NSF #2328479. We have recently expanded the NetSage data sources to include logs for Globus data transfers, following the same privacy-preserving approach as for Flow data. Using the logs for the Texas Advanced Computing Center (TACC) as an example, this talk will walk through several different example use cases that NetSage can answer, including: Who is using Globus to share data with my institution, and what kind of performance are they able to achieve? How many transfers has Globus supported for us? Which sites are we sharing the most data with, and how is that changing over time? How is my site using Globus to move data internally, and what kind of performance do we see for those transfers? What percentage of data transfers at my institution used Globus, and how did the overall data transfer performance compare to the Globus users?
Into the Box Keynote Day 2: Unveiling amazing updates and announcements for modern CFML developers! Get ready for exciting releases and updates on Ortus tools and products. Stay tuned for cutting-edge innovations designed to boost your productivity.
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERRORTier1 app
Even though at surface level ‘java.lang.OutOfMemoryError’ appears as one single error; underlyingly there are 9 types of OutOfMemoryError. Each type of OutOfMemoryError has different causes, diagnosis approaches and solutions. This session equips you with the knowledge, tools, and techniques needed to troubleshoot and conquer OutOfMemoryError in all its forms, ensuring smoother, more efficient Java applications.
Globus Connect Server Deep Dive - GlobusWorld 2024Globus
We explore the Globus Connect Server (GCS) architecture and experiment with advanced configuration options and use cases. This content is targeted at system administrators who are familiar with GCS and currently operate—or are planning to operate—broader deployments at their institution.
Unleash Unlimited Potential with One-Time Purchase
BoxLang is more than just a language; it's a community. By choosing a Visionary License, you're not just investing in your success, you're actively contributing to the ongoing development and support of BoxLang.
Software Engineering, Software Consulting, Tech Lead.
Spring Boot, Spring Cloud, Spring Core, Spring JDBC, Spring Security,
Spring Transaction, Spring MVC,
Log4j, REST/SOAP WEB-SERVICES.
We describe the deployment and use of Globus Compute for remote computation. This content is aimed at researchers who wish to compute on remote resources using a unified programming interface, as well as system administrators who will deploy and operate Globus Compute services on their research computing infrastructure.
Designing for Privacy in Amazon Web ServicesKrzysztofKkol1
Data privacy is one of the most critical issues that businesses face. This presentation shares insights on the principles and best practices for ensuring the resilience and security of your workload.
Drawing on a real-life project from the HR industry, the various challenges will be demonstrated: data protection, self-healing, business continuity, security, and transparency of data processing. This systematized approach allowed to create a secure AWS cloud infrastructure that not only met strict compliance rules but also exceeded the client's expectations.
Check out the webinar slides to learn more about how XfilesPro transforms Salesforce document management by leveraging its world-class applications. For more details, please connect with sales@xfilespro.com
If you want to watch the on-demand webinar, please click here: https://www.xfilespro.com/webinars/salesforce-document-management-2-0-smarter-faster-better/
How Recreation Management Software Can Streamline Your Operations.pptxwottaspaceseo
Recreation management software streamlines operations by automating key tasks such as scheduling, registration, and payment processing, reducing manual workload and errors. It provides centralized management of facilities, classes, and events, ensuring efficient resource allocation and facility usage. The software offers user-friendly online portals for easy access to bookings and program information, enhancing customer experience. Real-time reporting and data analytics deliver insights into attendance and preferences, aiding in strategic decision-making. Additionally, effective communication tools keep participants and staff informed with timely updates. Overall, recreation management software enhances efficiency, improves service delivery, and boosts customer satisfaction.
How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?XfilesPro
Worried about document security while sharing them in Salesforce? Fret no more! Here are the top-notch security standards XfilesPro upholds to ensure strong security for your Salesforce documents while sharing with internal or external people.
To learn more, read the blog: https://www.xfilespro.com/how-does-xfilespro-make-document-sharing-secure-and-seamless-in-salesforce/
Why React Native as a Strategic Advantage for Startup Innovation.pdfayushiqss
Do you know that React Native is being increasingly adopted by startups as well as big companies in the mobile app development industry? Big names like Facebook, Instagram, and Pinterest have already integrated this robust open-source framework.
In fact, according to a report by Statista, the number of React Native developers has been steadily increasing over the years, reaching an estimated 1.9 million by the end of 2024. This means that the demand for this framework in the job market has been growing making it a valuable skill.
But what makes React Native so popular for mobile application development? It offers excellent cross-platform capabilities among other benefits. This way, with React Native, developers can write code once and run it on both iOS and Android devices thus saving time and resources leading to shorter development cycles hence faster time-to-market for your app.
Let’s take the example of a startup, which wanted to release their app on both iOS and Android at once. Through the use of React Native they managed to create an app and bring it into the market within a very short period. This helped them gain an advantage over their competitors because they had access to a large user base who were able to generate revenue quickly for them.
In software engineering, the right architecture is essential for robust, scalable platforms. Wix has undergone a pivotal shift from event sourcing to a CRUD-based model for its microservices. This talk will chart the course of this pivotal journey.
Event sourcing, which records state changes as immutable events, provided robust auditing and "time travel" debugging for Wix Stores' microservices. Despite its benefits, the complexity it introduced in state management slowed development. Wix responded by adopting a simpler, unified CRUD model. This talk will explore the challenges of event sourcing and the advantages of Wix's new "CRUD on steroids" approach, which streamlines API integration and domain event management while preserving data integrity and system resilience.
Participants will gain valuable insights into Wix's strategies for ensuring atomicity in database updates and event production, as well as caching, materialization, and performance optimization techniques within a distributed system.
Join us to discover how Wix has mastered the art of balancing simplicity and extensibility, and learn how the re-adoption of the modest CRUD has turbocharged their development velocity, resilience, and scalability in a high-growth environment.
Quarkus Hidden and Forbidden ExtensionsMax Andersen
Quarkus has a vast extension ecosystem and is known for its subsonic and subatomic feature set. Some of these features are not as well known, and some extensions are less talked about, but that does not make them less interesting - quite the opposite.
Come join this talk to see some tips and tricks for using Quarkus and some of the lesser known features, extensions and development techniques.
Modern design is crucial in today's digital environment, and this is especially true for SharePoint intranets. The design of these digital hubs is critical to user engagement and productivity enhancement. They are the cornerstone of internal collaboration and interaction within enterprises.
Enhancing Research Orchestration Capabilities at ORNL.pdfGlobus
Cross-facility research orchestration comes with ever-changing constraints regarding the availability and suitability of various compute and data resources. In short, a flexible data and processing fabric is needed to enable the dynamic redirection of data and compute tasks throughout the lifecycle of an experiment. In this talk, we illustrate how we easily leveraged Globus services to instrument the ACE research testbed at the Oak Ridge Leadership Computing Facility with flexible data and task orchestration capabilities.
4. Agenda
• Why testing?
• Why is testing microservices so hard?
• Let’s test in production!
• Using distributed context propagation
5. Debugging an issue in production using
observability is great
… but it should be our last resort!
6. Cost of solving an issue
• Detection cost
• Troubleshooting cost
• Fixing cost
• Verification cost
• User impact cost
• Engineering burnout cost
👩💻 Developer End user 👨💼
💵
7. Testing is about reducing the risk
of your application not performing as expected,
at the lowest possible cost
We want applications to be
robust, performant and correct
8. Testing monoliths
Pre-production:
Robust: test your few known failure modes
Performant: benchmark, load, stress tests
Correct: unit, integration, end-to-end tests
Production:
Monitoring to detect issues (error, latency)
Logging to troubleshoot them
Database
Backend
UI
9. Testing microservices
Pre-production:
We test each individual service in isolation
Using mocks, contract tests, traffic replays…
Production:
Tracing to troubleshoot issues
Wide divergence
10. Testing in production
If we can no longer replicate production…
# of services
# of third-party APIs
Data
Traffic patterns
Configuration
Scale
Release cadence
OS kernel version
Service mesh
Network latency
DNS records
SSL certificates
Backups
Monitoring
…let’s test in production!
Serverless
11. Testing in production
❌ It is NOT a replacement for pre-production testing
✅ It is another testing technique to add to your toolbox
✅ It requires engineering investment to do it right
12. Types of tests in production
• Integration testing
• End-to-end testing
• Shadowing/traffic mirroring
• Canary deployments
• Feature flags
• Chaos engineering
• API testing/Real user monitoring
Deploy
Operate
Release
13. Risks of testing in production
• User impact
• State poisoning
• Traffic saturation
• Telemetry data skew
• Misfired alerts
The application needs to be
aware of tests being
performed in production
14. Test tenancy
End user
Tests
• Test label is propagated across services per-request
• Services and routing layer are aware of test tenancy
15. Risks of testing in production
• User impact
• State poisoning
• Traffic saturation
• Telemetry data skew
• Misfired alerts
Test before releasing
Separate writes to datastores
Implement QoS based on test label
Mark telemetry with test label
Exclude test telemetry from alerts
16. Context propagation allows developers to attach
arbitrary metadata to the current request
that will be propagated automatically
to all downstream dependencies
17. Context propagation
✅ It comes for “free” with tracing
✅ Developer-friendly API
✅ Read/write at any point in the request
✅ Compatible with threads and co-routines
✅ Compatible with multiple sync and async protocols
⚠ Increases request size
18. Context propagation
Name “Baggage” “Tags” “DistributedContext”
Definition Key (string): Value (string)
TagKey (string): TagValue (string)
+ TagMetadata
EntryKey (string): EntryValue (string)
+ EntryMetadata
Serialization Via Tracer.Extract/Tracer.Inject Via OpenCensus plugins Via OpenTelemetry API
Text-based format
(e.g. HTTP)
Tracer-specific Varies Uses W3C Correlation Context
Binary format
(e.g. gRPC)
Tracer-specific Varies
Own binary format similar to
W3C Correlation Context
19. Context propagation
traceparent: 00-0af7651916cd43dd8448eb211c80319c-00f067aa0ba902b7-01
tracestate: rojo=00f067aa0ba902b7,congo=t61rcWkgMzE
Version 32-bit trace ID 16-bit parent span ID Trace flags
Vendor ID Vendor-specific payload
Correlation-Context: tenancy=test;ttl=-1,user.id=3
User-defined key User-defined value Property
Trace Context (W3C Candidate Recommendation)
Correlation Context (W3C Editor’s Draft)
20. Context propagation
Already used for:
• Tracing information
• Sampling information
But we can also use it for:
• Test traffic label
• Fault injection instructions
• User account information
• Feature flags
23. Managing state
datastore
datastore
datastore
Multi-tenant service
Multi-tenant datastore
Multi-tenant service
Single-tenant datastores
service
service
Single-tenant services
Single-tenant datastores
datastore
datastore
service
service
datastore
Multi-tenant service
Multi-tenant datastore
service
End users
Tests
End users
Tests
End users
Tests
End users
Tests
24. Managing telemetry data
// Init measure
meter := global.MeterProvider().GetMeter("")
tenancyKey := key.New("tenancy")
measure := meter.NewInt64Measure("myMeasure", metric.WithKeys(tenancyKey))
// Extract tenancy from distributed context
var labels []core.KeyValue
if tenancyValue, ok := distributedcontext.FromContext(ctx).Value("tenancy"); ok {
labels = append(labels, core.KeyValue{Key: tenancyKey, Value: tenancyValue})
}
// Attach labels to measurement
measure.Record(ctx, 123, meter.Labels(labels...))
With OpenTelemetry:
25. Managing other side effects
// Check if current request belongs to test tenancy
func inTesting(ctx context.Context) bool {
value, ok := distributedcontext.FromContext(ctx).Value("tenancy")
return ok && value == core.String("test")
}
With OpenTelemetry:
Examples:
• Implementing multi-tenant storage
• Using sandbox accounts from third-party services
27. Example: fault injection testing
Proxy
svc v1
svc v1
svc v1
Correlation-Context: tenancy=test,svc.fault.http.delay=10s
🕘
End user
Tests
Downstream
services
28. Example: feature flagging
Proxy
svc v1
svc v1
svc v1
Correlation-Context: tenancy=test,svc.feature1.enabled=true
End user
Tests
Downstream
services
29. Example: test accounts
Proxy
svc v1
svc v1
svc v1
Correlation-Context: tenancy=test,user.kind=test
Auth serviceEnd user
Downstream
services
30. Consequences
• No need to replicate the entire application stack anywhere
• Locally, on CI or staging
• Segregated telemetry allows us to monitor and troubleshoot tests
• Same tools and visibility as with production traffic
• We can add other types of traffic to our application
• Examples: “sandbox”, “development” traffic
31. Key takeaways
• Let’s catch issues as early as possible through proactive testing
• Testing in production can be the most efficient way to test complex
systems
• We should design our applications to allow safely testing in production
• Let’s make use of context propagation and make the most of our
observability instrumentation