พายุทอร์นาโด เป็นเว็บเซิร์ฟเวอร์และเฟรมเวิร์กที่ไม่ปิดกั้นซึ่งเขียนด้วยภาษา Python Tornado ถูกสร้างขึ้นเพื่อประสิทธิภาพสูงและสามารถรองรับการเชื่อมต่อถาวรที่เกิดขึ้นพร้อมกันได้นับหมื่นรายการ ทำให้เป็นโซลูชั่นที่ดีเยี่ยมสำหรับการจัดการคำขอโพลที่มีความยาว WebSockets และเว็บแอปพลิเคชันที่ต้องการการเชื่อมต่อที่ยาวนานกับผู้ใช้แต่ละคน Tornado ประกอบด้วยเว็บเฟรมเวิร์ก ไคลเอ็นต์ HTTP และเซิร์ฟเวอร์ ซึ่งใช้งานบนพื้นฐานของแกนเครือข่ายอะซิงโครนัสและไลบรารี Coroutine
ใหม่ในเวอร์ชันนี้:
- นี่เป็นรุ่นล่าสุดที่รองรับ Python 3.5 เวอร์ชันในอนาคตจะต้องใช้ Python 3.6+
- ล้อไบนารี่พร้อมใช้งานแล้วสำหรับ Windows, MacOS และ Linux (amd64 และ arm64)
httpclient.php
- ค่าเริ่มต้นเป็น User-Agent Tornado/$VERSION หากไม่ได้ระบุ user_agent
- tornado.simple_httpclient จะใช้ GET เสมอหลังจากการเปลี่ยนเส้นทาง 303
- ปิดการใช้งานการหมดเวลาโดยการตั้งค่า request_timeout และ/หรือ Connect_timeout เป็นศูนย์
httputil
- การแยกวิเคราะห์ส่วนหัวได้รับการเร่ง
- parse_body_arguments ตอนนี้ยอมรับอินพุตที่ไม่ใช่ ASCII พร้อมการหลบหนีบางส่วน
เว็บ
- RedirectHandler.get ยอมรับอาร์กิวเมนต์ที่มีชื่อแล้ว
- เมื่อส่งคำตอบ 304 ส่วนหัวจะถูกบันทึกมากขึ้น (รวมถึงอนุญาตด้วย)
- ขณะนี้ส่วนหัว Etag ถูกสร้างขึ้นโดยใช้ SHA-512 แทนที่จะเป็น MD5 ตามค่าเริ่มต้น
เว็บซ็อกเก็ต
- ตัวจับเวลา ping_interval จะหยุดลงเมื่อการเชื่อมต่อถูกปิด
- websocket_connect ทำให้เกิดข้อผิดพลาดเมื่อเปลี่ยนเส้นทางแทนที่จะค้าง
ที่มา: linux.org.ru