Hi Cory,

I'll reply on the Web-SIG mailing list too, but as I've outlined elsewhere,
I don't think ASGI would be a suitable replacement for WSGI in the current
form; in particular, I suspect it will have a performance disadvantage,
though I've not quantified yet.

That said, if Django Channels does become the primary method for
communication with web clients, the only thing we would want out of WSGI 2
would be something that could easily plug into ASGI - that is, something
that supports WebSockets, can handle simultaneous connections with many
clients in the same thread via cooperative multitasking or similar, and
allows raw access to sockets. Given those things, an ASGI HTTP/WebSocket
protocol server could simply be a WSGI 2 application, allowing much better
code reuse.

I still believe in the ASGI model for protocols other than HTTP/WS, and for
background task handling, so I don't think I'd want to throw it away and
adopt WSGI 2 directly if it came along, but Django would definitely keep a
direct-WSGI mode for that as it always has.

Andrew

On Mon, Jan 4, 2016 at 9:14 AM, Marc Tamlyn <marc.tam...@gmail.com> wrote:

> Hi Cory,
>
> [Disclaimer - I don't suppose to speak for the whole community here, this
> is a personal opinion of how I see things]
>
> Django's wsgi handling code has remained largely unchanged for many years,
> so to answer the question of "what does Django itself need from new wsgi,
> ignoring channels", I'd suggest the answer is nothing - wsgi as is works
> well for me. As an application developer, I'd also mention that I've never
> had a need to dip into the wsgi objects at all, so I can't say I need a
> wsgi2 either. In short, the idea of wsgi2 doesn't excite me at all. Perhaps
> you could reiterate what the benefits would be to a common garden web
> developer?
>
> However, when you bring channels in it changes the topic quite
> significantly. I would definitely like channels' communication with the
> outside world to be as based on a stable, external python platform as
> possible, if only for the volume of code we need to maintain in Django.
>
> I hope that helps a bit..
>
> Marc
> On 4 Jan 2016 1:15 p.m., "Cory Benfield" <c...@lukasa.co.uk> wrote:
>
>> All,
>>
>> An effort has begun over in the PSF Web-SIG special interest group to
>> come up with a new version of the WSGI specification.
>> <https://mail.python.org/pipermail/web-sig/2016-January/005357.html> The
>> goal is to develop a successor to WSGI that will be more useful in the
>> development of modern, asynchronous web applications, with the goal of
>> making available all of the improvements in both HTTP and Python that have
>> come through in the years since PEP 333.
>>
>> As Django is one of the major users of WSGI, any attempt to specify a new
>> version without getting input from the Django community and development
>> team would be extremely foolish! This is therefore a request for input: I'd
>> like it very much if the Django development team could come up with a
>> response to the email linked earlier, indicating what the Django team would
>> like from a new version of WSGI and what you believe the priorities should
>> be. For obvious reasons there may not be consensus around this issue
>> amongst the Django developers, and that's fine: multiple submissions from
>> Django would be entirely acceptable.
>>
>> Trying to improve something as well-established as WSGI is going to be
>> extremely difficult, and it'll only work if communities like Django's step
>> up to help build something that we can all be proud of. I hope that you're
>> as excited by that idea as I am!
>>
>> A side note: I'm very aware of Andrew Godwin's work with channels, and it
>> may be that the Django community believes that that model is the future of
>> web programming in Python. If that's the case, then please *let us know*.
>> I personally don't believe that it's the right direction for WSGI, but I
>> may be wrong (I've been wrong before!).
>>
>> If you have any questions, please don't hesitate to ask. I'm looking
>> forward to working with you all!
>>
>> Cory
>>
>> --
>> You received this message because you are subscribed to the Google Groups
>> "Django developers (Contributions to Django itself)" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to django-developers+unsubscr...@googlegroups.com.
>> To post to this group, send email to django-developers@googlegroups.com.
>> Visit this group at https://groups.google.com/group/django-developers.
>> To view this discussion on the web visit
>> https://groups.google.com/d/msgid/django-developers/aea5f21c-20c7-49ab-a1ca-2376ca0b92f2%40googlegroups.com
>> <https://groups.google.com/d/msgid/django-developers/aea5f21c-20c7-49ab-a1ca-2376ca0b92f2%40googlegroups.com?utm_medium=email&utm_source=footer>
>> .
>> For more options, visit https://groups.google.com/d/optout.
>>
> --
> You received this message because you are subscribed to the Google Groups
> "Django developers (Contributions to Django itself)" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to django-developers+unsubscr...@googlegroups.com.
> To post to this group, send email to django-developers@googlegroups.com.
> Visit this group at https://groups.google.com/group/django-developers.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/django-developers/CAMwjO1HHJ35a3cXpUMmRGxKxUOXLrxutdLWuGOJJ72uAbW2ERg%40mail.gmail.com
> <https://groups.google.com/d/msgid/django-developers/CAMwjO1HHJ35a3cXpUMmRGxKxUOXLrxutdLWuGOJJ72uAbW2ERg%40mail.gmail.com?utm_medium=email&utm_source=footer>
> .
>
> For more options, visit https://groups.google.com/d/optout.
>

-- 
You received this message because you are subscribed to the Google Groups 
"Django developers  (Contributions to Django itself)" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-developers+unsubscr...@googlegroups.com.
To post to this group, send email to django-developers@googlegroups.com.
Visit this group at https://groups.google.com/group/django-developers.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-developers/CAFwN1uoEf2z1bWJD0%2BOvzzH3yhuv0j9p3MxY0Z2-1_XJvcKZWg%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to