No ratings found — view all ratings for this professor. He is a smart guy but his tests are ridiculous. He would just tell me to drop the class. Assistant Professor of Business Administration.
|Published (Last):||21 September 2016|
|PDF File Size:||1.98 Mb|
|ePub File Size:||7.93 Mb|
|Price:||Free* [*Free Regsitration Required]|
May 06, 6 min read by Jan Stenberg Apache Kafka is a highly scalable distributed streaming platform often used to distribute messages or events within a microservices based system. These events are sometimes part of a business process with tasks spread over several microservices. To handle complex business processes a workflow engine can be used, but to match Kafka it must meet the same scalability Kafka provides. Zeebe is a workflow engine currently developed and designed to meet these scalability requirements.
For Waehner, technology evangelist at Confluent , one reason so many use Kafka today is that more and more applications, microservices, mobile apps and IoT devices are integrated, which provide much more data. We have to process more messages than before and at an increased speed, often with real-time use cases.
Today the ESB is replaced with a message streaming platform like Kafka which all applications are connected to. EDA is not a new idea; the concept has been around for at least 10 — 20 years. The new thing lies in how we can process data.
Instead of storing data in a database which some other service reads and processes, the data now flows and is processed continuously. This affects how you build applications; now events are published which are then consumed by other applications.
Waehner points out that Kafka is about three concepts; messaging, storage and processing of data. Main concepts include replication, fault tolerance, partitioning and elastic scaling. Another trend he sees is that most of his customers are hybrid; they build new systems in the cloud but still have systems on premise, and they all need to communicate. He has also noted a trend where some customers have started using an event-driven approach, and are now using it for everything. Using the event notification pattern , systems are built with microservices responsible for different parts of the business.
The services publish events to notify other services about things happening. To accomplish a business function, several services may be involved, sending events to each other. He refers to an article by Martin Fowler where he points out that although the event notification pattern can be useful, it also adds a risk of losing sight of the larger-scale flow.
One approach to regain a view of the flow of events is using monitoring and tracing. This can also be a first step into acting on potential failures, for example by adding timeouts and warnings when a process takes too long time to complete.
He refers to a presentation by Vodafone about how they replaced an existing middleware , first by using tracking and then step-by-step replaced every task with orchestration. A potential problem with a peer-to-peer event chain is when the work flow needs to change — this may require that several services must change their event subscriptions. This also requires a coordination between teams and in deployment of the services, as well as a consideration of ongoing workflows and active events in the system.
One advantage is that you will have one service being responsible for something that is very important for a company, and one single point where you control the sequence of tasks. This also gives the possibility to start using commands to control the workflow. He also points out that with one service responsible for a workflow, there is one point where you can check for the state of running orders, number of successful orders, and so on.
Camunda is currently working on Zeebe, a horizontally scalable workflow engine for microservices, which makes it suitable for low latency and high throughput use cases in combination with Kafka. For him, an order fulfilment service should be concerned about orders fulfilled, not just publish an event that an order has been created and hope that other services make sure payment is handled and the goods delivered to the customer.
For him Kafka can be used for different types of messages, like events and commands, and he refers to the seminal book Enterprise Integration Patterns written by Gregor Hohpe and Bobby Woolf , where Command, Document and Event messages are described. Rate this Article.
Folke Kafka Teoria Economica Pdf 17