跳转至

优秀的 Django 性能

性能分析

  • Django Silk - Silk 是一个用于 Django 框架的实时性能分析和检查工具。Silk 会拦截并存储 HTTP 请求和数据库查询,然后在用户界面中展示,以供进一步检查。
  • Django Debug Toolbar - 一个可配置的面板集,显示有关当前请求/响应的各种调试信息。
  • pyinstrument - Python 的调用堆栈分析器。告诉你为什么你的代码运行慢!
  • cProfile - cProfile 和 profile 提供 Python 程序的确定性性能分析。
  • dj-tracker - dj-tracker 是一个可以追踪你的查询,以帮助检测一些可能的性能优化的应用,这些优化在 数据库访问优化 中有所列出。

数据库


缓存

  • django-cacheback - 使用 Celery 异步刷新缓存项的 Django 智能缓存。
  • django-memoize - 一个函数或方法结果的缓存。
  • django_model_cached_property - 对于在请求期间对象生命周期更长的属性结果的缓存非常有用。
  • django-cacheops - 一个带有自动精细的事件驱动失效的 ORM 缓存。
  • django-cachalot - 缓存你的 Django ORM 查询并自动使它们失效。
  • django-cache-machine - 通过 ORM 自动缓存和失效 Django 模型。
  • django-request-cache - 一个 Django 应用,为每个请求对象提供新的缓存。缓存仅在请求/响应周期内保持。
  • django-ormcache - 一个缓存管理器混入,为 ORM 提供一些对象的缓存。
  • Varnish Cache - 一个 web 应用加速器,也被称为缓存 HTTP 反向代理。
  • PolyScale.ai - 一个高性能的数据传输网络(DDN),可加速数据库。使用智能缓存,它可以提高查询性能,降低延迟,并使数据访问和扩展工程变得轻松,无论是在本地还是在边缘。

序列化

  • drf_orjson_renderer - 使用 orjson 库的 Django Rest Framework 的 JSON 渲染器和解析器。orjson 由 Rust 支持,安全、正确且快速。
  • Django Compression Middleware - Django 中间件,使用 Zstandard、Brotli 和 gzip 等算法压缩响应。
  • serpy - 一个超简单的对象序列化框架,专为速度而构建。
  • django-rest-marshmallow - Django REST 框架的 Marshmallow 架构。
  • marshmallow - 一个 ORM/ODM/框架无关的库,用于将复杂的数据类型,如对象,转换为和从原生 Python 数据类型。

任务

  • Celery - 分布式任务队列。
  • Celery Flower - Celery 分布式任务队列的实时监控和 web 管理工具。
  • django_dramatiq - 一个与 Dramatiq 集成的 Django 应用。
  • Django-RQ - 一个简单的应用,为 RQ (Redis Queue) 提供 django 集成。
  • Django Q - 一个为 Django 提供的多进程分布式任务队列。

服务器

  • gevents - 一个基于协程的 Python 网络库,使用 greenlet 在 libev 或 libuv 事件循环之上提供高级同步 API。

测试

  • Locust - 易于使用、可编程和可扩展的性能测试工具。
  • hey - HTTP 负载生成器,ApacheBench (ab) 的替代品。

监控

  • Sentry SDK - Sentry.io 的官方 Python SDK(提供 APM 服务)。
  • statsd - 方便但强大的统计聚合守护进程。
  • django-prometheus - 为 Prometheus.io 导出 Django 监控指标。
  • django-postgres-metrics - 一个 Django 应用,公开一系列 PostgreSQL 数据库指标。
  • Grafana - 在这里、那里或任何地方为你的数据运行仪表盘。
  • apm-agent-python - Elastic APM 的官方 Python 代理。
  • New Relic Python Agent - 用于性能监控和高级性能分析的 New Relic 的工具,可以对你的应用进行检测。

书籍