I think you can do conditionals on your server block and proxy pass to the correct upstream depending on your logic
On Thu, Jan 19, 2017 at 2:18 PM, Dev App <[email protected]> wrote: > There's not individual documentation for every situation because people's >> choice of webserver and their OS versions and environments differ. If you >> tell me what you're using I can try and provide some hints or links to >> examples. > > > I thought it would be easy now, since I understand the concept better, but > it still wasn't easy. > > > From django channels documentation > >> >> the ideal thing is to be able to look for the Upgrade: WebSocket header >> and distinguish connections by this > > > > So wha I need is in pseudo code, > > if Upgrade: WebSocket is present, > hand over requests to asgi (darphene) > else > hand over requests to wsgi (uwsgi) > > I failed to find an example. > So yes, please let me know how to do the dual setup with nginx in the > front. > > I found https://www.nginx.com/blog/websocket-nginx/ but not readily > applicable because the example there seems to > proxy every requests. > > 2017년 1월 19일 목요일 오전 3시 40분 0초 UTC+9, Andrew Godwin 님의 말: > >> >> >> On Wed, Jan 18, 2017 at 12:33 AM, Dev App <[email protected]> wrote: >> >>> >>> I hope there 's a documentation how to do "running-asgi-alongside-wsgi" >>> https://channels.readthedocs.io/en/stable/deploying.html#run >>> ning-asgi-alongside-wsgi >>> (I tried google, but none found for how to do it) >>> >>> I'm just afraid to hand over every request to asgi which I don't know >>> much about. >>> >> >> There's not individual documentation for every situation because people's >> choice of webserver and their OS versions and environments differ. If you >> tell me what you're using I can try and provide some hints or links to >> examples. >> >> >>> >>> I have another question. >>> >>> I'd like to send notification to websocket client when some signal >>> (post-save, etc) occurs. >>> >>> For instance, if user-a starts following user-b (post-save signal >>> occurs), (and this happens over wsgi, normal django), >>> I'd like to send notification to user-b through websocket. >>> >>> Is the above usage possible with wsgi/asgi dual setup? >>> >>> >> Yes, the dual setup still lets you send messages to channels from WSGI >> workers, just not act on them. >> >> >>> >>> I didn't fully understand interface-server/channel-backend/workers >>> concept. >>> A single image could help people like me. >>> >>> I wonder if the following is correct? >>> >>> nginx --- wsgi -------------- django >>> / >>> nginx --- asgi --- redis ---/ >>> >>> asgi is interface-server >>> redis is channel-backend >>> django is workers >>> >>> >> That's not quite right, but close - the ASGI and WSGI workers live in >> different places, because the ASGI ones are a separate process using >> runworker and the WSGI ones run inside your WSGI server, and both can talk >> to the channel layer (redis in your example). >> >> Any Python code can send to a channel - WSGI workers, management >> commands, etc. You can just only act on messages on channels inside workers >> or async code you write yourself. >> >> Andrew >> > -- > You received this message because you are subscribed to the Google Groups > "Django users" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > To post to this group, send email to [email protected]. > Visit this group at https://groups.google.com/group/django-users. > To view this discussion on the web visit https://groups.google.com/d/ > msgid/django-users/3e352bf8-0ced-4ac3-94e3-fa28ced84d66%40googlegroups.com > <https://groups.google.com/d/msgid/django-users/3e352bf8-0ced-4ac3-94e3-fa28ced84d66%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 users" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at https://groups.google.com/group/django-users. To view this discussion on the web visit https://groups.google.com/d/msgid/django-users/CAFWa6tL_wazx5Nn%3DSXwsi_OWEFhV9m9fsMEbdSvR8s77k%3DKdjw%40mail.gmail.com. For more options, visit https://groups.google.com/d/optout.

