Ever wondered how honeybees have come to be some of the world's most efficient architects? Learn how we can all use mother nature's expertise to better architect our software solutions to be more reactive, responsive and resilient through reactive architecture frameworks.
W-Jax - Reacting to the Future of Application ArchitectureGrace Jansen
Ever wondered how honeybees have come to be some of the world's most efficient architects? Learn how we can all use mother nature's expertise to better architect our software solutions to be more reactive, responsive and resilient through reactive architecture frameworks.
TDC - Reacting to the future of application architectureGrace Jansen
Ever wondered how honeybees have come to be some of the world's most efficient architects? Learn how we can all use mother nature's expertise to better architect our software solutions to be more reactive, responsive and resilient through reactive architecture frameworks.
CodeCamp Bucharest - Reacting to the future of application architectureGrace Jansen
Ever wondered how honeybees have come to be some of the world's most efficient architects? Learn how we can all use mother nature's expertise to better architect our software solutions to be more reactive, responsive and resilient through reactive architecture frameworks.
DevoxxBE - Reacting to the future of application architectureGrace Jansen
Ever wondered how honeybees have come to be some of the world's most efficient architects? Learn how we can all use mother nature's expertise to better architect our software solutions to be more reactive, responsive and resilient through reactive architecture frameworks.
Ever wondered how honeybees have come to be some of the world's most efficient architects? Learn how we can all use mother nature's expertise to better architect our software solutions to be more reactive, responsive and resilient through reactive architecture frameworks.
CodeMotion Milan - Reacting to the future of application architectureGrace Jansen
Ever wondered how honeybees have come to be some of the world's most efficient architects? Learn how we can all use mother nature's expertise to better architect our software solutions to be more reactive, responsive and resilient through reactive architecture frameworks.
CDC 2019 - Reacting to the future of application architectureGrace Jansen
Ever wondered how honeybees have come to be some of the world's most efficient architects? Learn how we can all use mother nature's expertise to better architect our software solutions to be more reactive, responsive and resilient through reactive architecture frameworks.
DevNexus 2019 - Reacting to the future of application architecture (Full Conf...Grace Jansen
Ever wondered how honeybees have come to be some of the world's most efficient architects? Learn how we can all use mother nature's expertise to better architect our software solutions to be more reactive, responsive and resilient through reactive architecture frameworks. In this longer session, we take a deeper dive into some of the tools used in reactive architecture that enable us to achieve these reactive behaviors.
W-Jax - Reacting to the Future of Application ArchitectureGrace Jansen
Ever wondered how honeybees have come to be some of the world's most efficient architects? Learn how we can all use mother nature's expertise to better architect our software solutions to be more reactive, responsive and resilient through reactive architecture frameworks.
TDC - Reacting to the future of application architectureGrace Jansen
Ever wondered how honeybees have come to be some of the world's most efficient architects? Learn how we can all use mother nature's expertise to better architect our software solutions to be more reactive, responsive and resilient through reactive architecture frameworks.
CodeCamp Bucharest - Reacting to the future of application architectureGrace Jansen
Ever wondered how honeybees have come to be some of the world's most efficient architects? Learn how we can all use mother nature's expertise to better architect our software solutions to be more reactive, responsive and resilient through reactive architecture frameworks.
DevoxxBE - Reacting to the future of application architectureGrace Jansen
Ever wondered how honeybees have come to be some of the world's most efficient architects? Learn how we can all use mother nature's expertise to better architect our software solutions to be more reactive, responsive and resilient through reactive architecture frameworks.
Ever wondered how honeybees have come to be some of the world's most efficient architects? Learn how we can all use mother nature's expertise to better architect our software solutions to be more reactive, responsive and resilient through reactive architecture frameworks.
CodeMotion Milan - Reacting to the future of application architectureGrace Jansen
Ever wondered how honeybees have come to be some of the world's most efficient architects? Learn how we can all use mother nature's expertise to better architect our software solutions to be more reactive, responsive and resilient through reactive architecture frameworks.
CDC 2019 - Reacting to the future of application architectureGrace Jansen
Ever wondered how honeybees have come to be some of the world's most efficient architects? Learn how we can all use mother nature's expertise to better architect our software solutions to be more reactive, responsive and resilient through reactive architecture frameworks.
DevNexus 2019 - Reacting to the future of application architecture (Full Conf...Grace Jansen
Ever wondered how honeybees have come to be some of the world's most efficient architects? Learn how we can all use mother nature's expertise to better architect our software solutions to be more reactive, responsive and resilient through reactive architecture frameworks. In this longer session, we take a deeper dive into some of the tools used in reactive architecture that enable us to achieve these reactive behaviors.
Devoxx UK - Reacting to the future of application architectureGrace Jansen
Ever wondered how honeybees have come to be some of the world's most efficient architects? Learn how we can all use mother nature's expertise to better architect our software solutions to be more reactive, responsive and resilient through reactive architecture frameworks.
CodeCamp Cluj Napoca - Reacting to the future of application architectureGrace Jansen
Ever wondered how honeybees have come to be some of the world's most efficient architects? Learn how we can all use mother nature's expertise to better architect our software solutions to be more reactive, responsive and resilient through reactive architecture frameworks.
JVMCon - Reacting to the future of application architectureGrace Jansen
Ever wondered how honeybees have come to be some of the world's most efficient architects? Learn how we can all use mother nature's expertise to better architect our software solutions to be more reactive, responsive and resilient through reactive architecture frameworks.
AccentoDev - Reacting to the future of application architectureGrace Jansen
Ever wondered how honeybees have come to be some of the world's most efficient architects? Learn how we can all use mother nature's expertise to better architect our software solutions to be more reactive, responsive and resilient through reactive architecture frameworks.
JFokus 2019 - Reacting to the future of application architectureGrace Jansen
Ever wondered how honeybees have come to be some of the world’s most efficient architects? Learn how we can all use mother nature’s expertise to better architect our software solutions to be more reactive, responsive and resilient through reactive architecture frameworks.
Victor Gamov from Confluent presented 'Streams must fFlow: Developing fault tolerant stream processing application with Kafka Streams and Kubernetes’ at Montreal's very first Cloud Native Day, which took place on June 11, 2019.
For Java developers, the Just-In-Time (JIT) compiler is key to improved performance. However, in a container world, the performance gains are often negated due to CPU and memory consumption constraints. To help solve this issue, the Eclipse OpenJ9 JVM provides JITServer technology, which separates the JIT compiler from the application. JITServer allows the user to employ much smaller containers enabling a higher density of applications, resulting in cost savings for end-users and/or cloud providers. Because the CPU and memory surges due to JIT compilation are eliminated, the user has a much easier task of provisioning resources for his/her application. Additional advantages include: faster ramp-up time, better control over resources devoted to compilation, increased reliability (JIT compiler bugs no longer crash the application) and amortization of compilation costs across many application instances. We will dig into JITServer technology, showing the challenges of implementation, detailing its strengths and weaknesses and illustrating its performance characteristics. For the cloud audience we will show how it can be deployed in containers, demonstrate its advantages compared to a traditional JIT compilation technique and offer practical recommendations about when to use this technology.
Enabling applications to really thrive (and not just survive) in cloud environments can be challenging. The original 12 factor app methodology helped to lay out some of the key characteristics needed for cloud-native applications... but... as our cloud infrastructure and tooling has progressed, so too have these factors.
In this session we'll dive into the extended and updated 15 factors needed to build cloud native applications that are able to thrive in this environment, and we'll take a look at open source technologies and tools that can help us achieve this.
SwissJUG_Bringing the cloud back down to earth.pptxGrace Jansen
How can we effectively develop for the cloud, when we as developers are coding back down on earth? This is where effective cloud-native developer tools can enable us to either be transported into the cloud or alternatively, to bring the cloud back down to earth. But what tools should we be using for this? In this session, we’ll explore some of the useful OSS tools and technologies that can used by developers to effectively develop, design and test cloud-native Java applications.
Our cloud-native environments are more complex than ever before! So how can we ensure that the applications we’re deploying to them are behaving as we intended them to? This is where effective observability is crucial. It enables us to monitor our applications in real-time and analyse and diagnose their behaviour in the cloud. However, until recently, we were lacking the standardization to ensure our observability solutions were applicable across different platforms and technologies. In this session, we’ll delve into what effective observability really means, exploring open source technologies and specifications, like OpenTelemetry, that can help us to achieve this while ensuring our applications remain flexible and portable.
PittsburgJUG_Cloud-Native Dev Tools: Bringing the cloud back to earthGrace Jansen
How can we effectively develop for the cloud, when we as developers are coding back down on earth? This is where effective cloud-native developer tools can enable us to either be transported into the cloud or alternatively, to bring the cloud back down to earth. But what tools should we be using for this? In this session, we’ll explore some of the useful OSS tools and technologies that can used by developers to effectively develop, design and test cloud-native Java applications.
For Java developers, the Just-In-Time (JIT) compiler is key to improved performance. However, in a container world, the performance gains are often negated due to CPU and memory consumption constraints. To help solve this issue, the Eclipse OpenJ9 JVM provides JITServer technology, which separates the JIT compiler from the application.
JITServer allows the user to employ much smaller containers enabling a higher density of applications, resulting in cost savings for end-users and/or cloud providers. Because the CPU and memory surges due to JIT compilation are eliminated, the user has a much easier task of provisioning resources for his/her application. Additional advantages include: faster ramp-up time, better control over resources devoted to compilation, increased reliability (JIT compiler bugs no longer crash the application) and amortization of compilation costs across many application instances.
We will dig into JITServer technology, showing the challenges of implementation, detailing its strengths and weaknesses and illustrating its performance characteristics. For the cloud audience we will show how it can be deployed in containers, demonstrate its advantages compared to a traditional JIT compilation technique and offer practical recommendations about when to use this technology.
Imagine a Java application that can start up in milliseconds, without compromising on throughput, memory, development-production parity or Java language features. Sounds out of this world, right? Well, through the use of technologies like CRIU support in Eclipse OpenJ9 and Liberty’s InstantOn, we’ve taken one giant leap forwards for innovation within Java, offering exactly this! Join this session to learn more about these innovations and how you could utilise OSS technologies to deliver highly scalable and performant applications that are optimized for today’s cloud-native environments.
Jfokus_Bringing the cloud back down to earth.pptxGrace Jansen
How can we effectively develop for the cloud, when we as developers are coding back down on earth? This is where effective cloud-native developer tools can enable us to either be transported into the cloud or alternatively, to bring the cloud back down to earth. But what tools should we be using for this? In this session, we’ll explore some of the useful OSS tools and technologies that can used by developers to effectively develop, design and test cloud-native Java applications.
FooConf23_Bringing the cloud back down to earth.pptxGrace Jansen
How can we effectively develop for the cloud, when we as developers are coding back down on earth? This is where effective cloud-native developer tools can enable us to either be transported into the cloud or alternatively, to bring the cloud back down to earth. But what tools should we be using for this? In this session, we’ll explore some of the useful OSS tools and technologies that can used by developers to effectively develop, design and test cloud-native Java applications.
How does one choose to architect a system that has a Microservice / REST API endpoints? There are many solutions out there. Some are better than others. Should state be held in a server side component, or externally? Generally we are told this is not a good practice for a Cloud Native system, when the 12-factor guidelines seem to be all about stateless containers, but is it? It’s unclear and this confusion may lead to poor technology stack choices that are impossible or extremely hard to change later on as your system evolves in terms of demand and performance.
While stateless systems are easier to work with, the reality is that we live in a stateful world, so we have to handle the state of data accordingly to ensure data integrity beyond securing it.
We will examine and demonstrate the fundamentals of a Cloud Native system with Stateful Microservices that’s built with Open Liberty and MicroProfile.
UtrechtJUG_Exploring statefulmicroservices in a cloud-native world.pptxGrace Jansen
How does one choose to architect a system that has a Microservice / REST API endpoints? There are many solutions out there. Some are better than others. Should state be held in a server side component, or externally? Generally we are told this is not a good practice for a Cloud Native system, when the 12-factor guidelines seem to be all about stateless containers, but is it? It’s unclear and this confusion may lead to poor technology stack choices that are impossible or extremely hard to change later on as your system evolves in terms of demand and performance.
While stateless systems are easier to work with, the reality is that we live in a stateful world, so we have to handle the state of data accordingly to ensure data integrity beyond securing it.
We will examine and demonstrate the fundamentals of a Cloud Native system with Stateful Microservices that’s built with Open Liberty and MicroProfile.
JCON_Adressing the transaction challenge in a cloud-native world.pptxGrace Jansen
With microservices comes great benefits but also great challenges! One such challenge is data consistency and integrity. Traditionally, tightly coupled transactions were used to ensure strong consistency and isolation. However, this results in strong coupling between services due to data locking and decreasing concurrency, both of which are unsuitable for microservices. So, how do we provide consistency guarantees for flows that span long periods of time in cloud-native applications? We'll address this challenge by investigating the Saga pattern for distributed transactions, the MicroProfile Long Running Action (LRA) specification and how these can be used to develop effective cloud-native Java microservices.
JavaZone_Addressing the transaction challenge in a cloud-native world.pptxGrace Jansen
With microservices comes great benefits but also great challenges! One such challenge is data consistency and integrity. Traditionally, tightly coupled transactions were used to ensure strong consistency and isolation. However, this results in strong coupling between services due to data locking and decreasing concurrency, both of which are unsuitable for microservices. So, how do we provide consistency guarantees for flows that span long periods of time in cloud-native applications? We'll address this challenge by investigating the Saga pattern for distributed transactions, the MicroProfile Long Running Action (LRA) specification and how these can be used to develop effective cloud-native Java microservices.
JavaZone_Mother Nature vs Java – the security face off.pptxGrace Jansen
Mother Nature has had millennia to build up its defences to the many potential hazards and attacks it may face. So, given its wisdom and expertise on this subject, what can we as software developers learn from it and bring back to the evolution of our own application’s security? In this session we’ll explore where software and biology overlap when it comes to security and lessons we can learn from nature to improve our own application security.
Boost developer productivity with EE, MP and OL (Devoxx Ukraine 22).pptxGrace Jansen
As developers we strive to iteratively and rapidly develop our applications. However, development is often slowed by the process of setting up a new project to use the latest APIs, building the application, deploying to a local or container environment, and testing. In this session we will look at key pain points faced by cloud-native Java developers and present helpful APIs and tools so that as developer you can focus on what really matters - your code.
Devoxx UK - Reacting to the future of application architectureGrace Jansen
Ever wondered how honeybees have come to be some of the world's most efficient architects? Learn how we can all use mother nature's expertise to better architect our software solutions to be more reactive, responsive and resilient through reactive architecture frameworks.
CodeCamp Cluj Napoca - Reacting to the future of application architectureGrace Jansen
Ever wondered how honeybees have come to be some of the world's most efficient architects? Learn how we can all use mother nature's expertise to better architect our software solutions to be more reactive, responsive and resilient through reactive architecture frameworks.
JVMCon - Reacting to the future of application architectureGrace Jansen
Ever wondered how honeybees have come to be some of the world's most efficient architects? Learn how we can all use mother nature's expertise to better architect our software solutions to be more reactive, responsive and resilient through reactive architecture frameworks.
AccentoDev - Reacting to the future of application architectureGrace Jansen
Ever wondered how honeybees have come to be some of the world's most efficient architects? Learn how we can all use mother nature's expertise to better architect our software solutions to be more reactive, responsive and resilient through reactive architecture frameworks.
JFokus 2019 - Reacting to the future of application architectureGrace Jansen
Ever wondered how honeybees have come to be some of the world’s most efficient architects? Learn how we can all use mother nature’s expertise to better architect our software solutions to be more reactive, responsive and resilient through reactive architecture frameworks.
Victor Gamov from Confluent presented 'Streams must fFlow: Developing fault tolerant stream processing application with Kafka Streams and Kubernetes’ at Montreal's very first Cloud Native Day, which took place on June 11, 2019.
For Java developers, the Just-In-Time (JIT) compiler is key to improved performance. However, in a container world, the performance gains are often negated due to CPU and memory consumption constraints. To help solve this issue, the Eclipse OpenJ9 JVM provides JITServer technology, which separates the JIT compiler from the application. JITServer allows the user to employ much smaller containers enabling a higher density of applications, resulting in cost savings for end-users and/or cloud providers. Because the CPU and memory surges due to JIT compilation are eliminated, the user has a much easier task of provisioning resources for his/her application. Additional advantages include: faster ramp-up time, better control over resources devoted to compilation, increased reliability (JIT compiler bugs no longer crash the application) and amortization of compilation costs across many application instances. We will dig into JITServer technology, showing the challenges of implementation, detailing its strengths and weaknesses and illustrating its performance characteristics. For the cloud audience we will show how it can be deployed in containers, demonstrate its advantages compared to a traditional JIT compilation technique and offer practical recommendations about when to use this technology.
Enabling applications to really thrive (and not just survive) in cloud environments can be challenging. The original 12 factor app methodology helped to lay out some of the key characteristics needed for cloud-native applications... but... as our cloud infrastructure and tooling has progressed, so too have these factors.
In this session we'll dive into the extended and updated 15 factors needed to build cloud native applications that are able to thrive in this environment, and we'll take a look at open source technologies and tools that can help us achieve this.
SwissJUG_Bringing the cloud back down to earth.pptxGrace Jansen
How can we effectively develop for the cloud, when we as developers are coding back down on earth? This is where effective cloud-native developer tools can enable us to either be transported into the cloud or alternatively, to bring the cloud back down to earth. But what tools should we be using for this? In this session, we’ll explore some of the useful OSS tools and technologies that can used by developers to effectively develop, design and test cloud-native Java applications.
Our cloud-native environments are more complex than ever before! So how can we ensure that the applications we’re deploying to them are behaving as we intended them to? This is where effective observability is crucial. It enables us to monitor our applications in real-time and analyse and diagnose their behaviour in the cloud. However, until recently, we were lacking the standardization to ensure our observability solutions were applicable across different platforms and technologies. In this session, we’ll delve into what effective observability really means, exploring open source technologies and specifications, like OpenTelemetry, that can help us to achieve this while ensuring our applications remain flexible and portable.
PittsburgJUG_Cloud-Native Dev Tools: Bringing the cloud back to earthGrace Jansen
How can we effectively develop for the cloud, when we as developers are coding back down on earth? This is where effective cloud-native developer tools can enable us to either be transported into the cloud or alternatively, to bring the cloud back down to earth. But what tools should we be using for this? In this session, we’ll explore some of the useful OSS tools and technologies that can used by developers to effectively develop, design and test cloud-native Java applications.
For Java developers, the Just-In-Time (JIT) compiler is key to improved performance. However, in a container world, the performance gains are often negated due to CPU and memory consumption constraints. To help solve this issue, the Eclipse OpenJ9 JVM provides JITServer technology, which separates the JIT compiler from the application.
JITServer allows the user to employ much smaller containers enabling a higher density of applications, resulting in cost savings for end-users and/or cloud providers. Because the CPU and memory surges due to JIT compilation are eliminated, the user has a much easier task of provisioning resources for his/her application. Additional advantages include: faster ramp-up time, better control over resources devoted to compilation, increased reliability (JIT compiler bugs no longer crash the application) and amortization of compilation costs across many application instances.
We will dig into JITServer technology, showing the challenges of implementation, detailing its strengths and weaknesses and illustrating its performance characteristics. For the cloud audience we will show how it can be deployed in containers, demonstrate its advantages compared to a traditional JIT compilation technique and offer practical recommendations about when to use this technology.
Imagine a Java application that can start up in milliseconds, without compromising on throughput, memory, development-production parity or Java language features. Sounds out of this world, right? Well, through the use of technologies like CRIU support in Eclipse OpenJ9 and Liberty’s InstantOn, we’ve taken one giant leap forwards for innovation within Java, offering exactly this! Join this session to learn more about these innovations and how you could utilise OSS technologies to deliver highly scalable and performant applications that are optimized for today’s cloud-native environments.
Jfokus_Bringing the cloud back down to earth.pptxGrace Jansen
How can we effectively develop for the cloud, when we as developers are coding back down on earth? This is where effective cloud-native developer tools can enable us to either be transported into the cloud or alternatively, to bring the cloud back down to earth. But what tools should we be using for this? In this session, we’ll explore some of the useful OSS tools and technologies that can used by developers to effectively develop, design and test cloud-native Java applications.
FooConf23_Bringing the cloud back down to earth.pptxGrace Jansen
How can we effectively develop for the cloud, when we as developers are coding back down on earth? This is where effective cloud-native developer tools can enable us to either be transported into the cloud or alternatively, to bring the cloud back down to earth. But what tools should we be using for this? In this session, we’ll explore some of the useful OSS tools and technologies that can used by developers to effectively develop, design and test cloud-native Java applications.
How does one choose to architect a system that has a Microservice / REST API endpoints? There are many solutions out there. Some are better than others. Should state be held in a server side component, or externally? Generally we are told this is not a good practice for a Cloud Native system, when the 12-factor guidelines seem to be all about stateless containers, but is it? It’s unclear and this confusion may lead to poor technology stack choices that are impossible or extremely hard to change later on as your system evolves in terms of demand and performance.
While stateless systems are easier to work with, the reality is that we live in a stateful world, so we have to handle the state of data accordingly to ensure data integrity beyond securing it.
We will examine and demonstrate the fundamentals of a Cloud Native system with Stateful Microservices that’s built with Open Liberty and MicroProfile.
UtrechtJUG_Exploring statefulmicroservices in a cloud-native world.pptxGrace Jansen
How does one choose to architect a system that has a Microservice / REST API endpoints? There are many solutions out there. Some are better than others. Should state be held in a server side component, or externally? Generally we are told this is not a good practice for a Cloud Native system, when the 12-factor guidelines seem to be all about stateless containers, but is it? It’s unclear and this confusion may lead to poor technology stack choices that are impossible or extremely hard to change later on as your system evolves in terms of demand and performance.
While stateless systems are easier to work with, the reality is that we live in a stateful world, so we have to handle the state of data accordingly to ensure data integrity beyond securing it.
We will examine and demonstrate the fundamentals of a Cloud Native system with Stateful Microservices that’s built with Open Liberty and MicroProfile.
JCON_Adressing the transaction challenge in a cloud-native world.pptxGrace Jansen
With microservices comes great benefits but also great challenges! One such challenge is data consistency and integrity. Traditionally, tightly coupled transactions were used to ensure strong consistency and isolation. However, this results in strong coupling between services due to data locking and decreasing concurrency, both of which are unsuitable for microservices. So, how do we provide consistency guarantees for flows that span long periods of time in cloud-native applications? We'll address this challenge by investigating the Saga pattern for distributed transactions, the MicroProfile Long Running Action (LRA) specification and how these can be used to develop effective cloud-native Java microservices.
JavaZone_Addressing the transaction challenge in a cloud-native world.pptxGrace Jansen
With microservices comes great benefits but also great challenges! One such challenge is data consistency and integrity. Traditionally, tightly coupled transactions were used to ensure strong consistency and isolation. However, this results in strong coupling between services due to data locking and decreasing concurrency, both of which are unsuitable for microservices. So, how do we provide consistency guarantees for flows that span long periods of time in cloud-native applications? We'll address this challenge by investigating the Saga pattern for distributed transactions, the MicroProfile Long Running Action (LRA) specification and how these can be used to develop effective cloud-native Java microservices.
JavaZone_Mother Nature vs Java – the security face off.pptxGrace Jansen
Mother Nature has had millennia to build up its defences to the many potential hazards and attacks it may face. So, given its wisdom and expertise on this subject, what can we as software developers learn from it and bring back to the evolution of our own application’s security? In this session we’ll explore where software and biology overlap when it comes to security and lessons we can learn from nature to improve our own application security.
Boost developer productivity with EE, MP and OL (Devoxx Ukraine 22).pptxGrace Jansen
As developers we strive to iteratively and rapidly develop our applications. However, development is often slowed by the process of setting up a new project to use the latest APIs, building the application, deploying to a local or container environment, and testing. In this session we will look at key pain points faced by cloud-native Java developers and present helpful APIs and tools so that as developer you can focus on what really matters - your code.
Addressing the transaction challenge in a cloud-native world Devoxx Ukraine 2022Grace Jansen
With microservices comes great benefits but also great challenges! One such challenge is data consistency and integrity. Traditionally, tightly coupled transactions were used to ensure strong consistency and isolation. However, this results in strong coupling between services due to data locking and decreasing concurrency, both of which are unsuitable for microservices. So, how do we provide consistency guarantees for flows that span long periods of time in cloud-native applications? We'll address this challenge by investigating the Saga pattern for distributed transactions, the MicroProfile Long Running Action (LRA) specification and how these can be used to develop effective cloud-native Java microservices.
With microservices comes great benefits but also great challenges! One such challenge is data consistency and integrity. Traditionally, tightly coupled transactions were used to ensure strong consistency and isolation. However, this results in strong coupling between services due to data locking and decreasing concurrency, both of which are unsuitable for microservices. So, how do we provide consistency guarantees for flows that span long periods of time in cloud-native applications? We'll address this challenge by investigating the Saga pattern for distributed transactions, the MicroProfile Long Running Action (LRA) specification and how these can be used to develop effective cloud-native Java microservices.
How does one choose to architect a system that has a Microservice / REST API endpoints? There are many solutions out there. Some are better than others. Should state be held in a server side component, or externally? Generally we are told this is not a good practice for a Cloud Native system, when the 12-factor guidelines seem to be all about stateless containers, but is it? It’s unclear and this confusion may lead to poor technology stack choices that are impossible or extremely hard to change later on as your system evolves in terms of demand and performance.
While stateless systems are easier to work with, the reality is that we live in a stateful world, so we have to handle the state of data accordingly to ensure data integrity beyond securing it.
We will examine and demonstrate the fundamentals of a Cloud Native system with Stateful Microservices that’s built with Open Liberty and MicroProfile in Kubernetes.
How to become a superhero without even leaving your desk!Grace Jansen
With global warming on the rise, viral pandemics affecting every nation and extinction threatening more than 40,000 species the world has never needed superheros more! Are you ready to use your powers to save the world?
In this session we’ll explore the various ways our coding super powers can help to make a positive impact on our society and the planet we inhabit.
Large Language Models and the End of ProgrammingMatt Welsh
Talk by Matt Welsh at Craft Conference 2024 on the impact that Large Language Models will have on the future of software development. In this talk, I discuss the ways in which LLMs will impact the software industry, from replacing human software developers with AI, to replacing conventional software with models that perform reasoning, computation, and problem-solving.
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI AppGoogle
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
👉👉 Click Here To Get More Info 👇👇
https://sumonreview.com/ai-fusion-buddy-review
AI Fusion Buddy Review: Key Features
✅Create Stunning AI App Suite Fully Powered By Google's Latest AI technology, Gemini
✅Use Gemini to Build high-converting Converting Sales Video Scripts, ad copies, Trending Articles, blogs, etc.100% unique!
✅Create Ultra-HD graphics with a single keyword or phrase that commands 10x eyeballs!
✅Fully automated AI articles bulk generation!
✅Auto-post or schedule stunning AI content across all your accounts at once—WordPress, Facebook, LinkedIn, Blogger, and more.
✅With one keyword or URL, generate complete websites, landing pages, and more…
✅Automatically create & sell AI content, graphics, websites, landing pages, & all that gets you paid non-stop 24*7.
✅Pre-built High-Converting 100+ website Templates and 2000+ graphic templates logos, banners, and thumbnail images in Trending Niches.
✅Say goodbye to wasting time logging into multiple Chat GPT & AI Apps once & for all!
✅Save over $5000 per year and kick out dependency on third parties completely!
✅Brand New App: Not available anywhere else!
✅ Beginner-friendly!
✅ZERO upfront cost or any extra expenses
✅Risk-Free: 30-Day Money-Back Guarantee!
✅Commercial License included!
See My Other Reviews Article:
(1) AI Genie Review: https://sumonreview.com/ai-genie-review
(2) SocioWave Review: https://sumonreview.com/sociowave-review
(3) AI Partner & Profit Review: https://sumonreview.com/ai-partner-profit-review
(4) AI Ebook Suite Review: https://sumonreview.com/ai-ebook-suite-review
#AIFusionBuddyReview,
#AIFusionBuddyFeatures,
#AIFusionBuddyPricing,
#AIFusionBuddyProsandCons,
#AIFusionBuddyTutorial,
#AIFusionBuddyUserExperience
#AIFusionBuddyforBeginners,
#AIFusionBuddyBenefits,
#AIFusionBuddyComparison,
#AIFusionBuddyInstallation,
#AIFusionBuddyRefundPolicy,
#AIFusionBuddyDemo,
#AIFusionBuddyMaintenanceFees,
#AIFusionBuddyNewbieFriendly,
#WhatIsAIFusionBuddy?,
#HowDoesAIFusionBuddyWorks
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.
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.
Top 7 Unique WhatsApp API Benefits | Saudi ArabiaYara Milbes
Discover the transformative power of the WhatsApp API in our latest SlideShare presentation, "Top 7 Unique WhatsApp API Benefits." In today's fast-paced digital era, effective communication is crucial for both personal and professional success. Whether you're a small business looking to enhance customer interactions or an individual seeking seamless communication with loved ones, the WhatsApp API offers robust capabilities that can significantly elevate your experience.
In this presentation, we delve into the top 7 distinctive benefits of the WhatsApp API, provided by the leading WhatsApp API service provider in Saudi Arabia. Learn how to streamline customer support, automate notifications, leverage rich media messaging, run scalable marketing campaigns, integrate secure payments, synchronize with CRM systems, and ensure enhanced security and privacy.
Providing Globus Services to Users of JASMIN for Environmental Data AnalysisGlobus
JASMIN is the UK’s high-performance data analysis platform for environmental science, operated by STFC on behalf of the UK Natural Environment Research Council (NERC). In addition to its role in hosting the CEDA Archive (NERC’s long-term repository for climate, atmospheric science & Earth observation data in the UK), JASMIN provides a collaborative platform to a community of around 2,000 scientists in the UK and beyond, providing nearly 400 environmental science projects with working space, compute resources and tools to facilitate their work. High-performance data transfer into and out of JASMIN has always been a key feature, with many scientists bringing model outputs from supercomputers elsewhere in the UK, to analyse against observational or other model data in the CEDA Archive. A growing number of JASMIN users are now realising the benefits of using the Globus service to provide reliable and efficient data movement and other tasks in this and other contexts. Further use cases involve long-distance (intercontinental) transfers to and from JASMIN, and collecting results from a mobile atmospheric radar system, pushing data to JASMIN via a lightweight Globus deployment. We provide details of how Globus fits into our current infrastructure, our experience of the recent migration to GCSv5.4, and of our interest in developing use of the wider ecosystem of Globus services for the benefit of our user community.
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.
First Steps with Globus Compute Multi-User EndpointsGlobus
In this presentation we will share our experiences around getting started with the Globus Compute multi-user endpoint. Working with the Pharmacology group at the University of Auckland, we have previously written an application using Globus Compute that can offload computationally expensive steps in the researcher's workflows, which they wish to manage from their familiar Windows environments, onto the NeSI (New Zealand eScience Infrastructure) cluster. Some of the challenges we have encountered were that each researcher had to set up and manage their own single-user globus compute endpoint and that the workloads had varying resource requirements (CPUs, memory and wall time) between different runs. We hope that the multi-user endpoint will help to address these challenges and share an update on our progress here.
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...Crescat
Crescat is industry-trusted event management software, built by event professionals for event professionals. Founded in 2017, we have three key products tailored for the live event industry.
Crescat Event for concert promoters and event agencies. Crescat Venue for music venues, conference centers, wedding venues, concert halls and more. And Crescat Festival for festivals, conferences and complex events.
With a wide range of popular features such as event scheduling, shift management, volunteer and crew coordination, artist booking and much more, Crescat is designed for customisation and ease-of-use.
Over 125,000 events have been planned in Crescat and with hundreds of customers of all shapes and sizes, from boutique event agencies through to international concert promoters, Crescat is rigged for success. What's more, we highly value feedback from our users and we are constantly improving our software with updates, new features and improvements.
If you plan events, run a venue or produce festivals and you're looking for ways to make your life easier, then we have a solution for you. Try our software for free or schedule a no-obligation demo with one of our product specialists today at crescat.io
Code reviews are vital for ensuring good code quality. They serve as one of our last lines of defense against bugs and subpar code reaching production.
Yet, they often turn into annoying tasks riddled with frustration, hostility, unclear feedback and lack of standards. How can we improve this crucial process?
In this session we will cover:
- The Art of Effective Code Reviews
- Streamlining the Review Process
- Elevating Reviews with Automated Tools
By the end of this presentation, you'll have the knowledge on how to organize and improve your code review proces
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptxrickgrimesss22
Discover the essential features to incorporate in your Winzo clone app to boost business growth, enhance user engagement, and drive revenue. Learn how to create a compelling gaming experience that stands out in the competitive market.
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.
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...Globus
Large Language Models (LLMs) are currently the center of attention in the tech world, particularly for their potential to advance research. In this presentation, we'll explore a straightforward and effective method for quickly initiating inference runs on supercomputers using the vLLM tool with Globus Compute, specifically on the Polaris system at ALCF. We'll begin by briefly discussing the popularity and applications of LLMs in various fields. Following this, we will introduce the vLLM tool, and explain how it integrates with Globus Compute to efficiently manage LLM operations on Polaris. Attendees will learn the practical aspects of setting up and remotely triggering LLMs from local machines, focusing on ease of use and efficiency. This talk is ideal for researchers and practitioners looking to leverage the power of LLMs in their work, offering a clear guide to harnessing supercomputing resources for quick and effective LLM inference.
How to Position Your Globus Data Portal for Success Ten Good PracticesGlobus
Science gateways allow science and engineering communities to access shared data, software, computing services, and instruments. Science gateways have gained a lot of traction in the last twenty years, as evidenced by projects such as the Science Gateways Community Institute (SGCI) and the Center of Excellence on Science Gateways (SGX3) in the US, The Australian Research Data Commons (ARDC) and its platforms in Australia, and the projects around Virtual Research Environments in Europe. A few mature frameworks have evolved with their different strengths and foci and have been taken up by a larger community such as the Globus Data Portal, Hubzero, Tapis, and Galaxy. However, even when gateways are built on successful frameworks, they continue to face the challenges of ongoing maintenance costs and how to meet the ever-expanding needs of the community they serve with enhanced features. It is not uncommon that gateways with compelling use cases are nonetheless unable to get past the prototype phase and become a full production service, or if they do, they don't survive more than a couple of years. While there is no guaranteed pathway to success, it seems likely that for any gateway there is a need for a strong community and/or solid funding streams to create and sustain its success. With over twenty years of examples to draw from, this presentation goes into detail for ten factors common to successful and enduring gateways that effectively serve as best practices for any new or developing gateway.
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...Globus
The U.S. Geological Survey (USGS) has made substantial investments in meeting evolving scientific, technical, and policy driven demands on storing, managing, and delivering data. As these demands continue to grow in complexity and scale, the USGS must continue to explore innovative solutions to improve its management, curation, sharing, delivering, and preservation approaches for large-scale research data. Supporting these needs, the USGS has partnered with the University of Chicago-Globus to research and develop advanced repository components and workflows leveraging its current investment in Globus. The primary outcome of this partnership includes the development of a prototype enterprise repository, driven by USGS Data Release requirements, through exploration and implementation of the entire suite of the Globus platform offerings, including Globus Flow, Globus Auth, Globus Transfer, and Globus Search. This presentation will provide insights into this research partnership, introduce the unique requirements and challenges being addressed and provide relevant project progress.
OpenMetadata Community Meeting - 5th June 2024OpenMetadata
The OpenMetadata Community Meeting was held on June 5th, 2024. In this meeting, we discussed about the data quality capabilities that are integrated with the Incident Manager, providing a complete solution to handle your data observability needs. Watch the end-to-end demo of the data quality features.
* How to run your own data quality framework
* What is the performance impact of running data quality frameworks
* How to run the test cases in your own ETL pipelines
* How the Incident Manager is integrated
* Get notified with alerts when test cases fail
Watch the meeting recording here - https://www.youtube.com/watch?v=UbNOje0kf6E
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...Globus
The Earth System Grid Federation (ESGF) is a global network of data servers that archives and distributes the planet’s largest collection of Earth system model output for thousands of climate and environmental scientists worldwide. Many of these petabyte-scale data archives are located in proximity to large high-performance computing (HPC) or cloud computing resources, but the primary workflow for data users consists of transferring data, and applying computations on a different system. As a part of the ESGF 2.0 US project (funded by the United States Department of Energy Office of Science), we developed pre-defined data workflows, which can be run on-demand, capable of applying many data reduction and data analysis to the large ESGF data archives, transferring only the resultant analysis (ex. visualizations, smaller data files). In this talk, we will showcase a few of these workflows, highlighting how Globus Flows can be used for petabyte-scale climate analysis.
20. Actor Model
The Actor Model is a conceptual model
to deal with concurrent computation,
based on Actors (fundamental units of
computation).
Key Points:
• Uses Actor heirachy
• Use language specific objects to pass
messages between actors
• Gives at least once delivery
21. Verticles
Verticle is the unit of execution
used by Vert.x – it processes
incoming events over event-loops.
Key Points:
• Flat Heirachy
• Language agnostic
• Does not enable at least once delivery
22. Real World Example -Verizon
175M Visits/Month
50M Unique Visitors/Month
2.5 Billion Interactions/Year
88% Interactions are Digital
48% Digital Sales on Mobile Devices
Always Up For Iconic Launch
@gracejansen27
23. Real World Example
• Conversion rate UP by 1.6x (from 1.9% to 3.1%)
• Page response time improved from 7-10 seconds to 2-3
seconds
• Runs using 1/8th of Infrastructure
• Deployment time improved from 4-8 hours to 30 minutes
• Developers are 20-40% more productive
• Order completion improved from 41 minutes to 27 minutes
@gracejansen27
24. Why should you care?
ResilientElastic
Message-Driven
Responsive
@gracejansen27
28. Please remember to rate my
talk on the DevoxxMA app
GRACE JANSEN
@gracejansen27
Editor's Notes
A single website may now handle as much traffic as the entire internet did a decade ago!!
Distribute out different services
Easily add features, deploy small part of application
Isolate failure
New problems --> users have new ever-demanding expectations
Doesn't expect an application to fail or have no access
Expect responses as soon as they click
Shopping cart example
How can we tackle these new demands and expectations user's put on applications?
Where do we go in our evolution?
Biology background inspiration --> nature inspire our apps
Bees = system of individuals, independent but common goal
The 100 million-year-old fossil was found in a mine in the Hukawng Valley of Myanmar (Burma) and preserved in amber.
Discovered in 2006
Independant Observers
Act as soon as possible - quick to respond
Colony Independently continues
Impact of Queen being lost is managed
Has the potential to be catastrophic but isn’t
Guards recruit more bees to defend hive
Limited number of bees - so switch roles to make up numbers and go back to original role after
Dynamically increase number of guards
Creation of the Reactive Manifesto in 2013, by Jonas Bonér
to collaborate and solidify what the core principles were for building reactive applications and systems
REACT to users (Responsive)- user click a button
REACT to load (Elastic) - black friday and login/book table
REACT to failure (Resilient) - monitor, replace service
REACT to events (event-driven) - achieve other 3 principles
how do we achieve this? same way bees do
async comm - dancer bee, guard bee recruiting
Let’s say that our system should:
. Be responsive to interactions with its users
. Handle failure and remain available during outages
. Strive under varying load conditions
. Be able to send, receive, and route messages in varying network conditions
These answers actually convey the core reactive traits as defined in the manifesto.
It is important to realize that reactive traits not only set you up for success right now, but also play very well with where the industry is headed, toward location-transparent, ops-less distributed services.
bees = sophisticated system, appear simplistic, actually complicated
efficient society of independent individuals acting as a whole
We want to mimic what bees have achieved - tall ask, bees have had millennia, but by implementing reactive architecture we can start to achieve this
If it’s our goal to build responsive applications in an event-driven world, we need to be making sure we are getting the most out of the hardware on which we’re running. We do this through concurrency and parallelism.
Reactive programming is one tool which aims to try and tackle this.
Reactive programming is a great technique for managing internal logic and dataflow transformation, locally within the components, as a way of optimizing code clarity, performance and resource efficiency.
Reactive systems puts the emphasis on distributed communication and gives us tools to tackle resilience and elasticity in distributed systems.
Reactive programming is a paradigm in which declarative code is used in order to construct asynchronous processing pipelines.
Translated, this is essentially the same process our minds perform when we try to multitask. Rather than true parallel tasking, we actually switch tasks and split those tasks efficiently during their duration. This method of switching tasks enables us to efficiently use our time instead of having to wait for the previous task to complete. This is exactly what reactive programming was created to enable and is an event-based model in which data is pushed to a consumer, as it becomes available turning it into an asynchronous sequences of events.
Reactive programming is a very useful implementation technique for managing internal logic and dataflow transformation, locally within components. However, once there are multiple nodes, there is a need to start thinking hard about things like data consitency, cross-node communication, orchestration, failure management, separation of concerns and responsibilities, etc, i.e. there is a need to think about system architecture. Reactive programming cannot address these issues or address the need for resilience and elasticity within a system. So, instead, to maximize the value of reactive programming, it’s recommended to use it as a tool to build a reactive system.
Architectural tools – enable reactive behaviours
Sphere of knowledge or activity
Subject area on which the application is intended to apply
Development approach as opposed to a physical tool
Aims to ease the creation of complex applications – divides up large systems into bounded contexts
A DDD aggregate is a cluster of domain objects that can be treated as a single unit.
An aggregate will have one aggregate root.
DDD = independent areas of a problem as bounded contexts, emphasises a common language to talk
Any references from outside the aggregate should only go to the aggregate root. The root can thus ensure the integrity of the aggregate as a whole. How do we achieve efficient communication across these bounded contexts/services?
Focus on the core domain and domain logic.
Base complex designs on models of the domain.
Constantly collaborate with domain experts, in order to improve the application model and resolve any emerging domain-related issues.
Message-driven
Lagom framework
Communication between Microservices needs to be based on Asynchronous Message-Passing
An asynchronous boundary between services is necessary in order to decouple them, and their communication flow, in time—allowing concurrency—and in space—allowing distribution and mobility. Without this decoupling it is impossible to reach the level of compartmentalization and containment needed for isolation and resilience.
Asynchronous and non-blocking execution = more cost-efficient through more efficient use of resources, minimizes contention (congestion) on shared resources in the system, which is one of the biggest hurdles to scalability, low latency, and high throughput.
It’s best illustrated with an example… bees queuing = wasted resource, equivalent to threads
But why is blocking so bad?
The fundamental shift is that we’ve moved from "data at rest" to "data in motion.
Applications today need to react to changes in data in close to real time—when it happens
First Wave = data at rest, batch processing, hours of latency, overnight
Second Wave = hybrid architecture, lambda architecture, 2 layers (batch and speed layers), added needless complexity – 2 data pipelines and need to merge them afterwards
Third Wave – fully embrace data in motion, stream processing architecture, event logging/sourcing…..
Lagom framework
Message-driven / responsiveness
Event Sourcing ensures that all changes to application state are stored as a sequence of events
(e.g. business objects is persisted by storing a sequence of state changing events)
Command Query Responsibility Segregation --> disassociate writes (commands) and reads (queries)
Applying event sourcing on top of CQRS means persisting each event on the write part of the application.
Read part is derived from the sequence of events.
Bees brains = local databases
Dance floor – write to bees brains
Bees can query their own brains (read)
May not be most up to date but that’s ok
Responsiveness
Lagom framework
Tradeoff
Dance floor bees assume the food is still available until another bee comes back and says otherwise
More representative of the way the world works
Given enough time, all nodes will become consistent
Not perfect sharding to help improve consistency
Lagom framework
CAP Theorum
Form of Database partitioning, separates very large databases into smaller, faster, more manageable parts called data shards
Shard = small parts of a whole
Meant to make v. large databases more manageable
Greater parallelism, without collisions
Two bees at the same cell – fill up multiple cells (sharding)
Finite space in the hive – sharding out the hive into cells – operate in parallel across cells, reducing contention
Imagine one huge cell, only one bee can fill up at a time
Resiliency/elasticity
Lagom framework
Form of feedback/flow control
Without feedback, a distributed system can easily become unstable and fail. Any component that cannot support the worst possible case of loading in the system can become a bottleneck. BLOCKING
Without Feedback, other components will continue to increase the load until they are in turn congested, resulting in the ultimate collapse!
When one component is struggling to keep-up, the system as a whole needs to respond in a sensible way.
It is unacceptable for the component under stress to fail catastrophically or to drop messages in an uncontrolled fashion.
Since it can’t cope and it can’t fail it should communicate the fact that it is under stress to upstream components and so get them to reduce the load.
This back-pressure is an important feedback mechanism that allows systems to gracefully respond to load rather than collapse under it.
this mechanism helps ensure that the system is resilient under load, and will provide information that may allow the system itself to apply other resources to help distribute the load, see Elasticity.
Backpressure = built wherever the publisher is faster than the subscriber
Honeycomb vs nectar ratio
Resiliency / responsiveness
Builhead use in industry to partition a ship into segments, so that sections can be sealed off if the hull is breeched.
--> concept can be applied in software development to segregate resources
Protect limited resources from being exhausted.
Dancer communicating how many bees should go to food source
Resiliency/responsiveness
Akka
Bees are intelligent actors, software isn’t so we have to program to imitate it
Protect resources and help them recover
Circuit breaker opens when a particular type of error occurs multiple times in a short period.
An open circuit breaker prevents further requests to be made.
They usually close after a certain amount of time, giving enough space for underlying services to recover.
Resiliency
Akka
third party libraries
RxJava is a Java VM implementation of Reactive Extensions: a library for composing asynchronous and event-based programs by using observable sequences.
Microprofile Reactive Streams is an integration SPI - it allows two different libraries that provide asynchronous streaming to be able to stream data to and from each other.
Play Framework is a web development framework that empowers developers to build highly scalable, lightning-fast applications with an ease unparalleled on the JVM. Play is built on top of Akka and Akka HTTP
Lagom is an opinionated microservices framework that builds on top of Akka and Play
For the actor model it's relatively fine-grained, in that an actor tends to represent the equivalent of one object in Object Orientated Programming.
For micro-services it's relatively coarse-grained, in that a single micro-service may consist of a large number of actors or objects.
An actor is the thing that receives a message and does some kind of computation based on it. When you hear of an actor, think of it as a computer process or a function - you're going to pass a message to, kind of like calling a function. Basically you send the actor instructions and it returns some information back to you.
The idea is very similar to what we have in object-oriented languages: An object receives a message (a method call) and does something depending on which message it receives (which method we are calling).
The main difference is that actors are completely isolated from each other and they will never share memory.
Actors are part of an actor system and can be arranged in a hierarchy. This means they can split up and delegate tasks to child actors. The child actor is supervised and delegate their failure back to their parent actor.
In the actor model everything is an actor and they need to have addresses so one actor can send a message to another. You can also assign one address to multiple actors. This way you can scale your application to meet traffic demands if one actor is not enough.
Actors communicate with each other by sending asynchronous messages. Those messages are stored in other actors' mailboxes until they're processed.
Actors are not suitable when you need a sequential order of things to happen.
If you find yourself sending multiple messages and then needing to rollback those processes if one fails, you might want to reconsider using the Actor Model. A common example of this is a bank account.
If you are building an application that handles tasks asynchronously, using the Actor Model can help simplify your code. It will allow you to scale your application and process tasks in parallel.
Vert.x is based on a flat hierarchy and does not implement the actor model. Instead, it is based on the event loop model.
The unit of execution in Vert.x is known as a Verticle. It processes incoming events over event-loops, which are typical in asynchronous programming models.
Verticle is a class whose state is totally inaccessible from outside except through event bus. So messages come, queued, and popped sequentially in a single thread manner. The idea is to create a thread-safe environment without having to deal with Java’s locking mechanism.
Similar to Akka, Vert.x also supports point-to-point and a publish-subscribe pattern. A difference is the message passing of Vert.x is language agnostic and uses JSON to pass data, whereas Akka uses specific objects from either Scala or Java.
Akka provides an additional component known as Akka Persistence that can be used to store the internal state of an actor. This enables the state of an actor to be recovered if it crashes. Currently, Vert.x does not provide out-of-the-box recovery capabilities.
People argue that due to its complexity, Akka tends to have a much larger learning curve than Vert.x. it’s said that Akka needs more understanding and mastery of the actor model and async architectures in order to use it effectively.
However, Akka is more mature, had more features (Akka streams, Akka perstistence, Akka clusters).
Your choice…
Switch off bits of system to deal with load of customers trying to buy new phones – reactive solved this
Google: “faster page loads, the more successful it will be”, people don’t want to wait
Performance plays a major role in the success of any online venture. Case studies that show how high-performing sites engage and retain users better than low-performing ones:
Pinterest increased search engine traffic and sign-ups by 15% when they reduced perceived wait times by 40%.
COOK increased conversions by 7%, decreased bounce rates by 7%, and increased pages per session by 10% when they reduced average page load time by 850 milliseconds (14.2 secs).
Here are a couple case studies where low performance had a negative impact on business goals:
The BBC found they lost an additional 10% of users for every additional second their site took to load.
DoubleClick by Google found 53% of mobile site visits were abandoned if a page took longer than 3 seconds to load.