File: uwsgirouter3.py

package info (click to toggle)
uwsgi 2.0.31-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 6,624 kB
  • sloc: ansic: 87,072; python: 7,010; cpp: 1,133; java: 708; perl: 678; sh: 585; ruby: 555; makefile: 148; xml: 130; cs: 121; objc: 37; php: 28; erlang: 20; javascript: 11
file content (26 lines) | stat: -rw-r--r-- 458 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26

import uwsgi

current_node = 0


def application(e, s):

    global current_node

    nodes = uwsgi.cluster_nodes()
    print(nodes)

    if len(nodes) == 0:
        print("no cluster node available")
        raise StopIteration

    if current_node >= len(nodes):
        current_node = 0

    node = nodes[current_node]

    for part in uwsgi.send_message(node, 0, 0, e, 0, e['wsgi.input'].fileno(), uwsgi.cl()):
        yield part

    current_node += 1