Die Beliebtheit der verschiedenen Programmiersprachen hat sich im Laufe der Jahre verändert, wobei jede Sprache ihre eigenen Stärken und Grenzen hat. In diesem Artikel werden wir einige der beliebtesten Sprachen und ihre Kompatibilität mit unserem PaaS näher beleuchten, darunter Go, Ruby, Python und - wer könnte es vergessen - Rust, der Star der Show.
Zunächst einmal hat Go mit seiner niedrigen Einstiegshürde, seinem sehr einfachen Gleichzeitigkeitsmodell und - was vielleicht noch wichtiger ist - seinem sehr einfachen Build-Chain- und Distributionsmodell (als einzelne Binärdatei) einige andere Sprachen verdrängt, als es auf den Plan trat.
Für diejenigen, die sich erinnern: DevOps war früher eine Ruby- und Python-Welt. Heute sind die meisten DevOps-Tools in Go geschrieben, darunter fast alle Container und Container-Laufzeiten sowie viele der verschiedenen Reverse-Proxies und API-Gateways. Ganz zu schweigen davon, dass Go wahrscheinlich auch Dinge verdrängt hat, die früher auf der JVM liefen - es gab kein Halten mehr.
Mit der Markenmacht (und der tatsächlichen Unterstützung) von Google wurde Go dann zu einer beliebten und weit verbreiteten Programmiersprache und ist inzwischen zu einer sehr produktiven Webanwendungssprache geworden. Viele Projekte, die früher in PHP geschrieben wurden, sind heute in Go - ein steiler Anstieg der Popularität, der an das rasante Wachstum in den glorreichen Tagen von Ruby erinnert.
Die Programmiersprache Rust, die aus Mozilla hervorging, jetzt aber eine eigene Sprache ist, hat sich dagegen viel langsamer durchgesetzt und ähnelt eher dem Wachstum von Python - langsam und stetig. Der Grund dafür könnte sein, dass die Einstiegshürde deutlich höher ist als bei Go, da man mehrere neue Konzepte lernen muss. Und als Programmiersprache bietet sie sowohl höhere Abstraktionen als auch mehr Details auf niedriger Ebene als Go.
In den letzten Jahren hat sich Rust als die de facto "andere" Systemprogrammiersprache etabliert und sogar langsam den Weg in den Linux-Kernel gefunden. Das Tooling und das Ökosystem sind gewachsen und viel zugänglicher geworden. Und von allen kompilierten Programmiersprachen da draußen hat sie die höflichsten und nützlichsten Fehlermeldungen zur Kompilierzeit - wer liebt das nicht?
Aber jetzt fangen wir an, Rust in freier Wildbahn als eine vernünftige Programmiersprache für Webserver zu sehen, wobei Frameworks wie Actix Web, Rocket und Axum an Popularität gewinnen. Und es gibt einige sehr interessante Dinge rund um Rust, die zum Kompilieren von Dingen in WebAssembly (WASM) verwendet werden - siehe zum Beispiel MailCrab, ein sehr cooler Mail-Testserver.
Es hat sich herausgestellt, dass Rust ein wirklich guter Kandidat für die Erstellung von hochleistungsfähigen Backend-Servern ist, und natürlich für die Erstellung und den Betrieb auf Ihrem bevorzugten PaaS. Wir haben sogar WASM als Kompilierungsziel für eine gute Maßnahme eingefügt.
Jetzt, wo Rust auf Upsun neben anderen bekannten Sprachen wie PHP, Node.js, Python, Go und vielen anderenunterstützt wird ,können Siesofort mit der Arbeit beginnen.
Im Folgenden erfahren Sie, wie Sie mit Rust auf Upsun loslegen können:
applications: app: type: 'rust:1' hooks: build: cargo build --release web: commands: start: './target/release/hello'
Keine Sorge, Sie müssen nicht die volle Rust-Version angeben, um loszulegen. Die "1" hier bedeutet, dass Sie alle kompatiblen Minors und Patches der 1.X-Versionen erhalten, beginnend mit der aktuellen, 1.74.0. Als moderne Programmiersprache wird Rust mit einem Paketmanager, Cargo, ausgeliefert, den Sie im Build-Hook verwenden können.
Das Ziel wasm32-unknown-unknown
kann zur Build-Zeit verwendet werden, um ein WASM-Paket zu erzeugen. Sie können mit dem folgenden Build-Befehl beginnen.
cargo build --target wasm32-unknown-unknown --release
Weitere Materialien finden Sie auch auf rustwasm.github.io.
Die Unterstützung von Rust befindet sich derzeit in der Beta-Phase, was bedeutet, dass wir uns über jede Menge Feedback freuen. Teilen Sie uns also gerne Ihre Erfolge, Misserfolge, Vorschläge und Ideen für neue Funktionen mit.
Sie können sich mit uns in unserer Community verbinden. Bleiben Sie dran, denn wir werden bald weitere spannende Updates veröffentlichen!