Python Web Development With Sanic: An In-Depth Guide for Python Web Developers to Improve the Speed and Scalability of Web Applications

Adam Hopkins

Language: English

Publisher: Packt Publishing

Published: Mar 28, 2022

Description:

Build a performant and scalable web application using Sanic, along with maintaining clean code to fit your unique challenges and business requirements

Key Features

  • Expand your knowledge of web application architecture for building scalable web apps
  • Learn the core philosophies of performance and scalability from one of the creators of Sanic
  • Create a complete Python web app from scratch and learn to translate the knowledge you gain across various use cases

Book Description

Today's developers need something more powerful and customizable when it comes to web app development. They require effective tools to build something unique to meet their specific needs, and not simply glue a bunch of things together built by others. This is where Sanic comes into the picture. Built to be unopinionated and scalable, Sanic is a next-generation Python framework and server tuned for high performance.

This Sanic guide starts by helping you understand Sanic's purpose, significance, and use cases. You'll learn how to spot different issues when building web applications, and how to choose, create, and adapt the right solution to meet your requirements. As you progress, you'll understand how to use listeners, middleware, and background tasks to customize your application. The book will also take you through real-world examples, so you will walk away with practical knowledge and not just code snippets.

By the end of this web development book, you'll have gained the knowledge you need to design, build, and deploy high-performance, scalable, and maintainable web applications with the Sanic framework.

What you will learn

  • Understand the difference between WSGI, Async, and ASGI servers
  • Discover how Sanic organizes incoming data, why it does it, and how to make the most of it
  • Implement best practices for building reliable, performant, and secure web apps
  • Explore useful techniques for successfully testing and deploying a Sanic web app
  • Create effective solutions for the modern web, including task management, bot integration, and GraphQL
  • Identify security concerns and understand how to deal with them in your Sanic apps

Who this book is for

This book is for Python web developers who have basic to intermediate-level knowledge of how web technologies work and are looking to take their applications to the next level using the power of the Sanic framework. Working knowledge of Python web development along with frameworks such as Django and/or Flask will be helpful but is not required. A basic to intermediate-level understanding of Python 3, HTTP, RESTful API patterns, and modern development practices and tools, such as type annotations, pytest, and virtual environments will also be beneficial.

Table of Contents

  1. Introduction to Sanic and Async Frameworks
  2. Organizing a Project
  3. Routing and Intaking HTTP Requests
  4. Ingesting HTTP Data
  5. Building Response Handlers
  6. Operating Outside the Response Handler
  7. Dealing with Security Concerns
  8. Running a Sanic Server
  9. Best Practices to Improve Your Web Applications
  10. Implementing Common Use Cases with Sanic
  11. A Complete Real-World Example