Reactive Messaging Patterns with the Actor Model
Addison-Wesley Educational Publishers (Verlag)
978-0-13-384683-6 (ISBN)
- Titel gebraucht verfügbar
- Artikel merken
- Teaches how to develop multi-core, muti-threaded, high scalability, high performance, low latency systems, and learn how to write composable software that is event-driven, scalable under load, resilient and responsive in the presence of failures
- Online source code supports all of the samples in the book, and Scala and Akka are free downloads from typesafe.com
Use the Actor Model to build simpler systems with bestter performance and scalability.
Enterprise software development has been much more difficult and failure-prone than it needs to be. Now, veteran software engineer and author Vaughn Vernon offers an easier and more rewarding method to succeeding with Actor model.
Reactive Messaging Patterns with the Actor Model shows how the reactive enterprise approach, Actor model, Scala, and Akka can help you overcome previous limits of performance and scalability, and skillfully address even the most challenging non-functional requirements.
Reflecting his own cutting-edge work, Vernon shows architects and developers how to translate the longtime promises of Actor model into practical reality. First, he introduces the tenets of reactive software, and shows how the message-driven Actor model addresses all of them-making it possible to build systems that are more responsive, resilient, and elastic.
Next, he presents a practical Scala bootstrap tutorial, a thorough introduction to Akka and Akka Cluster, and a full chapter on maximizing performance and scalability with Scala and Akka.
Building on this foundation, you'll learn to apply enterprise application and integration patterns to establish message channels and endpoints; efficiently construct, route, and transform messages; and build robust systems that are simpler and far more successful.
Coverage Includes
- How reactive architecture replaces complexity with simplicity throughout the core, middle, and edges
- The characteristics of actors and actor systems, and how Akka makes them more powerful
- Building systems that perform at scale on one or many computing nodes
- Establishing channel mechanisms, and choosing appropriate channels for each application and integration challenge
- Constructing messages to clearly convey a sender's intent in communicating with a receiver
- Implementing a Process Manager for your Domain-Driven Designs
- Decoupling a message's source and destination, and integrating appropriate business logic into its router
- Understanding the transformations a message may experience in applications and integrations
- Implementing persistent actors using Event Sourcing and reactive views using CQRS Find unique online training on Domain-Driven Design, Scala, Akka, and other software craftsmanship topics using the for{comprehension} website.
Vaughn Vernon is a veteran software craftsman and thought leader in simplifying software design and implementation. The author of the best-selling Implementing Domain-Driven Design (Addison-Wesley, 2013), he has taught his IDDD Workshop to hundreds of software developers worldwide, consults, and speaks frequently at industry conferences. Vaughn's interests include distributed computing, messaging, and Actor model. He first used Akka in 2012 on a GIS system and has specialized in applying Actor model with Domain-Driven Design ever since.
Foreword xiii
Preface xv
Acknowledgments xxiii
About the Author xxv
Chapter 1: Discovering the Actor Model and the Enterprise, All Over Again 1
Why Enterprise Software Development Is Hard 1
Introducing Reactive Applications 5
Enterprise Applications 9
Actor Model 10
The Actor Way Is Explicit 22
What Next? 24
Chapter 2: The Actor Model with Scala and Akka 25
How to Get Scala and Akka 26
Programming with Scala 29
Programming with Akka 43
Summary 104
Chapter 3: Performance Bent 107
Transistors Matter 107
Clock Speed Matters 109
Cores and Cache Matter 111
Scale Matters 112
Multithreading Is Hard 116
How the Actor Model Helps 122
The Patterns 126
Chapter 4: Messaging with Actors 127
Message Channel 128
Message 130
Pipes and Filters 135
Message Router 140
Message Translator 143
Message Endpoint 145
Summary 147
Chapter 5: Messaging Channels 149
Point-to-Point Channel 151
Publish-Subscribe Channel 154
Datatype Channel 167
Invalid Message Channel 170
Dead Letter Channel 172
Guaranteed Delivery 175
Channel Adapter 183
Message Bridge 185
Message Bus 192
Summary 200
Chapter 6: Message Construction 201
Command Message 202
Document Message 204
Event Message 207
Request-Reply 209
Return Address 211
Correlation Identifier 215
Message Sequence 217
Message Expiration 218
Format Indicator 222
Summary 226
Chapter 7: Message Routing 227
Content-Based Router 228
Message Filter 232
Dynamic Router 237
Recipient List 245
Splitter 254
Aggregator 257
Resequencer 264
Composed Message Processor 270
Scatter-Gather 272
Routing Slip 285
Process Manager 292
Message Broker 308
Summary 310
Chapter 8: Message Transformation 313
Envelope Wrapper 314
Content Enricher 317
Content Filter 321
Claim Check 325
Normalizer 332
Canonical Message Model 333
Summary 336
Chapter 9: Message Endpoints 337
Messaging Gateway 338
Messaging Mapper 344
Transactional Client/Actor 351
Polling Consumer 362
Event-Driven Consumer 371
Competing Consumers 371
Message Dispatcher 374
Selective Consumer 377
Durable Subscriber 379
Idempotent Receiver 382
Service Activator 390
Summary 391
Chapter 10: System Management and Infrastructure 393
Control Bus 394
Detour 395
Wire Tap 397
Message Metadata/History 398
Message Journal/Store 402
Smart Proxy 406
Test Message 411
Channel Purger 414
Summary 416
Appendix A: Dotsero: An Akka-like Toolkit for .NET 417
Dotsero Actor System 417
Actors Using C# and .NET 420
Dotsero Implementation 425
Summary 427
Bibliography 429
Index 433
Erscheint lt. Verlag | 20.8.2015 |
---|---|
Verlagsort | New Jersey |
Sprache | englisch |
Maße | 185 x 231 mm |
Gewicht | 890 g |
Einbandart | kartoniert |
Themenwelt | Mathematik / Informatik ► Informatik ► Programmiersprachen / -werkzeuge |
Mathematik / Informatik ► Informatik ► Software Entwicklung | |
Schlagworte | Actor Model • Akka • Aktoren • Message Passing • Scala • Scala (Programmiersprache) • Scala Programming Language • Softwareentwicklungsmodelle |
ISBN-10 | 0-13-384683-0 / 0133846830 |
ISBN-13 | 978-0-13-384683-6 / 9780133846836 |
Zustand | Neuware |
Haben Sie eine Frage zum Produkt? |
aus dem Bereich