top of page

EDA - Event-Driven Architecture... have you heard of it?

  • mcb921
  • Sep 20, 2022
  • 3 min read

Updated: Sep 22, 2022

A little of history...


Today we live in a world where Web 2.0 is the minimum acceptable, websites are required to be dynamic, the use of the most diverse APIs is available to everyone and consumers are more demanding than ever.


But not long ago, things were different, if we go back to just 10 years ago things were quite different, at that time we were still in the so-called Web 1.0, the use of HTML pages was very frequent, JavaScript use was as simple as freezing a header and at most a sophisticated menu.


But how did we get out of that world to the current one?

I'm not going to take any chances... and say that a major factor was the advancement of computational capacity, which resulted, in a very simplified way, in lower costs and allowed PCs (desktop or notebook) to have high processing capacity with an affordable cost... but that's what happened!

And then, all of a sudden, it was no longer necessary to process everything on the server side, we started to share the load with the client, because it could handle it, and today we got to the point of having more load on the client than on the server, if in doubt, see REACT .


And what does this have to do with EDA?


Simply put... everything.

Today we live in a world where Streaming is the norm, where we receive alerts and notifications of anything in real time, we know if it is going to rain in the next 5 minutes, we receive online shopping alerts, the commercial process itself happens this way, for example delivery apps.


This is only possible because today the infrastructure which supports the internet, is stupidly powerful thanks to the evolution of computing, today it is cheaper to stream a movie than to download and save it on disk, apart from the comfort of not having to wait.


Although many people (including IT professionals) don't understand it, today the world is event-based.


But what exactly is an event?


A definition I heard recently states it is a "verb + noun", as in "register a channel", "place an order", "send an email".


In my definition, event is a change of state, for example:

  • In the services area, creating an order, before there was no order, now there is.

  • In the industrial area, the raw material load of machine is below the lower limit, before it was above.

Basically an event means that something expected has happened.


So an event-driven architecture is...


It is an integration modeling style, where events are the triggers for processes.

Do not confuse EDA with Pull and Push, however when we work in EDA it is natural that several processes become push, the key feature is the trigger.


And why is this good?


  1. Because it allows for real-time or near-real-time communication, as processes can start immediately

  2. Because it sends information at the atomic level, only data pertinent to the event is shared.

  3. Because no processing windows are needed so the data is available as soon as possible.

  4. Because hardware utilization is diluted over time, reducing spikes and overloads.

And why is this bad?


  1. Because a mindset change is needed, the way of thinking about designing solutions, and "nobody" likes changes.

  2. Because new technologies are required, it can increase the initial cost, with licenses, training, and the learning curve.

  3. Because coordination with many IT areas is essential for it to be effective.


Conclusion


Based on the above, I want to say that EDA is a reality now, because of technological and economic factors are surpassed, the needs were always there.

Bringing it to the business world, the capital market has been using EDA (or something similar) for decades, out of necessity, in other segments, customers (internal and external) have always wanted information as quickly as possible.

So colleagues in IT, let's embrace this new world and new methodologies, we all have something to gain.

댓글


©2022 by cloudmindbox.

bottom of page