We're sorry but this page doesn't work properly without JavaScript enabled. Please enable it to continue.
Feedback

CQRS with Erlang

Formale Metadaten

Titel
CQRS with Erlang
Serientitel
Anzahl der Teile
170
Autor
Lizenz
CC-Namensnennung - keine kommerzielle Nutzung - Weitergabe unter gleichen Bedingungen 3.0 Unported:
Sie dürfen das Werk bzw. den Inhalt zu jedem legalen und nicht-kommerziellen Zweck nutzen, verändern und in unveränderter oder veränderter Form vervielfältigen, verbreiten und öffentlich zugänglich machen, sofern Sie den Namen des Autors/Rechteinhabers in der von ihm festgelegten Weise nennen und das Werk bzw. diesen Inhalt auch in veränderter Form nur unter den Bedingungen dieser Lizenz weitergeben
Identifikatoren
Herausgeber
Erscheinungsjahr
Sprache

Inhaltliche Metadaten

Fachgebiet
Genre
Abstract
Erlang is an industry-proven functional programming language with unmatched sweet-spots in fault-tolerance, concurrency, and distribution. RabbitMQ, CouchDB. Facebook Chat, Opcode Chef, and WhatsApp are written in Erlang, and more than half of the world's mobile phone traffic is driven by Erlang. Erlang is also opensource, and cross-platform. CQRS is an architectural pattern that separates commands (which mutate state) from queries (which return values). With CQRS the “read” data store and the “write” data store can be on different severs, can use different storage engines, and can be scaled independently. CQRS is often linked with the Event Sourcing pattern which models state as a series of events (past tense verbs) rather than a single “latest” value. What works for an accountant’s ledger (and for Git) can work for our “write” store too. Given a series of events, we can deal with concurrency and collisions more intelligently than “last guy wins”. We can also define varied service level agreements for our commands and our queries. CQRS promotes distribution, concurrency and eventual consistency which is dandy until we attempt to code an implementation with conventional tools like C# or Java. Lucky for us, Erlang is unconventional in all the right ways. Many of the ideas of CQRS dovetail perfectly with the sweet-spots of Erlang. In this session we will dive into CQRS, and explore a sample implementation written in Erlang. We will spotlight a few areas where CQRS with Erlang shines.