ورود به حساب

نام کاربری گذرواژه

گذرواژه را فراموش کردید؟ کلیک کنید

حساب کاربری ندارید؟ ساخت حساب

ساخت حساب کاربری

نام نام کاربری ایمیل شماره موبایل گذرواژه

برای ارتباط با ما می توانید از طریق شماره موبایل زیر از طریق تماس و پیامک با ما در ارتباط باشید


09117307688
09117179751

در صورت عدم پاسخ گویی از طریق پیامک با پشتیبان در ارتباط باشید

دسترسی نامحدود

برای کاربرانی که ثبت نام کرده اند

ضمانت بازگشت وجه

درصورت عدم همخوانی توضیحات با کتاب

پشتیبانی

از ساعت 7 صبح تا 10 شب

دانلود کتاب Microservice APIs: Using Python, Flask, FastAPI, OpenAPI and more

دانلود کتاب API های Microservice: استفاده از Python، Flask، FastAPI، OpenAPI و موارد دیگر

Microservice APIs: Using Python, Flask, FastAPI, OpenAPI and more

مشخصات کتاب

Microservice APIs: Using Python, Flask, FastAPI, OpenAPI and more

ویرایش: [1 ed.] 
نویسندگان:   
سری:  
ISBN (شابک) : 1617298417, 9781617298417 
ناشر: Manning Publications 
سال نشر: 2023 
تعداد صفحات: 440
[442] 
زبان: English 
فرمت فایل : PDF (درصورت درخواست کاربر به PDF، EPUB یا AZW3 تبدیل می شود) 
حجم فایل: 7 Mb 

قیمت کتاب (تومان) : 41,000



ثبت امتیاز به این کتاب

میانگین امتیاز به این کتاب :
       تعداد امتیاز دهندگان : 8


در صورت تبدیل فایل کتاب Microservice APIs: Using Python, Flask, FastAPI, OpenAPI and more به فرمت های PDF، EPUB، AZW3، MOBI و یا DJVU می توانید به پشتیبان اطلاع دهید تا فایل مورد نظر را تبدیل نمایند.

توجه داشته باشید کتاب API های Microservice: استفاده از Python، Flask، FastAPI، OpenAPI و موارد دیگر نسخه زبان اصلی می باشد و کتاب ترجمه شده به فارسی نمی باشد. وبسایت اینترنشنال لایبرری ارائه دهنده کتاب های زبان اصلی می باشد و هیچ گونه کتاب ترجمه شده یا نوشته شده به فارسی را ارائه نمی دهد.


توضیحاتی در مورد کتاب API های Microservice: استفاده از Python، Flask، FastAPI، OpenAPI و موارد دیگر

