banner
Nachrichtenzentrum
Wir implementieren ein einwandfreies Qualitätssystem, um eine hervorragende Produktleistung zu gewährleisten.

Cloudflare Workers führt die connect()-API zum Erstellen von TCP-Sockets ein

Apr 13, 2023

InfoQ-Startseite News Cloudflare Workers stellt die connect()-API zum Erstellen von TCP-Sockets vor

28. Mai 2023 2 Minuten Lesezeit

von

Renato Losio

In der letzten Entwicklerwoche kündigte Cloudflare eine Worker-API zum Erstellen ausgehender TCP-Sockets an. Mit der neuen Socket-API können Entwickler direkt von einem Worker aus eine Verbindung zu TCP-basierter Infrastruktur herstellen, einschließlich Datenbanken.

Die als Laufzeit-API verfügbare Funktion connect() gibt einen TCP-Socket zurück, der es Entwicklern ermöglicht, Daten zu lesen und zu schreiben, bis die Verbindung offen bleibt. Worker könnten bereits mit HTTP-Endpunkten und anderen Cloudflare-Diensten interagieren, aber die überwiegende Mehrheit der Datenbanken erfordert, dass Clients eine Verbindung herstellen, indem sie einen direkten TCP-Socket öffnen. Brendan Irvine-Broque, Produktmanager bei Cloudflare, und Matt Silverlock, Produktdirektor bei Cloudflare, erklären:

Mit Workers wollen wir Standard-APIs unterstützen, die nach Möglichkeit von allen Browsern und Nicht-Browser-Umgebungen unterstützt werden, (...), aber bei TCP-Sockets standen wir vor einer Herausforderung – es gab keinen klaren gemeinsamen Standard für alle Laufzeiten. Wir haben versucht, die besten Elemente bestehender APIs und Vorschläge zu integrieren und beabsichtigen, zu zukünftigen Standards beizutragen.

Im vergangenen Herbst gründete Cloudflare zusammen mit Vercel und Shopify WinterCG, eine neue Community-Gruppe, die sich auf die interoperable Implementierung standardisierter Web-APIs in JavaScript-basierten Entwicklungsumgebungen ohne Webbrowser konzentriert.

Der Zugriff auf die neue API erfolgt durch Importieren der Verbindungsfunktion aus cloudflare:sockets. Einer der häufigsten Anwendungsfälle ist das Herstellen einer Verbindung zu einer Datenbank, zum Beispiel:

Quelle: https://blog.cloudflare.com/workers-tcp-socket-api-connect-databases/

Während pg, der JavaScript-Datenbanktreiber für PostgreSQL, bereits unterstützt wird, werden die MySQL-Treiber mysql und mysql2 noch nicht unterstützt. Irvine-Broque und Matt Silverlock warnen:

Für jede Anfrage wird eine neue Verbindung erstellt. Dies ist eine der größten aktuellen Herausforderungen bei der Verbindung von serverlosen Funktionen mit Datenbanken. Plattformübergreifend (...) arbeiten wir bereits an einfacheren Ansätzen für das Verbindungspooling für die gängigsten Datenbanken.

Das Content-Delivery-Netzwerk geht davon aus, in Zukunft weitere Funktionen hinzuzufügen, darunter die von einigen Entwicklern geforderte Unterstützung für eingehende TCP- und UDP-Verbindungen sowie auf QUIC basierende Anwendungsprotokolle.

Die connect()-API war nicht die einzige neue Funktion, die während der Developer Week 2023 angekündigt wurde: Cloudflare stellte Secrets Store vor, eine Lösung zur sicheren Verwaltung von Anwendungsgeheimnissen, Verbesserungen an D1, der serverlosen Datenbank von Cloudflare und Verbraucher-Parallelität für den Messaging-Dienst Queues. Darüber hinaus kündigte Cloudflare Datenbankintegrationen für Neon, PlanetScale und Supabase on Workers an. Karl Horky, Gründer von UpLeveled, twittert:

Kein Proxy wie Neon oder andere Serverless-/Edge-Anbieter, Sie verbinden sich einfach normal über TCP. Das hört sich großartig an und ist möglicherweise viel größer als die anderen aktuellen Ankündigungen zu Edge-Datenbanken.

