Wählen Sie Ihre Cookie-Einstellungen aus

Wir verwenden essentielle Cookies und ähnliche Tools, die für die Bereitstellung unserer Website und Services erforderlich sind. Wir verwenden Performance-Cookies, um anonyme Statistiken zu sammeln, damit wir verstehen können, wie Kunden unsere Website nutzen, und Verbesserungen vornehmen können. Essentielle Cookies können nicht deaktiviert werden, aber Sie können auf „Anpassen“ oder „Ablehnen“ klicken, um Performance-Cookies abzulehnen.

Wenn Sie damit einverstanden sind, verwenden AWS und zugelassene Drittanbieter auch Cookies, um nützliche Features der Website bereitzustellen, Ihre Präferenzen zu speichern und relevante Inhalte, einschließlich relevanter Werbung, anzuzeigen. Um alle nicht notwendigen Cookies zu akzeptieren oder abzulehnen, klicken Sie auf „Akzeptieren“ oder „Ablehnen“. Um detailliertere Entscheidungen zu treffen, klicken Sie auf „Anpassen“.

Amazon QLDB-Treiber für Node.js - Amazon Quantum Ledger Database (Amazon QLDB)

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Amazon QLDB-Treiber für Node.js

Wichtig

Hinweis zum Ende des Supports: Bestandskunden können Amazon QLDB bis zum Ende des Supports am 31.07.2025 nutzen. Weitere Informationen finden Sie unter Migrieren eines Amazon QLDB-Ledgers zu Amazon Aurora PostgreSQL.

Um mit Daten in Ihrem Ledger zu arbeiten, können Sie von Ihrer Anwendung Node.js aus mithilfe eines bereitgestellten Treibers eine AWS Verbindung zu Amazon QLDB herstellen. In den folgenden Themen werden die ersten Schritte mit dem QLDB-Treiber für Node.js beschrieben.

Ressourcen für Treiber

Weitere Informationen zu den vom Node.js-Treiber unterstützten Funktionen finden Sie in den folgenden Ressourcen:

Voraussetzungen

Bevor Sie mit dem QLDB-Treiber für Node.js beginnen, müssen Sie Folgendes tun:

  1. Folgen Sie den Anweisungen zur AWS Einrichtung unter. Zugreifen auf Amazon QLDB Diese umfasst die folgenden Funktionen:

    1. Melde dich an für AWS.

    2. Erstellen Sie einen Benutzer mit den entsprechenden QLDB-Berechtigungen.

    3. Gewähren Sie programmatischen Zugriff für die Entwicklung.

  2. Installieren Sie Node.js Version 14.x oder höher von der Downloadseite Node.js. (Frühere Versionen des Treibers unterstützen Node.js Version 10.x oder höher.)

  3. Konfigurieren Sie Ihre Entwicklungsumgebung für das AWS SDK für JavaScript in Node.js:

    1. Richten Sie Ihre AWS Anmeldeinformationen ein. Wir empfehlen, eine gemeinsame Anmeldeinformationsdatei zu erstellen.

      Eine Anleitung dazu finden Sie im AWS SDK for JavaScript Entwicklerhandbuch unter Laden von Anmeldeinformationen in Node.js aus der Datei mit den gemeinsamen Anmeldeinformationen.

    2. Stellen Sie Ihre Standardeinstellung ein AWS-Region. Wie das geht, erfahren Sie unter Einstellen von AWS-Region.

      Eine vollständige Liste der verfügbaren Regionen finden Sie unter Amazon QLDB-Endpunkte und Kontingente in der. Allgemeine AWS-Referenz

Als Nächstes können Sie die vollständige Tutorial-Beispielanwendung herunterladen — oder Sie können nur den Treiber in einem Node.js -Projekt installieren und kurze Codebeispiele ausführen.

  • Um den QLDB-Treiber und das AWS SDK für JavaScript in Node.js in einem vorhandenen Projekt zu installieren, fahren Sie mit fort. Installation

  • Informationen zum Einrichten eines Projekts und zum Ausführen von Kurzcodebeispielen, die grundlegende Datentransaktionen in einem Ledger demonstrieren, finden Sie unter. Schnellstart-Tutorial

  • Ausführlichere Beispiele für Daten- und Verwaltungs-API-Operationen in der vollständigen Beispielanwendung des Tutorials finden Sie unter. Anleitung zu Node.js

Installation