استراتژی‌ها، بهترین شیوه‌ها و الگوهایی که به شما کمک می‌کنند معماری میکروسرویس‌های انعطاف‌پذیر طراحی کنید و ادغام‌های API خود را ساده کنید. در Microservice API ها، خواهید دید: • استراتژی های تجزیه خدمات برای میکروسرویس ها • توسعه مبتنی بر اسناد برای APIها • بهترین شیوه ها برای طراحی REST و GraphQL API • مستندسازی APIهای REST با مشخصات OpenAPI (Swagger سابق) • مستندسازی APIهای GraphQL با استفاده از زبان تعریف طرحواره • ساخت API های میکروسرویس با Flask، FastAPI، Ariadne، و سایر فریم ورک ها • الگوهای اجرای سرویس برای سرویس‌های با اتصال آزاد • آزمایش مبتنی بر ویژگی برای اعتبارسنجی APIهای شما، و استفاده از چارچوب‌های تست خودکار API مانند schemathesis و Dredd • افزودن احراز هویت و مجوز به APIهای میکروسرویس با استفاده از OAuth و OpenID Connect (OIDC) • استقرار و راه اندازی میکروسرویس ها در AWS با Docker و Kubernetes Microservice APIs به شما تکنیک‌های عملی برای طراحی میکروسرویس‌های قوی با API‌هایی را می‌آموزد که درک، مصرف و نگهداری آن آسان است. شما از سالها تجربه نویسنده خوزه هارو پرالتا در آزمایش معماری میکروسرویس ها، طفره رفتن از دام ها و یادگیری از اشتباهاتی که مرتکب شده است، بهره مند خواهید شد. در داخل، استراتژی‌هایی برای ارائه یکپارچه‌سازی API موفق، پیاده‌سازی خدمات با مرزهای واضح، مدیریت استقرار ابر، و مدیریت امنیت میکروسرویس‌ها خواهید یافت. به روشی فریمورک-آگنوستیک نوشته شده است، اصول جهانی آن به راحتی می تواند در پشته و مجموعه ابزار مورد علاقه شما اعمال شود. در مورد تکنولوژی API های تمیز و شفاف برای موفقیت برنامه های میکروسرویس ضروری هستند. APIهای خوب طراحی شده، ادغام قابل اعتماد بین سرویس‌ها را ممکن می‌سازند و به ساده‌سازی نگهداری، مقیاس‌بندی و طراحی مجدد کمک می‌کنند. این کتاب به شما الگوها، پروتکل‌ها و استراتژی‌هایی را که برای طراحی، ساخت و استقرار APIهای میکروسرویس REST و GraphQL نیاز دارید، آموزش می‌دهد. درباره کتاب Microservice API تکنیک های اثبات شده ای را برای ایجاد و ساختن API هایی با مصرف آسان برای برنامه های کاربردی میکروسرویس جمع آوری می کند. این کتاب کاربردی که سرشار از توصیه های اثبات شده و مثال های مبتنی بر پایتون است، بر پیاده سازی بیش از فلسفه تمرکز دارد. شما یاد خواهید گرفت که چگونه API های میکروسرویس قوی بسازید، آنها را آزمایش و محافظت کنید، و آنها را با رعایت اصول و الگوهایی که در هر زبانی کار می کنند، در فضای ابری مستقر کنید. داخلش چیه • استراتژی های تجزیه خدمات برای میکروسرویس ها • بهترین روش ها برای طراحی و ساخت API های REST و GraphQL • الگوهای اجرای سرویس برای اجزای اتصال آزاد • مجوز API با OAuth و OIDC • استقرار با AWS و Kubernetes درباره خواننده برای توسعه دهندگانی که با اصول توسعه وب آشنا هستند. نمونه ها در پایتون هستند. درباره نویسنده خوزه هارو پرالتا مشاور، نویسنده و مربی است. او همچنین بنیانگذار microapis.io است.


توضیحاتی درمورد کتاب به خارجی

Strategies, best practices, and patterns that will help you design resilient microservices architecture and streamline your API integrations. In Microservice APIs, you'll discover: • Service decomposition strategies for microservices • Documentation-driven development for APIs • Best practices for designing REST and GraphQL APIs • Documenting REST APIs with the OpenAPI specification (formerly Swagger) • Documenting GraphQL APIs using the Schema Definition Language • Building microservices APIs with Flask, FastAPI, Ariadne, and other frameworks • Service implementation patterns for loosely coupled services • Property-based testing to validate your APIs, and using automated API testing frameworks like schemathesis and Dredd • Adding authentication and authorization to your microservice APIs using OAuth and OpenID Connect (OIDC) • Deploying and operating microservices in AWS with Docker and Kubernetes Microservice APIs teaches you practical techniques for designing robust microservices with APIs that are easy to understand, consume, and maintain. You'll benefit from author José Haro Peralta's years of experience experimenting with microservices architecture, dodging pitfalls and learning from mistakes he's made. Inside you'll find strategies for delivering successful API integrations, implementing services with clear boundaries, managing cloud deployments, and handling microservices security. Written in a framework-agnostic manner, its universal principles can easily be applied to your favorite stack and toolset. About the technology Clean, clear APIs are essential to the success of microservice applications. Well-designed APIs enable reliable integrations between services and help simplify maintenance, scaling, and redesigns. This book teaches you the patterns, protocols, and strategies you need to design, build, and deploy effective REST and GraphQL microservices APIs. About the book Microservice APIs gathers proven techniques for creating and building easy-to-consume APIs for microservices applications. Rich with proven advice and Python-based examples, this practical book focuses on implementation over philosophy. You'll learn how to build robust microservice APIs, test and protect them, and deploy them to the cloud following principles and patterns that work in any language. What's inside • Service decomposition strategies for microservices • Best practices for designing and building REST and GraphQL APIs • Service implementation patterns for loosely coupled components • API authorization with OAuth and OIDC • Deployments with AWS and Kubernetes About the reader For developers familiar with the basics of web development. Examples are in Python. About the author José Haro Peralta is a consultant, author, and instructor. He's also the founder of microapis.io.



