Distributed consensus algorithms allow different computer systems to agree on data values in an unreliable distributed network. The document summarizes the history and developments of consensus algorithms over three decades, including early impossibility results, Paxos, Multi-Paxos, Fast Paxos, Egalitarian Paxos, and Raft. It also discusses challenges in implementing consensus algorithms and potential future directions like Ios and Hydra that improve throughput and allow consensus across geographically distributed data centers.
Reaching reliable agreement in an unreliable worldHeidi Howard
?
In this lecture, we explore how to construct resilient distributed systems on top of unreliable components. Starting, almost two decades ago, with Leslie Lamport¡¯s work on organising parliament for a Greek island. We will take a journey to today¡¯s datacenter and the systems powering companies like Google, Amazon and Microsoft. Along the way, we will face interesting impossibility results, machines acting maliciously and the complexity to today¡¯s networks. We will discover how to reach agreement between many parties and from this, how we construct the fault-tolerance systems that we depend upon everyday.
This lecture was given on October 13th 2015 at the University of Cambridge, as part of the Research Students Lecture Series.
Flexible Paxos: Reaching agreement without majorities Heidi Howard
?
Flexible Paxos introduces a generalization of the Paxos algorithm that allows for reaching consensus without requiring majority quorums. The key insight is that only the intersection between replication quorums and leader election quorums needs to be considered, rather than all quorums intersecting. This opens up many new quorum schemes that can provide more scalable and available consensus. Majority quorums are not necessarily optimal and different quorum designs may better suit practical systems with heterogeneous resources. Ongoing work aims to adopt these ideas into production and further expand the algorithms to new failure models.
Distributed Consensus: Making Impossible Possible [Revised]Heidi Howard
?
In this talk, we explore how to construct resilient distributed systems on top of unreliable components. Starting, almost two decades ago, with Leslie Lamport¡¯s work on organising parliament for a Greek island. We will take a journey to today¡¯s datacenters and the systems powering companies like Google, Amazon and Microsoft. Along the way, we will face interesting impossibility results, machines acting maliciously and the complexity of today¡¯s networks. Ultimately, we will discover how to reach agreement between many parties and from this, how to construct new fault-tolerance systems that we can depend upon everyday.
The document discusses formal modeling and analysis of cryptographic protocols. It introduces formal methods, the Dolev-Yao model, pi-calculus as a modeling language, and the ProVerif tool. As an example, a na?ve handshake protocol is presented and a man-in-the-middle attack is demonstrated. The talk concludes that formal methods provide rigorous analysis of protocol security properties.
Anatomy of an elixir process and Actor CommunicationMustafa TURAN
?
Elixir processes are isolated, lightweight threads of execution that communicate by message passing. Each process has its own mailbox to receive messages and state to maintain as it processes messages. Messages can be sent either asynchronously with no reply expected, or synchronously to request a response. If a process does not respond within a specified time, the calling process will continue execution according to how it is programmed to handle non-responses. Processes may have multiple messages in their mailbox that are processed sequentially and can change state based on the messages received. If a process dies unexpectedly, it notifies its supervisor which decides how to handle the failure based on the restart strategy.
Distributed Consensus: Making the Impossible PossibleC4Media
?
Video and slides synchronized, mp3 and slide download available at URL http://bit.ly/29faOI5.
Heidi Howard explores how to construct resilient distributed systems on top of unreliable components. Howard discusses today¡¯s datacenters and the systems powering companies like Google, Amazon and Microsoft, as well as which algorithms are best suited to different situations. Filmed at qconlondon.com.
Heidi Howard is currently studying towards PhD at the Cambridge University, Computer Lab. Her research interest is fault-tolerance, consistency and consensus in modern distributed systems. Heidi has also previously worked as research assistant and undergraduate researcher on topics such as middlebox traversal, DNS, privacy preserving systems and wireless community networks.
There have never been more commercial tools available for building distributed data apps ¡ª from cloud hosting services, to cloud-native databases, to cloud-based analytics platforms. So why is it still so hard to make a successful app with a global user base?
One of the toughest challenges cloud offerings take on is the problem of consensus, abstracting away most of the complexity. That's no small feat, given that this is a hard enough problem that people spend years getting a PhD just to understand it! Unfortunately, while buying off-the-shelf cloud services can accelerate the path to an MVP, it also makes optimization tough. How will we scale during a period of rapid user growth? How do we do I18n and l10n or guarantee a good UX for users on the other side of the world? How do we prevent replication that might get us into legal trouble?
In this talk, we'll consider several case studies of global apps (both successful and otherwise!), talk about the limitations of off-the-shelf consensus, and consider a future where everyday developers can use open source tools to build distributed data apps that are easier to reason about, maintain, and tune.
This document discusses patterns in distributed computing. It outlines some of the key hurdles in distributed systems like asynchrony, locality, failure, and Byzantine faults. It then summarizes common distributed algorithms like leader election, group membership, and consensus. It presents two Ruby libraries, TokenWorker and StaticQueueWorker, that implement leader election and work distribution patterns. It also briefly outlines the Paxos consensus algorithm but notes that a full implementation is very challenging. The document advocates for practical approaches over purely formal solutions and emphasizes starting with reasonable reliability requirements.
Shared on 5th Dec at SGInnovate with Swirlds Mance Harmon, Jordan Fried and Edgar Seah.
Hashgraph consensus, demo apps in Swirlds Java SDK, babble (unofficial golang implementation of Hashgraph) and their implications for distributed ledger technology.
In this slide deck, we go exploring the database landscape today and the common lego blocks that are used to build these different falvours of databses. We will dive through internals of a database, explore some choices and towards the end also explore some real world database architectures in view of the concepts (legos) we explored earlier.
The document discusses different methods for achieving consensus in blockchain systems. The primary methods are:
1. Practical Byzantine Fault Tolerance (PBFT) algorithm which allows nodes to agree on the valid information to store despite some nodes producing faulty results.
2. Proof-of-Work (PoW) algorithms like Bitcoin use computational power to solve cryptographic puzzles to add blocks and secure the network.
3. Proof-of-Stake (PoS) algorithms assign weight to nodes based on their stake in the network and select block producers probabilistically.
4. Delegated Proof-of-Stake (DPoS) algorithms allow token holders to elect block producers to validate on their
Crossing the Boundaries: Development Strategies for (P)SoCsAndreas Koschak
?
Not many years ago, FPGAs designed to be used in quantities contained a number of logic cells that were easy to fill using pure RTL or even schematic design tools. Now the boundaries between hardware and software have started to blur. With the advent of large scale FPGAs, structured ASICs and programmable SoCs, the massively increased complexity requires higher level design tools and better controlled development strategies, such as the ones used in ASIC design. Other approaches can be taken from the software development world. This talk highlights some strategies that allow designers to increase the quality of their designs without high costs and still be technology neutral and flexible during the course of the project.
This document provides an overview of consensus models for distributed systems, including both "fast" and "slow" consensus. For slow consensus, it describes proof-of-work protocols like Bitcoin which achieve eventual consistency through mining, and proof-of-stake protocols which select validators randomly based on their stake. For fast consensus, it outlines private and federated models with a known set of validators, as well as delegated proof-of-stake and cryptographic sortition approaches. The document serves as a quick introduction to different consensus algorithms and their tradeoffs.
Towards a low carbon proof-of-work blockchainIJNSA Journal
?
Proof of Work (PoW) blockchains burn a lot of energy. Proof-of-work algorithms are expensive by design and often only serve to compute blockchains. In some sense, carbon-based and non-carbon based regional electric power is fungible. So the total carbon and non-carbon electric power mix plays a role. Thus, generally PoW algorithms have large CO2 footprints solely for computing blockchains. A proof of technology is described towards replacing hashcash or other PoW methods with a lottery and proof-of-VM (PoVM) emulation. PoVM emulation is a form of PoW where an autonomous blockchain miner gets a lottery ticket in exchange for providing a VM (virtual Machine) for a specified period. These VMs get their jobs from a job queue. Managing and ensuring, by concensus, that autonomous PoVMs are properly configured and running as expected gives several gaps for a complete practical system. These gaps are discussed. Our system is similar to a number of other blockchain systems. We briefly survey these systems. This paper along with our proof of technology was done as a senior design project.
This document discusses various consensus algorithms used in blockchain networks. It describes Proof of Work (PoW), Proof of Stake (PoS), Byzantine Fault Tolerance (BFT), Proof of Authority (PoA), and Proof of Elapsed Time (PoET). It explains how each algorithm establishes consensus in the network and highlights advantages and disadvantages of each approach. Key aspects covered include how mining works in PoW, how validators are selected in PoS, using identities as stakes in PoA, and PoET's use of trusted hardware to provide a random leader selection.
Building on quicksand microservices indicthreadsIndicThreads
?
The document discusses the evolution of distributed systems from single machines to replicated databases and services. It explains how eventual consistency allows for higher availability but reduces correctness by allowing stale data reads. The key is that different applications have different consistency needs based on their risk tolerance. Rather than strict consistency, eventual consistency with apologies is often sufficient and enables more flexible tradeoffs between correctness and availability for increased business value.
1. The document discusses the evolution of energy-free consensus mechanisms for blockchain, from Peercoin's proof-of-stake consensus to SPOS consensus with constant block minting.
2. It describes how Peercoin was the first to introduce proof-of-stake consensus without energy consumption, separating the energy component from consensus. However, criticisms of proof-of-stake include nothing-at-stake and stake grinding attacks.
3. More recently, there is a shift toward supernode proof-of-stake (SPOS) consensus with constant block minting intervals and other improvements to address scaling and decentralization.
Blockchain technology is a type of distributed database that achieves consensus in an open network without a central authority. However, blockchain may not always be needed, as other distributed database solutions can often achieve the same goals more efficiently. The unique property of blockchain is enabling consensus in a permissionless network, but for permissioned networks a traditional distributed database may suffice. While blockchain technology has potential benefits, its applications are currently limited to scenarios where no trusted third party is available. Other existing distributed database technologies can often meet use case needs without blockchain's limitations.
This document discusses the CAP theorem in depth. It begins by explaining the CAP theorem - that a distributed system can only guarantee two of consistency, availability, and partition tolerance. It then discusses how the CAP theorem has impacted modern distributed databases and NoSQL systems. Several sections provide different perspectives on CAP and discuss consistency-availability tradeoffs in system design. The document concludes by discussing how some systems overcome CAP limitations through techniques like consistent replication.
This document summarizes a guest lecture at UNSW about contemporary software challenges and solutions. It discusses how technology can provide a competitive advantage if developed properly. It presents case studies of legacy systems that were difficult to change and scale, as well as examples of systems that used newer architectures like microservices. The lecture promotes approaches like test-driven development, REST, and self-organizing teams to build independent, scalable services.
Blockchain is a distributed ledger technology that allows for the safe distribution of a ledger across multiple nodes. It works by having each transaction digitally signed and added in a "block" along with a proof of work. This prevents double spending and allows nodes to reach consensus on the transaction history without a centralized authority. Smart contracts enable decentralized applications to run transactions automatically according to the program. However, first generation blockchains face challenges around centralization, scalability, and smart contract quality. New solutions aim to address these through alternative consensus methods, off-chain transactions, and designed smart contract languages.
This presentation overviews basic principles of high availability architectures and presents how to deploy in high availability FIWARE data management services.
Cryptomania! The Byzantine Generals Leave Their GardenDallas Kennedy
?
May 2019 ¡ñ Last part of a survey of distributed consensus, proof of work versus proof of stake, the Byzantine Generals Problem, and steps beyond block chains towards more comprehensive network solutions
For further details contact:
N.RAJASEKARAN B.E M.S 9841091117,9840103301.
IMPULSE TECHNOLOGIES,
Old No 251, New No 304,
2nd Floor,
Arcot road ,
Vadapalani ,
Chennai-26.
Video and slides synchronized, mp3 and slide download available at URL http://bit.ly/2BhEnpC.
Nathan Sobo talks about a new library called Tachyon that draws from the latest CRDT research to enable real-time collaborative text editing in a fully distributed setting. Filmed at qconsf.com.
Nathan Sobo is a founding member of the Atom Editor team at GitHub.
Convert EML files to PST on Mac operating systemRachel Walker
?
Mailvita EML to PST Converter for Mac is a useful program for Mac users, it can easily change several EML files into Outlook PST files with all attachments. This tool works with a lot of email programs, like Windows Live Mail, Thunderbird, and others. With its simple GUI, it's easy for both technical and non-technical people to convert files. Visit the official website to learn more about this program.
visit here: https://www.mailvita.com/eml-to-pst-converter-for-mac/
Struggling to get real value from HubSpot Sales Hub? Learn 5 mighty methods to close more deals without more leads or headcount (even on Starter subscriptions)!
These slides accompanied a webinar run by Hampshire's HubSpot User Group (HUG) on 2nd April, 2025.
HubSpot subscribers can watch the recording here: https://events.hubspot.com/events/details/hubspot-hampshire-presents-5-ways-to-close-more-deals-from-your-existing-sales-pipeline/
ABOUT THE EVENT:
Unlock hidden revenue in your CRM with our practical HubSpot tactics
Are you struggling to get real value from your HubSpot Sales Hub?
If your HubSpot feels like more of an admin burden than a revenue enabler, you¡¯re not alone. Many sales leaders find that their team isn't updating records consistently, pipeline visibility is poor, and reporting doesn¡¯t deliver the insights they need to drive strategy.
The good news? You don¡¯t need to upgrade your HubSpot subscription to sort these issues.
Join us for this webinar to learn 5 mighty tactics that will help you streamline your sales process, improve pipeline visibility, and extract more revenue from your existing pipeline, without spending more on marketing or hiring extra sales reps.
What You¡¯ll Learn
? Customising Records ¨C Increase sales momentum with more useful CRM data for your salespeople
? Pipeline Rules ¨C Improve deal stage consistency and data accuracy for improved prioritisation and forecasting
? Team Permissions & Defaults ¨C Control access and streamline processes. Spend more time selling, less on admin
? Pipeline View Customisation ¨C Get clearer sales insights, faster, to deal with revenue leaks
? Simple Sales Reports ¨C Build actionable dashboards to drive strategy with data
? Bonus: Successful Sales Hub users will share their experiences and the revenue impact it has delivered for them.
Who is this webinar for?
Sales leaders using HubSpot Sales Hub Starter, or those new to HubSpot
Sales managers who need better CRM adoption from their team
Anyone struggling with pipeline visibility, reporting, or forecasting
Teams who want to close more deals without extra sales headcount
More Related Content
Similar to Distributed Consensus: Making Impossible Possible (20)
Shared on 5th Dec at SGInnovate with Swirlds Mance Harmon, Jordan Fried and Edgar Seah.
Hashgraph consensus, demo apps in Swirlds Java SDK, babble (unofficial golang implementation of Hashgraph) and their implications for distributed ledger technology.
In this slide deck, we go exploring the database landscape today and the common lego blocks that are used to build these different falvours of databses. We will dive through internals of a database, explore some choices and towards the end also explore some real world database architectures in view of the concepts (legos) we explored earlier.
The document discusses different methods for achieving consensus in blockchain systems. The primary methods are:
1. Practical Byzantine Fault Tolerance (PBFT) algorithm which allows nodes to agree on the valid information to store despite some nodes producing faulty results.
2. Proof-of-Work (PoW) algorithms like Bitcoin use computational power to solve cryptographic puzzles to add blocks and secure the network.
3. Proof-of-Stake (PoS) algorithms assign weight to nodes based on their stake in the network and select block producers probabilistically.
4. Delegated Proof-of-Stake (DPoS) algorithms allow token holders to elect block producers to validate on their
Crossing the Boundaries: Development Strategies for (P)SoCsAndreas Koschak
?
Not many years ago, FPGAs designed to be used in quantities contained a number of logic cells that were easy to fill using pure RTL or even schematic design tools. Now the boundaries between hardware and software have started to blur. With the advent of large scale FPGAs, structured ASICs and programmable SoCs, the massively increased complexity requires higher level design tools and better controlled development strategies, such as the ones used in ASIC design. Other approaches can be taken from the software development world. This talk highlights some strategies that allow designers to increase the quality of their designs without high costs and still be technology neutral and flexible during the course of the project.
This document provides an overview of consensus models for distributed systems, including both "fast" and "slow" consensus. For slow consensus, it describes proof-of-work protocols like Bitcoin which achieve eventual consistency through mining, and proof-of-stake protocols which select validators randomly based on their stake. For fast consensus, it outlines private and federated models with a known set of validators, as well as delegated proof-of-stake and cryptographic sortition approaches. The document serves as a quick introduction to different consensus algorithms and their tradeoffs.
Towards a low carbon proof-of-work blockchainIJNSA Journal
?
Proof of Work (PoW) blockchains burn a lot of energy. Proof-of-work algorithms are expensive by design and often only serve to compute blockchains. In some sense, carbon-based and non-carbon based regional electric power is fungible. So the total carbon and non-carbon electric power mix plays a role. Thus, generally PoW algorithms have large CO2 footprints solely for computing blockchains. A proof of technology is described towards replacing hashcash or other PoW methods with a lottery and proof-of-VM (PoVM) emulation. PoVM emulation is a form of PoW where an autonomous blockchain miner gets a lottery ticket in exchange for providing a VM (virtual Machine) for a specified period. These VMs get their jobs from a job queue. Managing and ensuring, by concensus, that autonomous PoVMs are properly configured and running as expected gives several gaps for a complete practical system. These gaps are discussed. Our system is similar to a number of other blockchain systems. We briefly survey these systems. This paper along with our proof of technology was done as a senior design project.
This document discusses various consensus algorithms used in blockchain networks. It describes Proof of Work (PoW), Proof of Stake (PoS), Byzantine Fault Tolerance (BFT), Proof of Authority (PoA), and Proof of Elapsed Time (PoET). It explains how each algorithm establishes consensus in the network and highlights advantages and disadvantages of each approach. Key aspects covered include how mining works in PoW, how validators are selected in PoS, using identities as stakes in PoA, and PoET's use of trusted hardware to provide a random leader selection.
Building on quicksand microservices indicthreadsIndicThreads
?
The document discusses the evolution of distributed systems from single machines to replicated databases and services. It explains how eventual consistency allows for higher availability but reduces correctness by allowing stale data reads. The key is that different applications have different consistency needs based on their risk tolerance. Rather than strict consistency, eventual consistency with apologies is often sufficient and enables more flexible tradeoffs between correctness and availability for increased business value.
1. The document discusses the evolution of energy-free consensus mechanisms for blockchain, from Peercoin's proof-of-stake consensus to SPOS consensus with constant block minting.
2. It describes how Peercoin was the first to introduce proof-of-stake consensus without energy consumption, separating the energy component from consensus. However, criticisms of proof-of-stake include nothing-at-stake and stake grinding attacks.
3. More recently, there is a shift toward supernode proof-of-stake (SPOS) consensus with constant block minting intervals and other improvements to address scaling and decentralization.
Blockchain technology is a type of distributed database that achieves consensus in an open network without a central authority. However, blockchain may not always be needed, as other distributed database solutions can often achieve the same goals more efficiently. The unique property of blockchain is enabling consensus in a permissionless network, but for permissioned networks a traditional distributed database may suffice. While blockchain technology has potential benefits, its applications are currently limited to scenarios where no trusted third party is available. Other existing distributed database technologies can often meet use case needs without blockchain's limitations.
This document discusses the CAP theorem in depth. It begins by explaining the CAP theorem - that a distributed system can only guarantee two of consistency, availability, and partition tolerance. It then discusses how the CAP theorem has impacted modern distributed databases and NoSQL systems. Several sections provide different perspectives on CAP and discuss consistency-availability tradeoffs in system design. The document concludes by discussing how some systems overcome CAP limitations through techniques like consistent replication.
This document summarizes a guest lecture at UNSW about contemporary software challenges and solutions. It discusses how technology can provide a competitive advantage if developed properly. It presents case studies of legacy systems that were difficult to change and scale, as well as examples of systems that used newer architectures like microservices. The lecture promotes approaches like test-driven development, REST, and self-organizing teams to build independent, scalable services.
Blockchain is a distributed ledger technology that allows for the safe distribution of a ledger across multiple nodes. It works by having each transaction digitally signed and added in a "block" along with a proof of work. This prevents double spending and allows nodes to reach consensus on the transaction history without a centralized authority. Smart contracts enable decentralized applications to run transactions automatically according to the program. However, first generation blockchains face challenges around centralization, scalability, and smart contract quality. New solutions aim to address these through alternative consensus methods, off-chain transactions, and designed smart contract languages.
This presentation overviews basic principles of high availability architectures and presents how to deploy in high availability FIWARE data management services.
Cryptomania! The Byzantine Generals Leave Their GardenDallas Kennedy
?
May 2019 ¡ñ Last part of a survey of distributed consensus, proof of work versus proof of stake, the Byzantine Generals Problem, and steps beyond block chains towards more comprehensive network solutions
For further details contact:
N.RAJASEKARAN B.E M.S 9841091117,9840103301.
IMPULSE TECHNOLOGIES,
Old No 251, New No 304,
2nd Floor,
Arcot road ,
Vadapalani ,
Chennai-26.
Video and slides synchronized, mp3 and slide download available at URL http://bit.ly/2BhEnpC.
Nathan Sobo talks about a new library called Tachyon that draws from the latest CRDT research to enable real-time collaborative text editing in a fully distributed setting. Filmed at qconsf.com.
Nathan Sobo is a founding member of the Atom Editor team at GitHub.
Convert EML files to PST on Mac operating systemRachel Walker
?
Mailvita EML to PST Converter for Mac is a useful program for Mac users, it can easily change several EML files into Outlook PST files with all attachments. This tool works with a lot of email programs, like Windows Live Mail, Thunderbird, and others. With its simple GUI, it's easy for both technical and non-technical people to convert files. Visit the official website to learn more about this program.
visit here: https://www.mailvita.com/eml-to-pst-converter-for-mac/
Struggling to get real value from HubSpot Sales Hub? Learn 5 mighty methods to close more deals without more leads or headcount (even on Starter subscriptions)!
These slides accompanied a webinar run by Hampshire's HubSpot User Group (HUG) on 2nd April, 2025.
HubSpot subscribers can watch the recording here: https://events.hubspot.com/events/details/hubspot-hampshire-presents-5-ways-to-close-more-deals-from-your-existing-sales-pipeline/
ABOUT THE EVENT:
Unlock hidden revenue in your CRM with our practical HubSpot tactics
Are you struggling to get real value from your HubSpot Sales Hub?
If your HubSpot feels like more of an admin burden than a revenue enabler, you¡¯re not alone. Many sales leaders find that their team isn't updating records consistently, pipeline visibility is poor, and reporting doesn¡¯t deliver the insights they need to drive strategy.
The good news? You don¡¯t need to upgrade your HubSpot subscription to sort these issues.
Join us for this webinar to learn 5 mighty tactics that will help you streamline your sales process, improve pipeline visibility, and extract more revenue from your existing pipeline, without spending more on marketing or hiring extra sales reps.
What You¡¯ll Learn
? Customising Records ¨C Increase sales momentum with more useful CRM data for your salespeople
? Pipeline Rules ¨C Improve deal stage consistency and data accuracy for improved prioritisation and forecasting
? Team Permissions & Defaults ¨C Control access and streamline processes. Spend more time selling, less on admin
? Pipeline View Customisation ¨C Get clearer sales insights, faster, to deal with revenue leaks
? Simple Sales Reports ¨C Build actionable dashboards to drive strategy with data
? Bonus: Successful Sales Hub users will share their experiences and the revenue impact it has delivered for them.
Who is this webinar for?
Sales leaders using HubSpot Sales Hub Starter, or those new to HubSpot
Sales managers who need better CRM adoption from their team
Anyone struggling with pipeline visibility, reporting, or forecasting
Teams who want to close more deals without extra sales headcount
All-Data, Any-AI Integration: FME & Amazon Bedrock in the Real-WorldSafe Software
?
Join us for an exclusive webinar featuring special guest speakers from Amazon, Amberside Energy, and Avineon-Tensing as we explore the power of Amazon Bedrock and FME in AI-driven geospatial workflows.
Discover how Avineon-Tensing is using AWS Bedrock to support Amberside Energy in automating image classification and streamlining site reporting. By integrating Bedrock¡¯s generative AI capabilities with FME, image processing and categorization become faster and more efficient, ensuring accurate and organized filing of site imagery. Learn how this approach reduces manual effort, standardizes reporting, and leverages AWS¡¯s secure AI tooling to optimize their workflows.
If you¡¯re looking to enhance geospatial workflows with AI, automate image processing, or simply explore the potential of FME and Bedrock, this webinar is for you!
Automating Behavior-Driven Development: Boosting Productivity with Template-D...DOCOMO Innovations, Inc.
?
https://bit.ly/4ciP3mZ
We have successfully established our development process for Drupal custom modules, including automated testing using PHPUnit, all managed through our own GitLab CI/CD pipeline. This setup mirrors the automated testing process used by Drupal.org, which was our goal to emulate.
Building on this success, we have taken the next step by learning Behavior-Driven Development (BDD) using Behat. This approach allows us to automate the execution of acceptance tests for our Cloud Orchestration modules. Our upcoming session will provide a thorough explanation of the practical application of Behat, demonstrating how to effectively use this tool to write and execute comprehensive test scenarios.
In this session, we will cover:
1. Introduction to Behavior-Driven Development (BDD):
- Understanding the principles of BDD and its advantages in the software development lifecycle.
- How BDD aligns with agile methodologies and enhances collaboration between developers, testers, and stakeholders.
2. Overview of Behat:
- Introduction to Behat as a testing framework for BDD.
- Key features of Behat and its integration with other tools and platforms.
3. Automating Acceptance Tests:
- Running Behat tests in our GitLab CI/CD pipeline.
- Techniques for ensuring that automated tests are reliable and maintainable.
- Strategies for continuous improvement and scaling the test suite.
4. Template-Based Test Scenario Reusability:
- How to create reusable test scenario templates in Behat.
- Methods for parameterizing test scenarios to enhance reusability and reduce redundancy.
- Practical examples of how to implement and manage these templates within your testing framework.
By the end of the session, attendees will have a comprehensive understanding of how to leverage Behat for BDD in their own projects, particularly within the context of Drupal and cloud orchestration. They will gain practical knowledge on writing and running automated acceptance tests, ultimately enhancing the quality and efficiency of their development processes.
Migrating to the Isolated worker process in Azure Functions .pptxCallon Campbell
?
"Migrating to the Isolated worker process in Azure Functions" provides an overview of serverless computing and different hosting models, with a focus on migrating to the isolated worker process in Azure Functions. The presentation covers the benefits of the isolated worker process, including fewer conflicts, full control of the process, and dependency injection. It also includes demos and practical steps for migrating existing .NET applications to the isolated worker process. The presentation aims to help developers modernize their applications and prepare for future versions of .NET.
New from BookNet Canada for 2025: BNC SalesData and BNC LibraryDataBookNet Canada
?
Lily Dwyer updates us on what 2024 brought for SalesData and LibraryData. Learn about new features, such as the Age Range data and Page Count data filters, improvements to our internal Admin tool, and what¡¯s in store for 2025.
Link to video and transcript: https://bnctechforum.ca/sessions/new-from-booknet-canada-for-2025-bnc-salesdata-and-bnc-librarydata/
Read more:
- https://www.booknetcanada.ca/salesdata
- https://booknetcanada.atlassian.net/wiki/spaces/UserDocs/pages/53707258/SalesData+Help+Manual
Presented by BookNet Canada on April 8, 2025 with support from the Department of Canadian Heritage.
AuthZEN The OpenID Connect of Authorization - Gartner IAM EMEA 2025David Brossard
?
Today, the authorization world is fractured - each vendor supports its own APIs & protocols. But this is about to change: OpenID AuthZEN was created in late 2023 to establish much-needed modern authorization standards. As of late 2024, AuthZEN has a stable Implementers Draft, and is expected to reach Final Specification in 2025.
With AuthZEN, IAM teams can confidently externalize and standardize authorization across their application estate without being locked in to a proprietary API.
This session will describe the state of modern authorization, review the AuthZEN API, and demo our 15 interoperable implementations.
Getting the Best of TrueDEM ¨C April News & Updatespanagenda
?
Webinar Recording: https://www.panagenda.com/webinars/getting-the-best-of-truedem-april-news-updates/
Boost your Microsoft 365 experience with OfficeExpert TrueDEM! Join the April webinar for a deep dive into recent and upcoming features and functionalities of OfficeExpert TrueDEM. We¡¯ll showcase what¡¯s new and use practical application examples and real-life scenarios, to demonstrate how to leverage TrueDEM to optimize your M365 environment, troubleshoot issues, improve user satisfaction and productivity, and ultimately make data-driven business decisions.
These sessions will be led by our team of product management and consultants, who interact with customers daily and possess in-depth product knowledge, providing valuable insights and expert guidance.
What you¡¯ll take away
- Updates & info about the latest and upcoming features of TrueDEM
- Practical and realistic applications & examples for troubelshooting or improving your Microsoft Teams & M365 environment
- Use cases and examples of how our customers use TrueDEM
Agentic AI is the future ¡ª but building intelligent systems where AI agents collaborate effectively? That¡¯s where CrewAI steps in.
In this presentation, we introduce CrewAI, an open-source framework that brings role-based architecture and real-time communication to AI agents. From equity research bots to agentic DevOps pipelines, discover how CrewAI enables coordinated, goal-driven execution across multiple agents.
Learn about CrewAI¡¯s building blocks, its unique features like Agent-to-Agent Protocols (A2AP), and how Yodaplus is leveraging it in real-world BFSI and supply chain solutions using GenAI tools like GenRPT and DataClip.
Whether you¡¯re exploring agent ecosystems or hands-on implementation, this deck is your quick guide to the emerging world of Agentic AI frameworks.
Mastering Azure Durable Functions - Building Resilient and Scalable WorkflowsCallon Campbell
?
The presentation aims to provide a comprehensive understanding of how Azure Durable Functions can be used to build resilient and scalable workflows in serverless applications. It includes detailed explanations, application patterns, components, and constraints of Durable Functions, along with performance benchmarks and new storage providers.
Next.js Development: The Ultimate Solution for High-Performance Web Appsrwinfotech31
?
The key benefits of Next.js development, including blazing-fast performance, enhanced SEO, seamless API and database integration, scalability, and expert support. It showcases how Next.js leverages Server-Side Rendering (SSR), Static Site Generation (SSG), and other advanced technologies to optimize web applications. RW Infotech offers custom solutions, migration services, and 24/7 expert support for seamless Next.js operations. Explore more :- https://www.rwit.io/technologies/next-js
Recruiting Tech: A Look at Why AI is Actually OGMatt Charney
?
A lot of recruiting technology vendors out there are talking about how they're offering the first ever (insert AI use case here), but turns out, everything they're selling as innovative or cutting edge has been around since Yahoo! and MySpace were category killers. Here's the receipts.
Benefits of Moving Ellucian Banner to Oracle CloudAstuteBusiness
?
Discover the advantages of migrating Ellucian Banner to Oracle Cloud Infrastructure, including scalability, security, and cost efficiency for educational institutions.
En esta charla compartiremos la experiencia del equipo de Bitnami en la mejora de la seguridad de nuestros Helm Charts y Contenedores utilizando Kubescape como herramienta principal de validaci¨®n. Exploraremos el proceso completo, desde la identificaci¨®n de necesidades hasta la implementaci¨®n de validaciones automatizadas, incluyendo la creaci¨®n de herramientas para la comunidad.
Compartiremos nuestra experiencia en la implementaci¨®n de mejoras de seguridad en Charts y Contenedores, bas¨¢ndonos en las mejores pr¨¢cticas del mercado y utilizando Kubescape como herramienta de validaci¨®n. Explicaremos c¨®mo automatizamos estas validaciones integr¨¢ndolas en nuestro ciclo de vida de desarrollo, mejorando significativamente la seguridad de nuestros productos mientras manten¨ªamos la eficiencia operativa.
Durante la charla, los asistentes aprender¨¢n c¨®mo implementar m¨¢s de 60 validaciones de seguridad cr¨ªticas, incluyendo la configuraci¨®n segura de contenedores en modo no privilegiado, la aplicaci¨®n de buenas pr¨¢cticas en recursos de Kubernetes, y c¨®mo garantizar la compatibilidad con plataformas como OpenShift. Adem¨¢s, demostraremos una herramienta de self-assessment que desarrollamos para que cualquier usuario pueda evaluar y mejorar la seguridad de sus propios Charts bas¨¢ndose en esta experiencia.
3. What is Consensus?
¡°The process by which we reach agreement over
system state between unreliable machines connected
by asynchronous networks¡±
4. Why?
? Distributed locking
? Banking
? Safety critical systems
? Distributed scheduling and coordination
Anything which requires guaranteed agreement
5. A walk through history
We are going to take a journey through the
developments in distributed consensus, spanning 3
decades.
We are going to search for answers to questions like:
? how do we reach consensus?
? what is the best method for reaching consensus?
? can we even reach consensus?
? what¡¯s next in the ?eld?
6. FLP Result
off to a slippery start
Impossibility of distributed
consensus with one faulty process
Michael Fischer, Nancy Lynch
and Michael Paterson
ACM SIGACT-SIGMOD
Symposium on Principles of
Database Systems
1983
7. FLP
We cannot guarantee agreement in an asynchronous
system where even one host might fail.
Why?
We cannot reliably detect failures. We cannot know
for sure the difference between a slow host/network
and a failed host
NB: We can still guarantee safety, the issue limited to
guaranteeing liveness.
8. Solution to FLP
In practice:
We accept that sometimes the system will not be
available. We mitigate this using timers and backoffs.
In theory:
We make weaker assumptions about the synchrony
of the system e.g. messages arrive within a year.
10. Paxos
The original consensus algorithm for reaching
agreement on a single value.
? two phase process: promise and commit
? majority agreement
? monotonically increasing numbers
29. 1 2
3
P: 22
C: 22,
P: 13
C: 13,
P: 22
C: 13,
Phase 2
B
B
A
Commit (22, ) ?B
B
30. 1 2
3
P: 22
C: 22,
P: 13
C: 13,
P: 22
C: 22,
Phase 2
B
B
OK
B
NO
31. Paxos Summary
Clients must wait two round trips (2 RTT) to the
majority of nodes. Sometimes longer.
The system will continue as long as a majority of
nodes are up
32. Multi-Paxos
Lamport¡¯s leader-driven consensus algorithm
Paxos Made Moderately Complex
Robbert van Renesse and Deniz
Altinbuken
ACM Computing Surveys
April 2015
Not the original, but highly recommended
33. Multi-Paxos
Lamport¡¯s insight:
Phase 1 is not speci?c to the request so can be done
before the request arrives and can be reused.
Implication:
Bob now only has to wait one RTT
41. Paxos Made Live
How google uses Paxos
Paxos Made Live - An Engineering
Perspective
Tushar Chandra, Robert Griesemer
and Joshua Redstone
ACM Symposium on Principles of
Distributed Computing
2007
42. Paxos Made Live
Paxos made live documents the challenges in
constructing Chubby, a distributed coordination
service, built using Multi-Paxos and SMR.
43. Isn¡¯t this a solved problem?
¡°There are signi?cant gaps between the description
of the Paxos algorithm and the needs of a real-world
system.
In order to build a real-world system, an expert needs
to use numerous ideas scattered in the literature and
make several relatively small protocol extensions.
The cumulative effort will be substantial and the ?nal
system will be based on an unproven protocol.¡±
44. Challenges
? Handling disk failure and corruption
? Dealing with limited storage capacity
? Effectively handling read-only requests
? Dynamic membership & recon?guration
? Supporting transactions
? Verifying safety of the implementation
45. Fast Paxos
Like Multi-Paxos, but faster
Fast Paxos
Leslie Lamport
Microsoft Research Tech Report
MSR-TR-2005-112
46. Fast Paxos
Paxos: Any node can commit a value in 2 RTTs
Multi-Paxos: The leader node can commit a value in
1 RTT
But, what about any node committing a value in 1
RTT?
47. Fast Paxos
We can bypass the leader node for many operations,
so any node can commit a value in 1 RTT.
However, we must either:
? reduce the number of failures we guarantee to
tolerance, or
? increase the size of the quorum, or
? a combination of both
48. Egalitarian Paxos
Don¡¯t restrict yourself unnecessarily
There Is More Consensus in
Egalitarian Parliaments
Iulian Moraru, David G. Andersen,
Michael Kaminsky
SOSP 2013
also see Generalized Consensus and Paxos
49. Egalitarian Paxos
The basis of SMR is that every replica of an
application receives the same commands in the
same order.
However, sometimes the ordering can be relaxed¡
52. Egalitarian Paxos
Allow requests to be out-of-order if they are
commutative.
Con?ict becomes much less common.
Works well in combination with Fast Paxos.
55. Raft Consensus
Paxos made understandable
In Search of an Understandable
Consensus Algorithm
Diego Ongaro and John
Ousterhout
USENIX Annual Technical
Conference
2014
56. Raft
Raft has taken the wider community by storm. Due to
its understandable description.
It¡¯s another variant of SMR with Multi-Paxos.
Key features:
? Really strong leadership - all other nodes are
passive
? Dynamic membership and log compaction
59. Ios
The issue with leader-driven algorithms like Multi-
Paxos, Raft and VRR is that throughput is limited to
one node.
Ios allows a leader to safely and dynamically
delegate their responsibilities to other nodes in the
system.
61. Hydra
Distributed consensus for systems which span
multiple datacenters.
We use Ios for replication within the datacenter and a
Egalitarian Paxos like protocol for across datacenters.
The system has a clear leader but most requests
simply bypass the leader.
65. The road we travelled
? 2 impossibility results: CAP & FLP
? 1 replication method: State machine Replication
? 6 consensus algorithms: Paxos, Multi-Paxos, Fast
Paxos, Egalitarian Paxos, Viewstamped Replication
Revisited & Raft
? 2 future algorithms: Ios & Hydra
66. How strong is the
leadership?
Strong
Leadership Leaderless
Paxos
Egalitarian
Paxos
Raft VRR Ios Hydra
Multi-Paxos Fast Paxos
Leader with
Delegation
Leader only
when needed
Leader driven
67. Who is the winner?
Depends on the award:
? Best for minimum latency: VRR
? Easier to understand: Raft
? Best for WANs (con?icts rare): Egalitarian Paxos
? Best for WANs (con?icts common): Fast Paxos
68. Future
1. More algorithms offering a compromise between
strong leadership and leaderless
2. More understandable consensus algorithms
3. Achieving consensus is getting cheaper, even in
challenging settings
4. Deployment with micro-services and unikernels
5. Self-scaling replication - adapting resources to
maintain resilience level.
69. Stops we drove passed
We have seen one path through history, but many
more exist.
? Alternative replication techniques e.g. chain
replication and primary backup replication
? Alternative failure models e.g. nodes acting
maliciously
? Alternative domains e.g. sensor networks, mobile
networks, between cores
70. Summary
Do not be discouraged by
impossibility results and dense
abstract academic papers.
Consensus is useful and achievable.
Find the right algorithm for your
speci?c domain.
heidi.howard@cl.cam.ac.uk
@heidiann360