Re: Inviting feedback on my proposed "ASGI" spec
Ionel Maries Cristian <[email protected]> Thu, 10 Mar 2016 16:46:39 +0200
| Newsgroups | gmane.comp.python.web |
|---|---|
| Message-ID | <CANkHFr9emQ9ZKrb=QV50Vs6osdeF9_HF4Kg=9A09773Z_mM+3g@mail.gmail.com> |
--===============6138913961517477877== Content-Type: multipart/alternative; boundary=001a11c3b8a4f44557052db2e2d4 --001a11c3b8a4f44557052db2e2d4 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Hey, On Thu, Mar 10, 2016 at 2:34 AM, Andrew Godwin <[email protected]> wrote: > Helpful quick Q&A: http://channels.readthedocs.org/en/latest/inshort.html > I have looked over that and it's not very clear what goes where. [1] I'd be inclined to understand that the process type "that handles HTTP and WebSockets" would be some sort of specialized proxy service that does the websocket routing, proxying plain requests to the worker (for the regular views) and specific frontend protocol handling (upgrading to http2.0/websockets or whatever). It would be more clear if the docs would include some diagrams illustrating data flow and how all the components connect together with what protocols. Shouldn't the process type "that handles HTTP and WebSockets" have a more specific term? It's a bit long to type. Spec is up here: http://channels.readthedocs.org/en/latest/asgi.html > Is ASGI a wire protocol? I'd assume it is, if multiple processes communicate to each other with this protocol, but the docs don't have any details about the exact wire format. Also, some comparison to existing solutions (like Meteor/SockJS/Crossbar <http://crossbar.io/>/WAMP <http://wamp-proto.org/>) would help clearing lots of questions. =E2=80=8B[1] Sorry if it sounds harsh, certainly not the intention. I'm jus= t a bit confused/overwhelmed.=E2=80=8B Thanks, -- Ionel Cristian M=C4=83rie=C8=99, http://blog.ionelmc.ro --001a11c3b8a4f44557052db2e2d4 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable <div dir=3D"ltr"><div class=3D"gmail_default" style=3D"font-family:trebuche= t ms,sans-serif"><div class=3D"gmail_quote">Hey,<br><br>On Thu, Mar 10, 201= 6 at 2:34 AM, Andrew Godwin <span dir=3D"ltr"><<a href=3D"mailto:andrew@= aeracode.org" target=3D"_blank">[email protected]</a>></span> wrote:<b= r><blockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;borde= r-left:1px solid rgb(204,204,204);padding-left:1ex"><div>Helpful quick Q&am= p;A:=C2=A0<a href=3D"http://channels.readthedocs.org/en/latest/inshort.html= " target=3D"_blank">http://channels.readthedocs.org/en/latest/inshort.html<= /a></div></blockquote></div><br><div class=3D"gmail_default" style=3D"font-= family:trebuchet ms,sans-serif">I have looked over that and it's not ve= ry clear what goes where. [1] I'd be inclined to understand that the process type "that handles HTTP an= d=20 WebSockets" would be some sort of specialized proxy service that does= =20 the websocket routing, proxying plain requests to the worker (for the=20 regular views) and specific frontend protocol handling (upgrading to=20 http2.0/websockets or whatever). <br></div><div class=3D"gmail_default" sty= le=3D"font-family:trebuchet ms,sans-serif">It would be more clear if the docs would include some diagrams=20 illustrating data flow and how all the components connect together with=20 what protocols.<br><br></div><div class=3D"gmail_default" style=3D"font-fam= ily:trebuchet ms,sans-serif">Shouldn't the process type "that hand= les HTTP and WebSockets" have a more specific term? It's a bit lon= g to type.<br><br><blockquote style=3D"margin:0px 0px 0px 0.8ex;border-left= :1px solid rgb(204,204,204);padding-left:1ex" class=3D"gmail_quote">Spec is= up here:=C2=A0<a href=3D"http://channels.readthedocs.org/en/latest/asgi.ht= ml" target=3D"_blank">http://channels.readthedocs.org/en/latest/asgi.html</= a><br></blockquote></div><div class=3D"gmail_default" style=3D"font-family:= trebuchet ms,sans-serif"><br>Is ASGI a wire protocol? I'd assume it is, if multiple processes=20 communicate to each other with this protocol, but the docs don't have= =20 any details about the exact wire format.<br></div><div class=3D"gmail_defau= lt" style=3D"font-family:trebuchet ms,sans-serif"><br></div><div class=3D"g= mail_default" style=3D"font-family:trebuchet ms,sans-serif">Also, some comp= arison to existing solutions (like Meteor/SockJS/<a href=3D"http://crossbar= .io/" target=3D"_blank">Crossbar</a>/<a href=3D"http://wamp-proto.org/" tar= get=3D"_blank">WAMP</a>) would help clearing lots of questions.<br></div><s= pan style=3D"font-family:trebuchet ms,sans-serif"><span style=3D"color:rgb(= 51,51,51)"><br><div class=3D"gmail_default" style=3D"font-family:trebuchet = ms,sans-serif;display:inline">=E2=80=8B[1] Sorry if it sounds harsh, certai= nly not the intention. I'm just a bit confused/overwhelmed.=E2=80=8B<br= ><br><span style=3D"font-family:trebuchet ms,sans-serif"><span style=3D"col= or:rgb(51,51,51)"><font size=3D"2"><span style=3D"color:rgb(51,51,51)">Than= ks,</span><br><span style=3D"color:rgb(153,153,153)">-- Ionel</span></font>= </span><font size=3D"2"><font style=3D"color:rgb(153,153,153)"> Cristian M= =C4=83rie=C8=99, <a href=3D"http://blog.ionelmc.ro" target=3D"_blank">http:= //blog.ionelmc.ro</a></font></font></span></div></span></span></div></div> --001a11c3b8a4f44557052db2e2d4-- --===============6138913961517477877== Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ Web-SIG mailing list [email protected] Web SIG: http://www.python.org/sigs/web-sig Unsubscribe: https://mail.python.org/mailman/options/web-sig/gcpw-web-sig%40m.gmane.org --===============6138913961517477877==--