Python microservices development: build, test, deploy, and scale microservices in Python

Cover -- Copyright -- Credits -- About the Author -- About the Reviewer -- www.PacktPub.com -- Customer Feedback -- Table of Contents -- Preface -- Introduction -- Chapter 1: Understanding Microservices -- Origins of Service-Oriented Architecture -- The monolithic approach -- The microservice approa...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
1. Verfasser: Ziadé, Tarek (VerfasserIn)
Format: Buch
Sprache:English
Veröffentlicht: Birmingham ; Mumbai Packt 2017
Schlagworte:
Online-Zugang:http://vub.de/cover/data/isbn:9781785881114/medium/true/de/vub/cover.jpg
Zusammenfassung:Cover -- Copyright -- Credits -- About the Author -- About the Reviewer -- www.PacktPub.com -- Customer Feedback -- Table of Contents -- Preface -- Introduction -- Chapter 1: Understanding Microservices -- Origins of Service-Oriented Architecture -- The monolithic approach -- The microservice approach -- Microservice benefits -- Separation of concerns -- Smaller projects -- Scaling and deployment -- Microservices pitfalls -- Illogical splitting -- More network interactions -- Data storing and sharing -- Compatibility issues -- Testing -- Implementing microservices with Python -- The WSGI standard -- Greenlet and Gevent -- Twisted and Tornado -- asyncio -- Language performances -- Summary -- Chapter 2: Discovering Flask -- Which Python? -- How Flask handles requests -- Routing -- Variables and converters -- The url_for function -- Request -- Response -- Flask built-in features -- The session object -- Globals -- Signals -- Extensions and middlewares -- Templates -- Configuration -- Blueprints -- Error handling and debugging -- Custom error handler -- The debug mode -- A microservice skeleton -- Summary -- Chapter 3: Coding, Testing, and Documenting - the Virtuous Cycle -- Different kinds of tests -- Unit tests -- Functional tests -- Integration tests -- Load tests -- End-to-end tests -- Using WebTest -- Using pytest and Tox -- Developer documentation -- Continuous Integration -- Travis-CI -- ReadTheDocs -- Coveralls -- Summary -- Chapter 4: Designing Runnerly -- The Runnerly application -- User stories -- Monolithic design -- Model -- View and Template -- Background tasks -- Strava token -- Authentication and authorization -- Putting together the monolithic design -- Splitting the monolith -- Data Service -- Using Open API 2.0 -- More splitting -- Summary -- Chapter 5: Interacting with Other Services -- Synchronous calls
Using Session in a Flask app -- Connection pooling -- HTTP cache headers -- Improving data transfer -- GZIP compression -- Binary payloads -- Putting it together -- Asynchronous calls -- Task queues -- Topic queues -- Publish/subscribe -- RPC over AMQP -- Putting it together -- Testing -- Mocking synchronous calls -- Mocking asynchronous calls -- Mocking Celery -- Mocking other asynchronous calls -- Summary -- Chapter 6: Monitoring Your Services -- Centralizing logs -- Setting up Graylog -- Sending logs to Graylog -- Adding extra fields -- Performance metrics -- System metrics -- Code metrics -- Web server metrics -- Summary -- Chapter 7: Securing Your Services -- The OAuth2 protocol -- Token-based authentication -- The JWT standard -- PyJWT -- X.509 certificate-based authentication -- The TokenDealer microservice -- The POST/oauth/token implementation -- Using TokenDealer -- Web application firewall -- OpenResty - Lua and nginx -- Rate and concurrency limiting -- Other OpenResty features -- Securing your code -- Asserting incoming data -- Limiting your application scope -- Using Bandit linter -- Summary -- Chapter 8: Bringing It All Together -- Building a ReactJS dashboard -- The JSX syntax -- React components -- ReactJS and Flask -- Using Bower, npm, and Babel -- Cross-origin resource sharing -- Authentication and authorization -- Interacting with Data Service -- Getting the Strava token -- JavaScript authentication -- Summary -- Chapter 9: Packaging and Running Runnerly -- The packaging toolchain -- A few definitions -- Packaging -- The setup.py file -- The requirements.txt file -- The MANIFEST.in file -- Versioning -- Releasing -- Distributing -- Running all microservices -- Process management -- Summary -- Chapter 10: Containerized Services -- What is Docker? -- Docker 101 -- Running Flask in Docker
The full stack - OpenResty, Circus and Flask -- OpenResty -- Circus -- Docker-based deployments -- Docker Compose -- Introduction to Clustering and Provisioning -- Summary -- Chapter 11: Deploying on AWS -- AWS overview -- Routing - Route53, ELB, and AutoScaling -- Execution - EC2 and Lambda -- Storage - EBS, S3, RDS, ElasticCache, and CloudFront -- Messaging - SES, SQS, and SNS -- Simple Email Service (SES) -- Simple Queue Service (SQS) -- Simple Notification Service (SNS) -- Provisioning and deployment - CloudFormation and ECS -- Deploying on AWS - the basics -- Setting up your AWS account -- Deploying on EC2 with CoreOS -- Deploying with ECS -- Route53 -- Summary -- Chapter 12: What Next? -- Iterators and generators -- Coroutines -- The asyncio library -- The aiohttp framework -- Sanic -- Asynchronous versus synchronous -- Summary -- Index
Beschreibung:v, 324 Seiten Illustrationen 189 x 236 x 25
ISBN:9781785881114

Es ist kein Print-Exemplar vorhanden.

Fernleihe Bestellen Achtung: Nicht im THWS-Bestand!