QLDB unterstützt die folgenden Treiberversionen und ihre Node.js Abhängigkeiten.

Treiberversion Node.js-Version Status Datum der letzten Veröffentlichung
1.x 10.x oder später Produktionsfreigabe 5. Juni 2020
2.x 10.x oder später Produktionsfreigabe 6. Mai 2021
3.x 14.x oder später Produktionsfreigabe 10. November 2023

Um den QLDB-Treiber mit npm (dem Paketmanager Node.js) zu installieren, geben Sie den folgenden Befehl aus Ihrem Projektstammverzeichnis ein.

3.x
npm install amazon-qldb-driver-nodejs
2.x
npm install amazon-qldb-driver-nodejs@2.2.0
1.x
npm install amazon-qldb-driver-nodejs@1.0.0
npm install amazon-qldb-driver-nodejs

Der Treiber hat Peer-Abhängigkeiten von den folgenden Paketen. Sie müssen diese Pakete auch als Abhängigkeiten in Ihrem Projekt installieren.

3.x

Modularer aggregierter QLDB-Client (Management-API)

npm install @aws-sdk/client-qldb

Modularer aggregierter QLDB-Sitzungsclient (Daten-API)

npm install @aws-sdk/client-qldb-session

Amazon Ion-Datenformat

npm install ion-js

Reine JavaScript Implementierung von BigInt

npm install jsbi
2.x

AWS SDK for JavaScript

npm install aws-sdk

Amazon Ion-Datenformat

npm install ion-js@4.0.0

Reine JavaScript Implementierung von BigInt

npm install jsbi@3.1.1
1.x

AWS SDK for JavaScript

npm install aws-sdk

Amazon Ion-Datenformat

npm install ion-js@4.0.0

Reine JavaScript Implementierung von BigInt

npm install jsbi@3.1.1

Modularer aggregierter QLDB-Client (Management-API)

npm install @aws-sdk/client-qldb

Modularer aggregierter QLDB-Sitzungsclient (Daten-API)

npm install @aws-sdk/client-qldb-session

Amazon Ion-Datenformat

npm install ion-js

Reine JavaScript Implementierung von BigInt

npm install jsbi

Verwenden des Treibers zum Herstellen einer Verbindung mit einem Ledger

Dann können Sie den Treiber importieren und mit ihm eine Verbindung zu einem Ledger herstellen. Das folgende TypeScript Codebeispiel zeigt, wie eine Treiberinstanz für einen bestimmten Ledgernamen und AWS-Region erstellt wird.

3.x
import { Agent } from 'https'; import { QLDBSessionClientConfig } from "@aws-sdk/client-qldb-session"; import { QldbDriver, RetryConfig } from 'amazon-qldb-driver-nodejs'; import { NodeHttpHandlerOptions } from "@aws-sdk/node-http-handler"; const maxConcurrentTransactions: number = 10; const retryLimit: number = 4; //Reuse connections with keepAlive const lowLevelClientHttpOptions: NodeHttpHandlerOptions = { httpAgent: new Agent({ maxSockets: maxConcurrentTransactions }) }; const serviceConfigurationOptions: QLDBSessionClientConfig = { region: "us-east-1" }; //Use driver's default backoff function for this example (no second parameter provided to RetryConfig) const retryConfig: RetryConfig = new RetryConfig(retryLimit); const qldbDriver: QldbDriver = new QldbDriver("testLedger", serviceConfigurationOptions, lowLevelClientHttpOptions, maxConcurrentTransactions, retryConfig); qldbDriver.getTableNames().then(function(tableNames: string[]) { console.log(tableNames); });
2.x
import { Agent } from 'https'; import { QldbDriver, RetryConfig } from 'amazon-qldb-driver-nodejs'; const maxConcurrentTransactions: number = 10; const retryLimit: number = 4; //Reuse connections with keepAlive const agentForQldb: Agent = new Agent({ keepAlive: true, maxSockets: maxConcurrentTransactions }); const serviceConfigurationOptions = { region: "us-east-1", httpOptions: { agent: agentForQldb } }; //Use driver's default backoff function for this example (no second parameter provided to RetryConfig) const retryConfig: RetryConfig = new RetryConfig(retryLimit); const qldbDriver: QldbDriver = new QldbDriver("testLedger", serviceConfigurationOptions, maxConcurrentTransactions, retryConfig); qldbDriver.getTableNames().then(function(tableNames: string[]) { console.log(tableNames); });
1.x
import { Agent } from 'https'; import { QldbDriver } from 'amazon-qldb-driver-nodejs'; const poolLimit: number = 10; const retryLimit: number = 4; //Reuse connections with keepAlive const agentForQldb: Agent = new Agent({ keepAlive: true, maxSockets: poolLimit }); const serviceConfigurationOptions = { region: "us-east-1", httpOptions: { agent: agentForQldb } }; const qldbDriver: QldbDriver = new QldbDriver("testLedger", serviceConfigurationOptions, retryLimit, poolLimit); qldbDriver.getTableNames().then(function(tableNames: string[]) { console.log(tableNames); });
import { Agent } from 'https'; import { QLDBSessionClientConfig } from "@aws-sdk/client-qldb-session"; import { QldbDriver, RetryConfig } from 'amazon-qldb-driver-nodejs'; import { NodeHttpHandlerOptions } from "@aws-sdk/node-http-handler"; const maxConcurrentTransactions: number = 10; const retryLimit: number = 4; //Reuse connections with keepAlive const lowLevelClientHttpOptions: NodeHttpHandlerOptions = { httpAgent: new Agent({ maxSockets: maxConcurrentTransactions }) }; const serviceConfigurationOptions: QLDBSessionClientConfig = { region: "us-east-1" }; //Use driver's default backoff function for this example (no second parameter provided to RetryConfig) const retryConfig: RetryConfig = new RetryConfig(retryLimit); const qldbDriver: QldbDriver = new QldbDriver("testLedger", serviceConfigurationOptions, lowLevelClientHttpOptions, maxConcurrentTransactions, retryConfig); qldbDriver.getTableNames().then(function(tableNames: string[]) { console.log(tableNames); });