فهرست مطالب

Microservice APIs
brief contents
contents
preface
acknowledgments
about this book
	Who should read this book?
	How this book is organized: A roadmap
	About the code
	liveBook discussion forum
	Other online resources
about the author
about the cover illustration
Part 1—Introducing Microservice APIs
	1 What are microservice APIs?
		1.1 What are microservices?
			1.1.1 Defining microservices
			1.1.2 Microservices vs. monoliths
			1.1.3 Microservices today and how we got here
		1.2 What are web APIs?
			1.2.1 What is an API?
			1.2.2 What is a web API?
			1.2.3 How do APIs help us drive microservices integrations?
		1.3 Challenges of microservices architecture
			1.3.1 Effective service decomposition
			1.3.2 Microservices integration tests
			1.3.3 Handling service unavailability
			1.3.4 Tracing distributed transactions
			1.3.5 Increased operational complexity and infrastructure overhead
		1.4 Introducing documentation-driven development
		1.5 Introducing the CoffeeMesh application
		1.6 Who this book is for and what you will learn
		Summary
	2 A basic API implementation
		2.1 Introducing the orders API specification
		2.2 High-level architecture of the orders application
		2.3 Implementing the API endpoints
		2.4 Implementing data validation models with pydantic
		2.5 Validating request payloads with pydantic
		2.6 Marshalling and validating response payloads with pydantic
		2.7 Adding an in-memory list of orders to the API
		Summary
	3 Designing microservices
		3.1 Introducing CoffeeMesh
		3.2 Microservices design principles
			3.2.1 Database-per-service principle
			3.2.2 Loose coupling principle
			3.2.3 Single Responsibility Principle
		3.3 Service decomposition by business capability
			3.3.1 Analyzing the business structure of CoffeeMesh
			3.3.2 Decomposing microservices by business capabilities
		3.4 Service decomposition by subdomains
			3.4.1 What is domain-driven design?
			3.4.2 Applying strategic analysis to CoffeeMesh
		3.5 Decomposition by business capability vs. decomposition by subdomain
		Summary
