Wagi는 WebAssembly 마이크로 서비스 및 웹 앱을 작성하기 가장 쉬운 방법입니다.
경고 : 이것은 실험 코드입니다. 개발자에 의해 생산 등급으로 간주되지 않으며 "지원되는"소프트웨어도 아닙니다.
Deislabs는 현재 많은 WASM 기술을 실험하고 있습니다. 이것은 webassembly의 한계를 클라우드 기반 런타임으로 테스트하도록 설계된 다양한 프로젝트 중 하나입니다.
Wagi를 사용하면 WebAssembly Wasi Binaries를 HTTP 핸들러로 실행할 수 있습니다. 몇 개의 헤더를 인쇄하는 "명령 줄"응용 프로그램을 작성하여 WASM32-WASI 로 컴파일하십시오. modules.toml 일치 URL에 항목을 WASM 모듈에 추가하십시오. 그게 다야.
WASM32-WASI 로 컴파일 할 수있는 모든 프로그래밍 언어를 사용할 수 있습니다.
와기를 시험해 보는 가장 빠른 방법은 다음과 같습니다. 자세한 내용은 문서를 확인하십시오.
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 이것은 http://localhost:3000 에서 Wagi를 시작합니다. 브라우저 나 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 파일에 추가하십시오. 다양한 언어로 WASM 모듈을 구축하는 방법은 Yo-Wasm 프로젝트를 확인하십시오.
Wagi는 WebAssembly를위한 CGI의 구현입니다. 즉, Wagi 모듈을 작성하는 것은 표준 출력으로 올바르게 형식화 된 컨텐츠를 전송하는 것만 큼 쉽습니다. 세부 사항을 이해하려면 공통 게이트웨이 인터페이스 1.1 사양을 읽으십시오.
다양한 언어로 된 예제는 Wagi 예제 저장소를 살펴보십시오.
"생산 등급"(프리 릴리스 프로젝트의 의미가 무엇이든) 모듈의 경우, Wagi Fileserver : 곡물로 작성된 파일 서버를 확인하고 WASM에 컴파일하고 WAGI에서 실행할 준비가되어 있습니다.
채팅하고 싶어? 우리는 Kubernetes Slack의 #Krustlet 채널에서 놀고 있습니다.
Wagi는 실험적이며 프로젝트 개선에 대한 기여를 환영합니다. 사실, 우리는 당신이 문서 의이 섹션을 읽고 있다는 것을 기쁘게 생각합니다!
버그 수정의 경우 :
리팩터 및 테스트의 경우 :
기능 :
이것은 실험적인 저장소이므로 대답하는 데 약간 느릴 수 있습니다.
이 프로젝트는 Microsoft 오픈 소스 행동 강령을 채택했습니다.
자세한 내용은 추가 질문이나 의견이 있으면 행동 강령 FAQ 또는 [email protected]에 문의하십시오.