Kurze Codebeispiele für die Ausführung von Basisdatentransaktionen in einem Ledger finden Sie unter. Referenz zum Kochbuch

Empfehlungen zur Einrichtung

Verbindungen mit Keep-Alive wiederverwenden

Der standardmäßige Node.js-HTTP/HTTPS-Agent erstellt eine neue TCP-Verbindung für jede neue Anforderung. Um die Kosten für den Aufbau einer neuen Verbindung zu vermeiden, verwendet AWS SDK for JavaScript Version 3 standardmäßig TCP-Verbindungen wieder. Weitere Informationen und Informationen zum Deaktivieren der Wiederverwendung von Verbindungen finden Sie unter Wiederverwenden von Verbindungen mit Keep-Alive in Node.js im Entwicklerhandbuch.AWS SDK for JavaScript

Wir empfehlen, die Standardeinstellung zu verwenden, um Verbindungen im QLDB-Treiber für Node.js wiederzuverwenden. Stellen Sie bei der Treiberinitialisierung die Low-Level-Client-HTTP-Option auf denselben Wert einmaxSockets, den Sie für festgelegt haben. maxConcurrentTransactions

Sehen Sie sich zum Beispiel den folgenden Code JavaScript an. TypeScript

JavaScript
const qldb = require('amazon-qldb-driver-nodejs'); const https = require('https'); //Replace this value as appropriate for your application const maxConcurrentTransactions = 50; const agentForQldb = new https.Agent({ //Set this to the same value as `maxConcurrentTransactions`(previously called `poolLimit`) //Do not rely on the default value of `Infinity` "maxSockets": maxConcurrentTransactions }); const lowLevelClientHttpOptions = { httpAgent: agentForQldb } let driver = new qldb.QldbDriver("testLedger", undefined, lowLevelClientHttpOptions, maxConcurrentTransactions);
TypeScript
import { Agent } from 'https'; import { NodeHttpHandlerOptions } from "@aws-sdk/node-http-handler"; import { QldbDriver } from 'amazon-qldb-driver-nodejs'; //Replace this value as appropriate for your application const maxConcurrentTransactions: number = 50; const agentForQldb: Agent = new Agent({ //Set this to the same value as `maxConcurrentTransactions`(previously called `poolLimit`) //Do not rely on the default value of `Infinity` maxSockets: maxConcurrentTransactions }); const lowLevelClientHttpOptions: NodeHttpHandlerOptions = { httpAgent: agentForQldb }; let driver = new QldbDriver("testLedger", undefined, lowLevelClientHttpOptions, maxConcurrentTransactions);

QLDB Node.js Treiber v3