Part 2—Designing and building REST APIs
	4 Principles of REST API design
		4.1 What is REST?
		4.2 Architectural constraints of REST applications
			4.2.1 Separation of concerns: The client-server architecture principle
			4.2.2 Make it scalable: The statelessness principle
			4.2.3 Optimize for performance: The cacheability principle
			4.2.4 Make it simple for the client: The layered system principle
			4.2.5 Extendable interfaces: The code-on-demand principle
			4.2.6 Keep it consistent: The uniform interface principle
		4.3 Hypermedia as the engine of application state
		4.4 Analyzing the maturity of an API with the Richardson maturity model
			4.4.1 Level 0: Web APIs à la RPC
			4.4.2 Level 1: Introducing the concept of resource
			4.4.3 Level 2: Using HTTP methods and status codes
			4.4.4 Level 3: API discoverability
		4.5 Structured resource URLs with HTTP methods
		4.6 Using HTTP status codes to create expressive HTTP responses
			4.6.1 What are HTTP status codes?
			4.6.2 Using HTTP status codes to report client errors in the request
			4.6.3 Using HTTP status codes to report errors in the server
		4.7 Designing API payloads
			4.7.1 What are HTTP payloads, and when do we use them?
			4.7.2 HTTP payload design patterns
		4.8 Designing URL query parameters
		Summary
	5 Documenting REST APIs with OpenAPI
		5.1 Using JSON Schema to model data
		5.2 Anatomy of an OpenAPI specification
		5.3 Documenting the API endpoints
		5.4 Documenting URL query parameters
		5.5 Documenting request payloads
		5.6 Refactoring schema definitions to avoid repetition
		5.7 Documenting API responses
		5.8 Creating generic responses
		5.9 Defining the authentication scheme of the API
		Summary
	6 Building REST APIs with Python
		6.1 Overview of the orders API
		6.2 URL query parameters for the orders API
		6.3 Validating payloads with unknown fields
		6.4 Overriding FastAPI’s dynamically generated specification
		6.5 Overview of the kitchen API
		6.6 Introducing flask-smorest
		6.7 Initializing the web application for the API
		6.8 Implementing the API endpoints
		6.9 Implementing payload validation models with marshmallow
		6.10 Validating URL query parameters
		6.11 Validating data before serializing the response
		6.12 Implementing an in-memory list of schedules
		6.13 Overriding flask-smorest’s dynamically generated API specification
		Summary
	7 Service implementation patterns for microservices
		7.1 Hexagonal architectures for microservices
		7.2 Setting up the environment and the project structure
		7.3 Implementing the database models
		7.4 Implementing the repository pattern for data access
			7.4.1 The case for the repository pattern: What is it, and why is it useful?
			7.4.2 Implementing the repository pattern
		7.5 Implementing the business layer
		7.6 Implementing the unit of work pattern
		7.7 Integrating the API layer and the service layer
		Summary
Part 3—Designing and building GraphQL APIs
	8 Designing GraphQL APIs
		8.1 Introducing GraphQL
		8.2 Introducing the products API
		8.3 Introducing GraphQL’s type system
			8.3.1 Creating property definitions with scalars
			8.3.2 Modeling resources with object types
			8.3.3 Creating custom scalars
		8.4 Representing collections of items with lists
		8.5 Think graphs: Building meaningful connections between object types
			8.5.1 Connecting types through edge properties
			8.5.2 Creating connections with through types
		8.6 Combining different types through unions and interfaces
		8.7 Constraining property values with enumerations
		8.8 Defining queries to serve data from the API
		8.9 Altering the state of the server with mutations
		Summary
	9 Consuming GraphQL APIs
		9.1 Running a GraphQL mock server
		9.2 Introducing GraphQL queries
			9.2.1 Running simple queries
			9.2.2 Running queries with parameters
			9.2.3 Understanding query errors
		9.3 Using fragments in queries
		9.4 Running queries with input parameters
		9.5 Navigating the API graph
		9.6 Running multiple queries and query aliasing
			9.6.1 Running multiple queries in the same request
			9.6.2 Aliasing our queries
		9.7 Running GraphQL mutations
		9.8 Running parameterized queries and mutations
		9.9 Demystifying GraphQL queries
		9.10 Calling a GraphQL API with Python code
		Summary
	10 Building GraphQL APIs with Python
		10.1 Analyzing the API requirements
		10.2 Introducing the tech stack
		10.3 Introducing Ariadne
		10.4 Implementing the products API
			10.4.1 Laying out the project structure
			10.4.2 Creating an entry point for the GraphQL server
			10.4.3 Implementing query resolvers
			10.4.4 Implementing type resolvers
			10.4.5 Handling query parameters
			10.4.6 Implementing mutation resolvers
			10.4.7 Building resolvers for custom scalar types
			10.4.8 Implementing field resolvers
		Summary