Jeder offene TCP-Socket zählt zur maximalen Anzahl offener Verbindungen, die gleichzeitig in Workern geöffnet sein können, und es können keine TCP-Verbindungen auf Port 25 erstellt werden, um E-Mails an SMTP-Mailserver zu senden.

Migrieren Sie ganz einfach in die Cloud und entwickeln Sie unglaublich schnell Innovationen mit Kalix! Erstellen Sie leistungsstarke Microservices und APIs, NoOps erforderlich. Erfahren Sie mehr.

Das Schreiben für InfoQ hat viele Türen geöffnet und die Karrierechancen erhöht Für mich. Ich konnte mich intensiv mit Experten und Vordenkern austauschen, um mehr über die von mir behandelten Themen zu erfahren. Und ich kann meine Erkenntnisse auch an die breitere Tech-Community weitergeben und verstehen, wie die Technologien in der realen Welt eingesetzt werden.

Ich habe das Mitwirkendenprogramm von InfoQ Anfang dieses Jahres entdeckt und es seitdem genossen! Das Peer-to-Peer-Review-System von InfoQ bietet mir nicht nur eine Plattform, auf der ich meine Erkenntnisse mit einer globalen Community von Softwareentwicklern teilen kann, sondern hat auch mein Schreiben erheblich verbessert . Wenn Sie nach einem Ort suchen, an dem Sie Ihr Software-Know-how teilen können, beginnen Sie mit der Mitarbeit bei InfoQ.

Ich habe angefangen, Nachrichten für die InfoQ .NET-Warteschlange zu schreiben, um auf dem neuesten Stand der Technik zu bleiben, aber ich habe so viel mehr daraus gemacht. Ich habe sachkundige Leute kennengelernt, weltweite Sichtbarkeit erlangt und meine Schreibfähigkeiten verbessert.

Redakteur für InfoQ zu werden war eine der besten Entscheidungen meiner Karriere . Es hat mich herausgefordert und mir in vielerlei Hinsicht geholfen, zu wachsen . Wir würden uns über mehr Leute freuentrete unserem Team bei.

InfoQ sucht einen Chefredakteur in Vollzeit dem internationalen, stets remote arbeitenden Team von C4Media beizutreten. Entdecken Sie mit uns die innovativsten Technologien unserer Zeit, arbeiten Sie mit den besten Software-Experten der Welt zusammen und helfen Sie mehr als 1,6 Millionen Entwicklerteams bei der Einführung neuer Technologien und Praktiken, die die Grenzen dessen erweitern, was Software und Teams leisten können!

Jeden Dienstag wird eine Zusammenfassung der Inhalte der letzten Woche auf InfoQ verschickt. Treten Sie einer Community von über 250.000 erfahrenen Entwicklern bei. Sehen Sie sich ein Beispiel an

Wir schützen Ihre Privatsphäre.

Sie müssen ein InfoQ-Konto registrieren oder sich anmelden oder anmelden, um Kommentare zu posten. Aber hinter der Registrierung steckt noch viel mehr.

Holen Sie das Beste aus dem InfoQ-Erlebnis heraus.

Zulässiges HTML: a,b,br,blockquote,i,li,pre,u,ul,p

Zulässiges HTML: a,b,br,blockquote,i,li,pre,u,ul,p

Zulässiges HTML: a,b,br,blockquote,i,li,pre,u,ul,p

Treten Sie einer Expertengemeinschaft bei. Renato Losio hat viele Türen geöffnet und Karrieremöglichkeiten erweitert. Das Peer-to-Peer-Review-System von Vivian Hu InfoQ hat mein Schreiben erheblich verbessert. Oghenevwede Emeni hat weltweite Sichtbarkeit erlangt und meine Schreibfähigkeiten verbessert. Die besten Entscheidungen meiner Karriere, Edin Kapić, haben mir in vielerlei Hinsicht geholfen, mich weiterzuentwickeln Treten Sie unserem Team bei Thomas Betts Vollzeit-Chefredakteur The InfoQ Holen Sie das Beste aus dem InfoQ-Erlebnis heraus.