Der standardmäßige Node.js-HTTP/HTTPS-Agent erstellt eine neue TCP-Verbindung für jede neue Anforderung. Um die Kosten für den Aufbau einer neuen Verbindung zu vermeiden, verwendet AWS SDK for JavaScript Version 3 standardmäßig TCP-Verbindungen wieder. Weitere Informationen und Informationen zum Deaktivieren der Wiederverwendung von Verbindungen finden Sie unter Wiederverwenden von Verbindungen mit Keep-Alive in Node.js im Entwicklerhandbuch.AWS SDK for JavaScript

Wir empfehlen, die Standardeinstellung zu verwenden, um Verbindungen im QLDB-Treiber für Node.js wiederzuverwenden. Stellen Sie bei der Treiberinitialisierung die Low-Level-Client-HTTP-Option auf denselben Wert einmaxSockets, den Sie für festgelegt haben. maxConcurrentTransactions

Sehen Sie sich zum Beispiel den folgenden Code JavaScript an. TypeScript

JavaScript
const qldb = require('amazon-qldb-driver-nodejs'); const https = require('https'); //Replace this value as appropriate for your application const maxConcurrentTransactions = 50; const agentForQldb = new https.Agent({ //Set this to the same value as `maxConcurrentTransactions`(previously called `poolLimit`) //Do not rely on the default value of `Infinity` "maxSockets": maxConcurrentTransactions }); const lowLevelClientHttpOptions = { httpAgent: agentForQldb } let driver = new qldb.QldbDriver("testLedger", undefined, lowLevelClientHttpOptions, maxConcurrentTransactions);
TypeScript
import { Agent } from 'https'; import { NodeHttpHandlerOptions } from "@aws-sdk/node-http-handler"; import { QldbDriver } from 'amazon-qldb-driver-nodejs'; //Replace this value as appropriate for your application const maxConcurrentTransactions: number = 50; const agentForQldb: Agent = new Agent({ //Set this to the same value as `maxConcurrentTransactions`(previously called `poolLimit`) //Do not rely on the default value of `Infinity` maxSockets: maxConcurrentTransactions }); const lowLevelClientHttpOptions: NodeHttpHandlerOptions = { httpAgent: agentForQldb }; let driver = new QldbDriver("testLedger", undefined, lowLevelClientHttpOptions, maxConcurrentTransactions);
const qldb = require('amazon-qldb-driver-nodejs'); const https = require('https'); //Replace this value as appropriate for your application const maxConcurrentTransactions = 50; const agentForQldb = new https.Agent({ //Set this to the same value as `maxConcurrentTransactions`(previously called `poolLimit`) //Do not rely on the default value of `Infinity` "maxSockets": maxConcurrentTransactions }); const lowLevelClientHttpOptions = { httpAgent: agentForQldb } let driver = new qldb.QldbDriver("testLedger", undefined, lowLevelClientHttpOptions, maxConcurrentTransactions);

Der standardmäßige Node.js-HTTP/HTTPS-Agent erstellt eine neue TCP-Verbindung für jede neue Anforderung. Um die Kosten für den Aufbau einer neuen Verbindung zu vermeiden, empfehlen wir, eine bestehende Verbindung wiederzuverwenden.

Verwenden Sie eine der folgenden Optionen, um Verbindungen im QLDB-Treiber für Node.js wiederzuverwenden:

  • Stellen Sie während der Treiberinitialisierung die folgenden Low-Level-Client-HTTP-Optionen ein:

    • keepAlivetrue

    • maxSockets— Derselbe Wert, den Sie für festgelegt haben maxConcurrentTransactions

    Sehen Sie sich zum Beispiel den folgenden JavaScript TypeScript Code an.

    JavaScript
    const qldb = require('amazon-qldb-driver-nodejs'); const https = require('https'); //Replace this value as appropriate for your application const maxConcurrentTransactions = 50; const agentForQldb = new https.Agent({ "keepAlive": true, //Set this to the same value as `maxConcurrentTransactions`(previously called `poolLimit`) //Do not rely on the default value of `Infinity` "maxSockets": maxConcurrentTransactions }); const serviceConfiguration = { "httpOptions": { "agent": agentForQldb }}; let driver = new qldb.QldbDriver("testLedger", serviceConfiguration, maxConcurrentTransactions);
    TypeScript
    import { Agent } from 'https'; import { ClientConfiguration } from 'aws-sdk/clients/acm'; import { QldbDriver } from 'amazon-qldb-driver-nodejs'; //Replace this value as appropriate for your application const maxConcurrentTransactions: number = 50; const agentForQldb: Agent = new Agent({ keepAlive: true, //Set this to the same value as `maxConcurrentTransactions`(previously called `poolLimit`) //Do not rely on the default value of `Infinity` maxSockets: maxConcurrentTransactions }); const serviceConfiguration: ClientConfiguration = { httpOptions: { agent: agentForQldb }}; let driver = new QldbDriver("testLedger", serviceConfiguration, maxConcurrentTransactions);
  • Alternativ können Sie die AWS_NODEJS_CONNECTION_REUSE_ENABLED Umgebungsvariable auf setzen1. Weitere Informationen finden Sie unter Wiederverwenden von Verbindungen mit Keep-Alive in Node.js im AWS SDK for JavaScript Entwicklerhandbuch.

    Anmerkung

    Wenn Sie diese Umgebungsvariable festlegen, wirkt sich dies auf alle aus, die AWS-Services die verwenden. AWS SDK for JavaScript

