Add vortrag9
This commit is contained in:
28
vortrag9_webassembly_serverseitig.md
Normal file
28
vortrag9_webassembly_serverseitig.md
Normal file
@@ -0,0 +1,28 @@
|
||||
# Webassembly auf der Serverseite
|
||||
- Ansprache in Sächsisch
|
||||
- Webassembly: Geschichte
|
||||
- 1996: JavaScript 1.0: Oh oh
|
||||
- 2009: NodeJS: Frontend, Backend, Desktop
|
||||
- JS pros: Man hat überall einen Browser, läuft überall
|
||||
- JS cons: Langsam, es ist JavaScript.
|
||||
- 2017: WASM 1.0, Browser als Compiletarget
|
||||
- WASM pros: gleiche Vorteile, ist schneller, kein JavaScript.
|
||||
- Wie funktioniert Webassembly?
|
||||
- Code in beliebiger Sprache schreiben.
|
||||
- Bester Support: C, C++, Rust, C#
|
||||
- Compilen zu wasm32-x target
|
||||
- Frontend bauen ohne JavaScript: DOM mit wasm-bindgen importieren
|
||||
- Strings werden in gemeinsam allozierten Speicher raw reingeschrieben, um zwischen Sprachen auszutauschen.
|
||||
- Yew, Sicamore, Leptos für Rust wasm Frontend
|
||||
- Backend mit Webassembly? Warum?
|
||||
- WASM 4 cloud: Sandboxing, portabel (JITC Bytecode), schnell
|
||||
- WASM Laufzeit außerhalb des Brpwsers: Wasmtime, Wasmer, WasmEdge
|
||||
- Kann man für Plugin Systeme nutzen
|
||||
- Component Modell: wie definiert man Interfaces und wie tauscht man Daten aus?
|
||||
- Eigenes Spec Format für Interfaces: WIT
|
||||
- WIT definiert alle Interfaces und man implementiert dann das WIT in der Sprache
|
||||
- Was ist Wasi?
|
||||
- nutze WIT, um Host Interaktionen zu definieren.
|
||||
- Es gibt wie gesagt fertige Runtimes aber auch CLIs, um Programme einmal aufzurufen
|
||||
- Es gibt spin http component. Man kann damit webservice mit WASM Runtime bauen. Ungefähr wie Java Springboot
|
||||
- Kann man als containerd-shim deployen.
|
Reference in New Issue
Block a user