Wagi เป็นวิธีที่ง่ายที่สุดในการเริ่มต้นเขียน Microservices WebAssembly และเว็บแอพ
คำเตือน: นี่คือรหัสทดลอง มันไม่ได้รับการพิจารณาเกรดการผลิตโดยนักพัฒนาซอฟต์แวร์ไม่ใช่ "สนับสนุน" ซอฟต์แวร์
Deislabs กำลังทดลองใช้เทคโนโลยี WASM จำนวนมากในขณะนี้ นี่เป็นหนึ่งในโครงการมากมาย (รวมถึง Krustlet) ที่ออกแบบมาเพื่อทดสอบขีด จำกัด ของ WebAssembly เป็นรันไทม์บนคลาวด์
Wagi ช่วยให้คุณเรียกใช้ WebAssembly WASI Binaries เป็น HTTP Handlers เขียนแอปพลิเคชัน "บรรทัดคำสั่ง" ที่พิมพ์ส่วนหัวสองสามส่วนและรวบรวมเป็น WASM32-WASI เพิ่มรายการไปยัง URL การจับคู่ modules.toml ไปยังโมดูล WASM แค่นั้นแค่นั้น
คุณสามารถใช้ภาษาการเขียนโปรแกรมใด ๆ ที่สามารถรวบรวมกับ WASM32-WASI
นี่คือวิธีที่เร็วที่สุดในการลอง Wagi สำหรับรายละเอียดให้ชำระเงินเอกสาร
tar -zxf wagi-VERSION-OS.tar.gzwagi --help หากคุณต้องการลองใช้การกำหนดค่าง่าย ๆ สองสามครั้งเราขอแนะนำให้โคลนที่เก็บนี้แล้วใช้ไดเรกทอรี examples :
$ wagi -c examples/modules.toml
No log_dir specified, using temporary directory /var/folders/hk/l1mlxz1x01x9yl33ll9vh9980000gp/T/.tmpx55XkJ for logs สิ่งนี้จะเริ่มต้น Wagi บน http://localhost:3000 ใช้เบราว์เซอร์หรือเครื่องมือเช่น curl เพื่อทดสอบ:
$ curl -v http://localhost:3000/hello/world
* Trying 127.0.0.1...
* TCP_NODELAY set
* Connected to localhost (127.0.0.1) port 3000 (#0)
> GET /hello/world HTTP/1.1
> Host: localhost:3000
> User-Agent: curl/7.64.1
> Accept: */*
>
< HTTP/1.1 200 OK
< content-type: text/html; charset=UTF-8
< content-length: 12
< date: Wed, 14 Oct 2020 22:00:59 GMT
<
hello world
* Connection #0 to host localhost left intact
* Closing connection 0
ในการเพิ่มโมดูลของคุณเองให้รวบรวมรหัสของคุณเป็นรูปแบบ wasm32-wasi และเพิ่มลงในไฟล์ modules.toml ตรวจสอบโครงการ YO-WASS ของเราเพื่อหาวิธีที่รวดเร็วในการสร้างโมดูล WASM ในหลากหลายภาษา
Wagi เป็นการใช้งานของ CGI สำหรับ webassembly นั่นหมายความว่าการเขียนโมดูล WAGI นั้นง่ายพอ ๆ กับการส่งเนื้อหาที่จัดรูปแบบอย่างถูกต้องไปยังเอาต์พุตมาตรฐาน หากคุณต้องการทำความเข้าใจรายละเอียดให้อ่านข้อมูลจำเพาะ Gateway Interface 1.1
ลองดูที่ที่เก็บตัวอย่าง Wagi สำหรับตัวอย่างในภาษาต่างๆ
สำหรับโมดูล "การผลิตเกรด" (ไม่ว่าจะเป็นอย่างไรสำหรับโครงการก่อนการเปิดตัว) ให้ชำระเงิน WAGI Fileserver: Fileserver ที่เขียนด้วยธัญพืชรวบรวมเป็น WASM และพร้อมที่จะทำงานใน Wagi
ต้องการแชท? เราออกไปเที่ยวในช่อง #KRUSTLET ของ Kubernetes Slack
Wagi เป็นการทดลองและเรายินดีต้อนรับการมีส่วนร่วมในการปรับปรุงโครงการ ในความเป็นจริงเรามีความยินดีที่คุณจะได้อ่านเอกสารส่วนนี้!
สำหรับการแก้ไขข้อผิดพลาด:
สำหรับ refactors และการทดสอบ:
สำหรับคุณสมบัติ:
เนื่องจากนี่เป็นพื้นที่เก็บข้อมูลทดลองเราอาจตอบช้าไปหน่อย
โครงการนี้ได้นำรหัสการดำเนินงานของ Microsoft โอเพ่นซอร์สมาใช้
สำหรับข้อมูลเพิ่มเติมโปรดดูจรรยาบรรณคำถามที่พบบ่อยหรือติดต่อ [email protected] พร้อมคำถามหรือความคิดเห็นเพิ่มเติมใด ๆ