Der standardmäßige Node.js-HTTP/HTTPS-Agent erstellt eine neue TCP-Verbindung für jede neue Anforderung. Um die Kosten für den Aufbau einer neuen Verbindung zu vermeiden, empfehlen wir, eine bestehende Verbindung wiederzuverwenden.

Verwenden Sie eine der folgenden Optionen, um Verbindungen im QLDB-Treiber für Node.js wiederzuverwenden:

  • Stellen Sie während der Treiberinitialisierung die folgenden Low-Level-Client-HTTP-Optionen ein:

    • keepAlivetrue

    • maxSockets— Derselbe Wert, den Sie für festgelegt haben maxConcurrentTransactions

    Sehen Sie sich zum Beispiel den folgenden JavaScript TypeScript Code an.

    JavaScript
    const qldb = require('amazon-qldb-driver-nodejs'); const https = require('https'); //Replace this value as appropriate for your application const maxConcurrentTransactions = 50; const agentForQldb = new https.Agent({ "keepAlive": true, //Set this to the same value as `maxConcurrentTransactions`(previously called `poolLimit`) //Do not rely on the default value of `Infinity` "maxSockets": maxConcurrentTransactions }); const serviceConfiguration = { "httpOptions": { "agent": agentForQldb }}; let driver = new qldb.QldbDriver("testLedger", serviceConfiguration, maxConcurrentTransactions);
    TypeScript
    import { Agent } from 'https'; import { ClientConfiguration } from 'aws-sdk/clients/acm'; import { QldbDriver } from 'amazon-qldb-driver-nodejs'; //Replace this value as appropriate for your application const maxConcurrentTransactions: number = 50; const agentForQldb: Agent = new Agent({ keepAlive: true, //Set this to the same value as `maxConcurrentTransactions`(previously called `poolLimit`) //Do not rely on the default value of `Infinity` maxSockets: maxConcurrentTransactions }); const serviceConfiguration: ClientConfiguration = { httpOptions: { agent: agentForQldb }}; let driver = new QldbDriver("testLedger", serviceConfiguration, maxConcurrentTransactions);
    const qldb = require('amazon-qldb-driver-nodejs'); const https = require('https'); //Replace this value as appropriate for your application const maxConcurrentTransactions = 50; const agentForQldb = new https.Agent({ "keepAlive": true, //Set this to the same value as `maxConcurrentTransactions`(previously called `poolLimit`) //Do not rely on the default value of `Infinity` "maxSockets": maxConcurrentTransactions }); const serviceConfiguration = { "httpOptions": { "agent": agentForQldb }}; let driver = new qldb.QldbDriver("testLedger", serviceConfiguration, maxConcurrentTransactions);
  • Alternativ können Sie die AWS_NODEJS_CONNECTION_REUSE_ENABLED Umgebungsvariable auf setzen1. Weitere Informationen finden Sie unter Wiederverwenden von Verbindungen mit Keep-Alive in Node.js im AWS SDK for JavaScript Entwicklerhandbuch.

    Anmerkung

    Wenn Sie diese Umgebungsvariable festlegen, wirkt sich dies auf alle aus, die AWS-Services die verwenden. AWS SDK for JavaScript

DatenschutzNutzungsbedingungen für die WebsiteCookie-Einstellungen
© 2025, Amazon Web Services, Inc. oder Tochtergesellschaften. Alle Rechte vorbehalten.