#37177: Performance issue in Async Middleware handling.
--------------------------------+---------------------------------------
Reporter: Carlton Gibson | Owner: Jacob Walls
Type: Bug | Status: assigned
Component: HTTP handling | Version: 6.0
Severity: Normal | Resolution:
Keywords: async | Triage Stage: Accepted
Has patch: 0 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
--------------------------------+---------------------------------------
Comment (by Mykhailo Havelia):
Replying to [comment:13 Jacob Walls]:
> Replying to [comment:7 Carlton Gibson]:
> > 1. Manually mark (affected) built in middleware as `async_capable =
False`
> > 2. Deprecate `MiddlewareMixin.__acall__` implementation.
> >
> > And that might be sufficient?
>
> I think we should just do 1., as IMO it's a bug in the core middleware,
and it's a reasonable user-duty to flip the flag when subclassing to
extend with async functionality. Small release note.
>
> I don't see why we have to do 2., `MiddlewareMixin` is public and
`__acall__` seems useful.
I was worried about two things.
- Backwards compatibility, for people who extend default Django
middlewares and rely on async_capable and/or __acall__.
- People who don't want to use threads but still want to use at least the
default CPU-bound Django middlewares.
To avoid breaking backwards compatibility, I couldn't find a better
solution than providing dedicated async middlewares. Anyway, we can split
it and do it step by step
--
Ticket URL: <https://code.djangoproject.com/ticket/37177#comment:16>
Django <https://code.djangoproject.com/>
The Web framework for perfectionists with deadlines.
--
You received this message because you are subscribed to the Google Groups
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion visit
https://groups.google.com/d/msgid/django-updates/0107019ee0bb7a83-b2e744d6-f475-4e0c-91c9-fddbbe2c1928-000000%40eu-central-1.amazonses.com.