Event Driven Architecture In Golang

Download Event Driven Architecture In Golang PDF/ePub or read online books in Mobi eBooks. Click Download or Read Online button to get Event Driven Architecture In Golang book now. This website allows unlimited access to, at the time of writing, more than 1.5 million titles, including hundreds of thousands of titles in various foreign languages.
Event-Driven Architecture in Golang

Author: Michael Stack
language: en
Publisher: Packt Publishing Ltd
Release Date: 2022-11-25
Begin building event-driven microservices, including patterns to handle data consistency and resiliency Key Features Explore the benefits and tradeoffs of event-driven architectures with practical examples and use cases Understand synergy with event sourcing, CQRS, and domain-driven development in software architecture Build an end-to-end robust application architecture by the end of the book Book DescriptionEvent-driven architecture in Golang is an approach used to develop applications that shares state changes asynchronously, internally, and externally using messages. EDA applications are better suited at handling situations that need to scale up quickly and the chances of individual component failures are less likely to bring your system crashing down. This is why EDA is a great thing to learn and this book is designed to get you started with the help of step-by-step explanations of essential concepts, practical examples, and more. You’ll begin building event-driven microservices, including patterns to handle data consistency and resiliency. Not only will you learn the patterns behind event-driven microservices but also how to communicate using asynchronous messaging with event streams. You’ll then build an application made of several microservices that communicates using both choreographed and orchestrated messaging. By the end of this book, you’ll be able to build and deploy your own event-driven microservices using asynchronous communication.What you will learn Understand different event-driven patterns and best practices Plan and design your software architecture with ease Track changes and updates effectively using event sourcing Test and deploy your sample software application with ease Monitor and improve the performance of your software architecture Who this book is for This hands-on book is for intermediate-level software architects, or senior software engineers working with Golang and interested in building asynchronous microservices using event sourcing, CQRS, and DDD. Intermediate-level knowledge of the Go syntax and concurrency features is necessary.
Inter-Service Communication with Go

Communication is simple if you know the right way KEY FEATURES ● Understand the core concepts related to inter-service communication. ● Learn and understand different inter-service communication approaches through practical examples. ● Recognize the most suitable communication concept for your software solution. DESCRIPTION This book will cover different concepts of inter-service communication. They will be demonstrated through the Go programming language, its standard library, and popular third-party packages for concepts. Begin by understanding basic concepts such as clients, servers, and communication methods. Explore RESTful APIs and HTTP, the backbone of many systems. Learn about protocol buffers and gRPC for efficient data exchange. For asynchronous communication, discover message queuing with RabbitMQ and event-driven patterns with Redis. Lastly, explore event-driven architecture (EDA) and Apache Kafka for implementing this style of communication. After reading this book, a reader can determine which communication concept is most suitable for the software solution based on software solution requirements. WHAT YOU WILL LEARN ● Decide which inter-service communication concept is most suitable for a particular software solution. ● Implement different communication approaches with the Go programming language. ● Utilize implementations from the Go’s standard library and third-party packages. ● Use API design best practices. ● Avoid issues that can arise from the wrong choice of communication concept. WHO THIS BOOK IS FOR It caters to developers, software engineers, and architects looking to master inter-service communication for their Go projects. TABLE OF CONTENTS 1. Fundamentals of Inter-Service Communication 2. RESTful Communication 3. HTTP 4. Protocol Buffers 5. Message Queuing Protocols 6. Publisher/Subscriber 7. Event-Driven Architecture 8. Final Observations
Ultimate Microservices with Go: Combine the Power of Microservices with Go to Build Highly Scalable, Maintainable, and Efficient Systems

Author: Nir Shtein
language: en
Publisher: Orange Education Pvt Limited
Release Date: 2024-04-23
Develop production-ready, high-performance, and scalable microservices with Go Key Features● Learn to design and implement resilient RESTful APIs using Go, with a focus on scalability and maintainability. ● Discover how Kubernetes empowers reliable microservice architecture, covering deployment, scaling, service discovery, and load balancing. ● Gain practical tools and insights for deploying microservices to production using Go and Kubernetes, ensuring smooth operations and high availability. Book Description Embark on a comprehensive journey through microservices architecture with a focus on harnessing the power of Go in modern cloud-based solutions. This book begins with a succinct introduction to microservices and their synergy with cloud strategies, emphasizing Go's aptitude for developing scalable and efficient services. You'll then delve into the fundamentals of Go, covering essential practices and core concepts, establishing a strong language foundation. The exploration continues with a detailed examination of constructing a single service, emphasizing design, documentation, and structure. Through various design patterns, you'll learn to implement a server capable of serving as a RESTful API, an internal worker, and more. This hands-on approach equips you with the expertise to craft robust and sustainable services. Finally, the book guides you through deploying your service to production using Kubernetes. You'll explore scaling techniques, performance optimization, and observability, ensuring your service is ready for the demands of the real world. What you will learn ● Gain a comprehensive understanding of microservices architecture, including its advantages, limitations, and alternative approaches. ● Master the fundamentals of Go, from basic syntax and concepts to more advanced topics, enabling you to leverage its capabilities effectively. ● Explore the key components of microservices architecture implemented using Go, understanding how they interact and contribute to the overall system. ● Design and implement robust RESTful APIs with Go, incorporating essential features like pagination, rate-limiting, caching, retries, and timeouts for optimal performance. ● Discover Kubernetes and its close relationship with microservices architecture, gaining insights into its role in orchestrating and managing containerized applications. ● Learn to deploy production-ready services with Go, covering essential aspects such as authentication, monitoring, continuous integration and continuous deployment (CI/CD), fault tolerance design, and rollout procedures, all from the perspective of a developer. Table of Contents 1. Introduction to Microservices 2. Usability of Go 3. Go Essentials 4. Embarking on the Go Journey 5. Unlocking Go's Concurrency Power 6. Core Elements of Microservices 7. Building RESTful API 8. Introduction to Kubernetes 9. Deploying to Production 10. Next Steps in Production Index