Building Production APIs with Python (Paperback)
Malte Eisenberg
Sold by CitiRetail, Stevenage, United Kingdom
AbeBooks Seller since 29 June 2022
New - Soft cover
Condition: New
Ships from United Kingdom to U.S.A.
Quantity: 1 available
Add to basketSold by CitiRetail, Stevenage, United Kingdom
AbeBooks Seller since 29 June 2022
Condition: New
Quantity: 1 available
Add to basketPaperback. Most FastAPI tutorials end where production begins.There's a gap - sometimes a chasm - between an API that works on a developer's laptop and an API that works at three in the morning under a load spike with one of the database replicas down. Most tutorials live on one side of that gap. This book lives on the other.FastAPI makes it pleasant to write the laptop version of an API: type hints become validation, docstrings become documentation, async functions become a real concurrency story. The framework removes so much friction that you can ship a working endpoint in twenty minutes. That is its great strength and, paradoxically, its trap - because shipping the laptop version to production is how every team rediscovers the same handful of issues: secrets in source files, an authentication flow that works only for the happy path, a cache invalidation strategy that turns into a herd of database queries the moment Redis blinks, a test suite that can't be run in CI, a deployment story that consists of one engineer who knows how to do it.This book attacks those failure modes head-on.Across twelve chapters and a single continuing project - the Articles & Users API - you build a service that has every capability production demands and none of the demo-code shortcuts that fail under real load. The project starts in Chapter 2 as a single file with two endpoints. By Chapter 12 it is a containerized service with JWT authentication, refresh-token rotation, optional MFA, per-user rate limiting, a two-tier cache, two API versions running in parallel, OpenAPI documentation, a passing test suite, an observability stack, and Kubernetes manifests.What you'll build: A typed, async-native API using FastAPI 0.115] and Pydantic v2JWT authentication with refresh-token rotation and reuse detectionMulti-factor auth (TOTP) with hashed backup codesRole-based access control and API key authenticationRedis-backed rate limiting that actually pipelines correctlyCache-aside with stampede protection - the failure mode no tutorial mentionsTwo API versions running side-by-side with a real deprecation lifecycleOpenAPI documentation consumers can actually useA test suite using modern httpx with ASGITransportPerformance work backed by profiling, not guessworkA production deployment with Docker, Kubernetes, OpenTelemetry, and graceful shutdownThis book is for you if: You're comfortable with Python and HTTP basics, but want to ship something beyond a tutorial demoYou've built an API that worked in development and broke in production - and want the patterns that prevent thatYou're tired of fragmented blog posts that show pieces but never the integrated wholeYou want one continuous project that grows from a single endpoint into a deployable serviceWhat this book is not: An exhaustive FastAPI reference, a Python tutorial, or a microservices manifesto. It's an opinionated field guide that names tradeoffs, picks sides, and ends every chapter pointing at what comes next.Stack (pinned in Appendix C): Python 3.12, FastAPI 0.115+, Pydantic 2.9+, SQLAlchemy 2.0 async, PyJWT, Redis 5+, httpx 0.27+, pytest 8+. Every example was tested against this exact stack.The companion code is free.Download the complete Articles & Users API repository - including Dockerfile, docker-compose stack, Kubernetes manifests, and a passing test suite - at the link printed on the About page.Take what is useful, argue with what is not, and ship the thing. This item is printed on demand. Shipping may be from our UK warehouse or from our Australian or US warehouses, depending on stock availability.
Seller Inventory # 9798195071813
There's a gap — sometimes a chasm — between an API that works on a developer's laptop and an API that works at three in the morning under a load spike with one of the database replicas down. Most tutorials live on one side of that gap. This book lives on the other.
FastAPI makes it pleasant to write the laptop version of an API: type hints become validation, docstrings become documentation, async functions become a real concurrency story. The framework removes so much friction that you can ship a working endpoint in twenty minutes. That is its great strength and, paradoxically, its trap — because shipping the laptop version to production is how every team rediscovers the same handful of issues: secrets in source files, an authentication flow that works only for the happy path, a cache invalidation strategy that turns into a herd of database queries the moment Redis blinks, a test suite that can't be run in CI, a deployment story that consists of one engineer who knows how to do it.
This book attacks those failure modes head-on.
Across twelve chapters and a single continuing project — the Articles & Users API — you build a service that has every capability production demands and none of the demo-code shortcuts that fail under real load. The project starts in Chapter 2 as a single file with two endpoints. By Chapter 12 it is a containerized service with JWT authentication, refresh-token rotation, optional MFA, per-user rate limiting, a two-tier cache, two API versions running in parallel, OpenAPI documentation, a passing test suite, an observability stack, and Kubernetes manifests.
An exhaustive FastAPI reference, a Python tutorial, or a microservices manifesto. It's an opinionated field guide that names tradeoffs, picks sides, and ends every chapter pointing at what comes next.
Python 3.12, FastAPI 0.115+, Pydantic 2.9+, SQLAlchemy 2.0 async, PyJWT, Redis 5+, httpx 0.27+, pytest 8+. Every example was tested against this exact stack.
Download the complete Articles & Users API repository — including Dockerfile, docker-compose stack, Kubernetes manifests, and a passing test suite — at the link printed on the About page.
Take what is useful, argue with what is not, and ship the thing.
"About this title" may belong to another edition of this title.
Orders can be returned within 30 days of receipt.
If you are a consumer you can withdraw from the contract in accordance with the following. Consumer means any natural person who is acting for purposes which are outside his trade, business, craft or profession.
Information regarding the right of withdrawal
Statutory right to withdraw
You have the right to withdraw from this contract within 14 days without giving any reason.
The withdrawal period will expire after 14 days from the day on which you acquire, or a third party other than the carrier and indicated by you acquires, physical possession of the last good or the last lot or piece.
To exercise the right of withdrawal, electronically fill in and submit a clear statement on our website, under "My Purchases" in "My Account". We will communicate to you an acknowledgement of receipt of such a withdrawal on a durable medium (e.g. by e-mail) without delay.
To meet the withdrawal deadline, it is sufficient for you to send your communication concerning your exercise of the right of withdrawal before the withdrawal period has expired.
Effects of withdrawal
If you withdraw from this contract, we will reimburse to you all payments received from you, including the costs of delivery (except for the supplementary costs arising if you chose a type of delivery other than the least expensive type of standard delivery offered by us).
We may make a deduction from the reimbursement for loss in value of any goods supplied, if the loss is the result of unnecessary handling by you.
We will make the reimbursement without undue delay, and not later than 14 days after the day on which we are informed about your decision to withdraw from this contract.
We will make the reimbursement using the same means of payment as you used for the initial transaction, unless you have expressly agreed otherwise; in any event, you will not incur any fees as a result of such reimbursement.
We may withhold reimbursement until we have received the goods back, or you have supplied evidence of having sent back the goods, whichever is the earliest.
You shall send back the goods or hand them over to CitiRetail, Stevenage, United Kingdom, without undue delay and in any event not later than 14 days from the day on which you communicate your withdrawal from this contract to us. The deadline is met if you send back the goods before the period of 14 days has expired. You will have to bear the direct cost of returning the goods. You are only liable for any diminished value of the goods resulting from the handling other than what is necessary to establish the nature, characteristics and functioning of the goods.
Exceptions to the right of withdrawal
The right of withdrawal does not apply to:
Please note that titles are dispatched from our US, Canadian or Australian warehouses. Delivery times specified in shipping terms. Orders ship within 2 business days. Delivery to your door then takes 7-14 days.
| Order quantity | 7 to 60 business days | 7 to 14 business days |
|---|---|---|
| First item | £ 37.00 | £ 37.00 |
Delivery times are set by sellers and vary by carrier and location. Orders passing through Customs may face delays and buyers are responsible for any associated duties or fees. Sellers may contact you regarding additional charges to cover any increased costs to ship your items.