توضیحاتی در مورد کتاب Microservices with Go
نام کتاب : Microservices with Go
عنوان ترجمه شده به فارسی : میکروسرویس با Go
سری :
نویسندگان : Alexander Shuiskov
ناشر : Packt Publising Pvt Ltd
سال نشر : 2022
تعداد صفحات :
ISBN (شابک) : 9781804617007
زبان کتاب : English
فرمت کتاب : epub درصورت درخواست کاربر به PDF تبدیل می شود
حجم کتاب : 4 Mb
بعد از تکمیل فرایند پرداخت لینک دانلود کتاب ارائه خواهد شد. درصورت ثبت نام و ورود به حساب کاربری خود قادر خواهید بود لیست کتاب های خریداری شده را مشاهده فرمایید.
توضیحاتی در مورد کتاب :
تسلط بر هنر توسعه میکروسرویس Go
ویژگی های کلیدی
به ایجاد و سازماندهی میکروسرویس های Go با ساختار مناسب کمک می کند
بهترین شیوهها و بینشهای صنعت را در مورد ابزارها، الگوها و راهحلهای توسعه میکروسرویس Go ارائه میکند
نمونه های عملی Golang را در هر فصل پوشش می دهد
توضیحات کتاب
این کتاب مزایای کلیدی و مسائل رایج میکروسرویس ها را پوشش می دهد و به خوانندگان کمک می کند تا درک کنند که معماری میکروسرویس به حل کدام مشکلات کمک می کند و معمولاً کدام مسائل را معرفی می کند.
این فصل اهمیت استفاده از اصول و استانداردهای صحیح را برای دستیابی به مزایای کلیدی معماری میکروسرویس برجسته میکند و بر نقش زبان برنامهنویسی Go بهعنوان یکی از محبوبترین زبانها برای توسعه میکروسرویس تأکید میکند و برای فصلهای بعدی پایهگذاری میکند. از کتاب. جنبه های اساسی توسعه میکروسرویس Go شامل داربست سرویس، کشف سرویس، سریال سازی داده ها، ارتباطات همزمان و ناهمزمان، استقرار، و هماهنگ سازی و آزمایش است. بخش در درجه اول بر جنبه های توسعه تمرکز دارد در حالی که بخش بعدی موضوعات تعمیر و نگهداری و قابلیت اطمینان را پوشش می دهد. بخش آخر موضوعات پیشرفته تر توسعه میکروسرویس Go از جمله قابلیت اطمینان سیستم، قابلیت مشاهده، قابلیت نگهداری و مقیاس پذیری را پوشش می دهد.
این بخش شامل بسیاری از بهترین شیوهها و مثالها است که نحوه اعمال ایدههای کلیدی را در برنامههای کاربردی موجود نشان میدهد، با استفاده از دو برنامه کاربردی که در قسمت قبل به عنوان نمونه وجود دارد.
آنچه خواهید آموخت
آموزش ساخت میکروسرویس های مقیاس پذیر و قابل اعتماد Go
با بهترین شیوه ها و راه حل های صنعت در توسعه میکروسرویس آشنا شوید
تکنیک های پیشرفته قابلیت اطمینان میکروسرویس را بیاموزید
کشف سرویس در محیط میکروسرویس ها را درک کنید
اصول قابلیت اطمینان و مشاهده پذیری را کاوش کنید
این کتاب برای چه کسی است
این کتاب برای همه نوع توسعهدهندگان است: از افرادی که علاقهمند به یادگیری نحوه نوشتن میکروسرویسها و برنامههای کاربردی در Go گرفته تا متخصصان باتجربه که میخواهند گام بعدی را در تسلط بر هنر نوشتن سیستمهای مبتنی بر میکروسرویس مقیاسپذیر و قابل اعتماد بردارند.
فهرست مطالب
مقدمه ای بر میکروسرویس ها
داربست یک میکروسرویس Go
کشف خدمات
سریال سازی
ارتباط همزمان
ارتباط ناهمزمان
استقرار و ارکستراسیون
تست واحد و ادغام
بررسی اجمالی قابلیت اطمینان
قابلیت مشاهده
راه اندازی هشدار سرویس
موضوعات پیشرفته
فهرست مطالب :
Cover
Title Page
Copyright and Credits
Contributors
Table of Contents
Preface
Part 1: Introduction
Chapter 1: Introduction to Microservices
What is a microservice?
Motivation to use microservices
Pros and cons of microservices
Benefits of microservices
Common issues of microservices
When to use microservice architecture
Role of Go in microservice development
Summary
Further reading
Part 2: Foundation
Chapter 2: Scaffolding a Go Microservice
Technical requirements
Go basics
Core principles
Writing idiomatic Go code
Interfaces
Tests
Context
Project structure
Private packages
Public packages
Executable packages
Other commonly used directories
Common files
Best practices
Scaffolding an example application
Movie application
Application code structure
Movie metadata service
Movie service
Summary
Further reading
Chapter 3: Service Discovery
Technical requirements
Service discovery overview
Registry
Service discovery models
Service health monitoring
Service discovery solutions
HashiCorp Consul
Kubernetes
Adopting service discovery
Preparing the application
Implementing the discovery logic
Using the discovery logic
Summary
Further reading
Chapter 4: Serialization
Technical requirements
The basics of serialization
Popular serialization formats
Using Protocol Buffers
Best practices for serialization
Summary
Further reading
Chapter 5: Synchronous Communication
Technical requirements
Introduction to synchronous communication
Go RPC frameworks and libraries
Defining a service API using Protocol Buffers
Implementing gateways and clients
Metadata service
Rating service
Movie service
Summary
Further reading
Chapter 6: Asynchronous Communication
Technical requirements
Asynchronous communication basics
Benefits and challenges of asynchronous communication
Techniques and patterns of asynchronous communication
Using Apache Kafka for messaging
Adopting Kafka for our microservices
Asynchronous communication best practices
Versioning
Leveraging partitioning
Summary
Further reading
Chapter 7: Storing Service Data
Technical requirements
Introduction to database
Using MySQL to store our service data
Summary
Further reading
Chapter 8: Deployment with Kubernetes
Technical requirements
Preparing application code for deployments
Deployment basics
Application configuration
Deploying via Kubernetes
Introduction to Kubernetes
Setting up our microservices for Kubernetes deployments
Deployment best practices
Automated rollbacks
Canary deployments
Replace with Continuous Deployment (CD)
Summary
Further reading
Chapter 9: Unit and Integration Testing
Technical requirements
Go testing overview
Unit tests
Mocking
Implementing unit tests
Integration tests
Testing best practices
Using helpful messages
Avoiding the use of Fatal in your logs
Making a comparison using a cmp library
Summary
Further reading
Part 3: Maintenance
Chapter 10: Reliability Overview
Technical requirements
Reliability basics
Achieving reliability through automation
Communication error handling
Graceful shutdown
Achieving reliability through development processes and culture
On-call process
Incident management
Reliability drills
Summary
Further reading
Chapter 11: Collecting Service Telemetry Data
Technical requirements
Telemetry overview
Collecting service logs
Choosing the logging library
Using logging features
Storing microservice logs
Logging best practices
Collecting service metrics
Storing metrics
Popular Go metrics libraries
Emitting service metrics
Metrics best practices
Tracing
Tracing tools
Collecting tracing data with the OpenTelemetry SDK
Summary
Further reading
Chapter 12: Setting Up Service Alerting
Technical requirements
Alerting basics
Alerting use cases
Introduction to Prometheus
Setting up Prometheus alerting for our microservices
Alerting best practices
Summary
Further reading
Chapter 13: Advanced Topics
Technical requirements
Profiling Go services
Creating microservice dashboards
Frameworks
Storing microservice ownership data
Securing microservice communication with JWT
JWT basics
Implementing authentication and authorization with JWTs
Summary
Further reading
Index
Other Books You May Enjoy
توضیحاتی در مورد کتاب به زبان اصلی :
Mastering the art of Go microservice development
Key Features
Helps to create and organize well-structured Go microservices
Provides industry best practices and insights on Go microservice development tools, patterns, and solutions
Covers hands-on Golang examples in each chapter
Book Description
This book is covering the key benefits and common issues of microservices, helping the readers to understand which problems microservice architecture helps to solve and which issues it usually introduces.
The chapter highlights the importance of using the right principles and standards in order to achieve the key benefits of microservice architecture, emphasizing the role of the Go programming language as one of the most popular languages for microservice development and laying down the foundation for the next chapters of the book. The foundational aspects of Go microservice development include service scaffolding, service discovery, data serialization, synchronous and asynchronous communication, deployment, and orchestration and testing. The part is primarily focusing on the development aspects while the following part is covering maintenance and reliability topics. The last part is covering more advanced topics of Go microservice development including system reliability, observability, maintainability, and scalability.
The part includes lots of best practices and examples which illustrate how to apply the key ideas to the existing applications, using two applications scaffolded in the previous part as examples.
What you will learn
Learn to build scalable and reliable Go microservices
Get familiar with the industry’s best practices and solutions in microservice development
Learn the advanced microservice reliability techniques
Understand service discovery in the microservices environment
Explore reliability and observability principles
Who This Book Is For
This book is for all types of developers: from people interested in learning how to write microservices and applications in Go to seasoned professionals who want to take the next step in mastering the art of writing scalable and reliable microservice-based systems.
Table of Contents
Introduction to microservices
Scaffolding a Go microservice
Service discovery
Serialization
Synchronous communication
Asynchronous communication
Deployment and orchestration
Unit and Integration Testing
Reliability overview
Observability
Setting up Service Alerting
Advanced Topics