ฉันใช้งานเซิร์ฟเวอร์ Python Flask ซึ่งมีเส้นทางที่ลงทะเบียนไว้สองสามเส้นทาง (ดูตัวอย่างด้านล่าง) เส้นทางหนึ่งเปลี่ยนเส้นทางคำขอ HTTP ไปยังแอปพลิเคชัน WSGI สำหรับโปรเจ็กต์ของฉัน ฉันเปลี่ยนไปใช้เซิร์ฟเวอร์ NodeJS และสร้างเส้นทางใหม่เนื่องจาก Python ช้าเกินไปเนื่องจาก GIL
ฉันกำลังดำเนินการแปลงเส้นทาง WSGI เป็น NodeJS ด้วย แต่พบว่าไม่มีการรองรับมากนัก
โปรโตคอล WSGI อธิบายตัวแปรสภาพแวดล้อมบางอย่าง เช่น wsgi.url_scheme
แต่ใน Google ฉันไม่พบตัวอย่างหรือข้อมูลอ้างอิงใดๆ เกี่ยวกับตัวแปรดังกล่าวด้วย NodeJS (TS)
wsgi.url_scheme filetype:py 5,000 ครั้ง
wsgi.url_scheme filetype:ts 0 ครั้ง
wsgi.url_scheme filetype:js 0 ครั้ง
โหนด/TS
app.get("/wsgi", async function (req, res) {
var env = createWsgiEnvironmentFrom(req); <--- what I would need
var p = child_process.spawn('wsgi-test.exe', ["foo"],
{
stdio: [process.stdin, process.stdout, process.stderr],
env: {...env }
});
}
);
หลาม:
@app.route('/wsgi', methods=['POST', 'GET'])
def wsgi(path):
env = request.environ # already WSGI compatible
p = subprocess.Popen(args=["wsgi-test.exe", "foo"],
env=env,
...)
สิ่งนี้มีเหตุผลหรือไม่? ฉันคิดว่า Node ดีกว่าในการปรับขนาดการเชื่อมต่อขาเข้า ดังนั้นฉันรู้สึกประหลาดใจที่เห็นตัวอย่างเพียงเล็กน้อยหรือไม่มีเลยเมื่อใช้ร่วมกับ Node
ความช่วยเหลือใด ๆ ที่ชื่นชมอย่างมาก!