Part 4—Securing, testing, and deploying microservice APIs
	11 API authorization and authentication
		11.1 Setting up the environment for this chapter
		11.2 Understanding authentication and authorization protocols
			11.2.1 Understanding Open Authorization
			11.2.2 Understanding OpenID Connect
		11.3 Working with JSON Web Tokens
			11.3.1 Understanding the JWT header
			11.3.2 Understanding JWT claims
			11.3.3 Producing JWTs
			11.3.4 Inspecting JWTs
			11.3.5 Validating JWTs
		11.4 Adding authorization to the API server
			11.4.1 Creating an authorization module
			11.4.2 Creating an authorization middleware
			11.4.3 Adding CORS middleware
		11.5 Authorizing resource access
			11.5.1 Updating the database to link users and orders
			11.5.2 Restricting user access to their own resources
		Summary
	12 Testing and validating APIs
		12.1 Setting up the environment for API testing
		12.2 Testing REST APIs with Dredd
			12.2.1 What is Dredd?
			12.2.2 Installing and running Dredd’s default test suite
			12.2.3 Customizing Dredd’s test suite with hooks
			12.2.4 Using Dredd in your API testing strategy
		12.3 Introduction to property-based testing
			12.3.1 What is property-based testing?
			12.3.2 The traditional approach to API testing
			12.3.3 Property-based testing with Hypothesis
			12.3.4 Using Hypothesis to test a REST API endpoint
		12.4 Testing REST APIs with Schemathesis
			12.4.1 Running Schemathesis’s default test suite
			12.4.2 Using links to enhance Schemathesis’ test suite
		12.5 Testing GraphQL APIs
			12.5.1 Testing GraphQL APIs with Schemathesis
		12.6 Designing your API testing strategy
		Summary
	13 Dockerizing microservice APIs
		13.1 Setting up the environment for this chapter
		13.2 Dockerizing a microservice
		13.3 Running applications with Docker Compose
		13.4 Publishing Docker builds to a container registry
		Summary
	14 Deploying microservice APIs with Kubernetes
		14.1 Setting up the environment for this chapter
		14.2 How Kubernetes works: The “CliffsNotes” version
		14.3 Creating a Kubernetes cluster with EKS
		14.4 Using IAM roles for Kubernetes service accounts
		14.5 Deploying a Kubernetes load balancer
		14.6 Deploying microservices to the Kubernetes cluster
			14.6.1 Creating a deployment object
			14.6.2 Creating a service object
			14.6.3 Exposing services with ingress objects
		14.7 Setting up a serverless database with AWS Aurora
			14.7.1 Creating an Aurora Serverless database
			14.7.2 Managing secrets in Kubernetes
			14.7.3 Running the database migrations and connecting our service to the database
		14.8 Updating the OpenAPI specification with the ALB’s hostname
		14.9 Deleting the Kubernetes cluster
		Summary
appendix A—Types of web APIs and protocols
	A.1 The dawn of APIs: RPC, XML-RPC, and JSON-RPC
	A.2 SOAP and the emergence of API standards
	A.3 RPC strikes again: Fast exchanges over gRPC
	A.4 HTTP-native APIs with REST
	A.5 Granular queries with GraphQL
appendix B—Managing an API’s life cycle
	B.1 Versioning strategies for evolving APIs
	B.2 Managing the life cycle of your APIs
appendix C—API authorization using an identity provider
	C.1 Using an identity as a service provider
	C.2 Using the PKCE authorization flow
	C.3 Using the client credentials flow
	C.4 Authorizing requests in the Swagger UI
index
	Symbols
	A
	B
	C
	D
	E
	F
	G
	H
	I
	J
	K
	L
	M
	N
	O
	P
	Q
	R
	S
	T
	U
	V
	W
	X
	Y




نظرات کاربران