1 option
Python microservices development : build efficient and lightweight microservices using the Python tooling ecosystem / Simon Fraser and Tarek Ziadé.
- Format:
- Book
- Author/Creator:
- Fraser, Simon, author.
- Ziadé, Tarek, author.
- Language:
- English
- Subjects (All):
- Python (Computer program language).
- Python (Computer program language)--Handbooks, manuals, etc.
- Physical Description:
- 1 online resource (311 pages)
- Edition:
- 2nd ed.
- Place of Publication:
- Birmingham : Packt Publishing, Limited, [2021]
- Summary:
- Utilize Python microservices to break down your app development into bitesize pieces and deploy them as cloud services.
- Contents:
- Cover
- Copyright
- Contributors
- Table of Contents
- Preface
- Chapter 1: Understanding Microservices
- The origins of service-oriented architecture
- The monolithic approach
- The microservice approach
- Microservice benefits
- Separation of concerns
- Smaller projects
- Scaling and deployment
- Pitfalls of microservices
- Illogical splitting
- More network interactions
- Data storing and sharing
- Compatibility issues
- Testing
- Implementing microservices with Python
- How web services work
- The WSGI standard
- Workers, threads, and synchronicity
- A worker pool approach
- Being asynchronous
- Twisted, Tornado, Greenlets, and Gevent
- Asynchronous Python
- Language performance
- Summary
- Chapter 2: Discovering Quart
- Making sure we have Python
- How Quart handles requests
- Routing
- Variables and converters
- The url_for function
- Request
- Response
- Quart's built-in features
- The session object
- Globals
- Signals
- Extensions and middleware
- Templates
- Configuration
- Blueprints
- Error handling
- Custom error handler
- A microservice skeleton
- Chapter 3: Coding, Testing, and Documentation: the Virtuous Cycle
- Different kinds of tests
- Unit tests
- Functional tests
- Integration tests
- Load tests
- End-to-end tests
- Using pytest and tox
- Developer documentation
- Tools for documentation
- Version control
- Continuous Integration and Continuous Deployment
- GitHub Actions
- Documentation
- Coveralls
- Badges
- Chapter 4: Designing Jeeves
- The Jeeves bot
- User stories
- Monolithic design
- Model
- View and template
- A human-readable view
- Slack workspaces
- Taking actions
- OAuth tokens
- Authentication and authorization
- Background tasks
- Putting together the monolithic design
- Chapter 5: Splitting the Monolith.
- Identifying potential microservices
- Code complexity and maintenance
- Metrics and Monitoring
- Logging
- Splitting a Monolith
- Feature Flags
- Refactoring Jeeves
- Workflow
- Chapter 6: Interacting with Other Services
- Calling other web resources
- Finding out where to go
- Environment variables
- Service discovery
- Transferring data
- HTTP cache headers
- GZIP compression
- Protocol Buffers
- MessagePack
- Putting it together
- Asynchronous messages
- Message queue reliability
- Basic queues
- Topic exchanges and queues
- Publish/subscribe
- Using OpenAPI
- Chapter 7: Securing Your Services
- The OAuth2 protocol
- X.509 certificate-based authentication
- Token-based authentication
- The JWT standard
- PyJWT
- Using a certificate with JWT
- The TokenDealer microservice
- The OAuth implementation
- Using TokenDealer
- Securing your code
- Limiting your application scope
- Untrusted incoming data
- Redirecting and trusting queries
- Sanitizing input data
- Using Bandit linter
- Dependencies
- Web application firewall
- OpenResty: Lua and nginx
- Rate and concurrency limiting
- Other OpenResty features
- Chapter 8: Making a Dashboard
- Building a ReactJS dashboard
- The JSX syntax
- React components
- Pre-processing JSX
- ReactJS and Quart
- Cross-origin resource sharing
- A note about Micro Frontends
- Getting the Slack token
- JavaScript authentication
- Chapter 9: Packaging and Running Python
- 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
- Chapter 10: Deploying on AWS
- What is Docker?.
- Introduction to Docker
- Running Quart in Docker
- Docker-based deployments
- Terraform
- Docker Compose
- Docker Swarm
- Kubernetes
- Chapter 11: What's Next?
- Automation
- Scaling
- Content Delivery Networks
- Multi-cloud deployments
- Lambda Functions
- Expanding monitoring
- Making promises
- Packt Page
- Other Books You May Enjoy
- Index.
- Notes:
- Description based on print version record.
- ISBN:
- 9781801079372
- 1801079374
- OCLC:
- 1273976578
The Penn Libraries is committed to describing library materials using current, accurate, and responsible language. If you discover outdated or inaccurate language, please fill out this feedback form to report it and suggest alternative language.