Après avoir installé le SDK Ultipa pour Node.js et configuré une instance Ultipa en cours d'exécution, vous devriez pouvoir connecter votre application à la base de données graphe Ultipa.
ConnectionPool
La connexion à Ultipa peut être établie en utilisant ConnectionPool, qui précise les informations du pool de connexions nécessaire.
Voici tous les éléments de configuration disponibles pour ConnectionPool :
Élément |
Type |
Description |
|---|---|---|
hosts |
string[] | Adresses de l'hôte de la base de données ou URI de l'hôte (excluant "https://" ou "http://"). Pour les clusters, plusieurs adresses sont séparées par des virgules. Requis. |
username |
string | Nom d'utilisateur pour l'authentification de l'hôte. Requis. |
password |
string | Mot de passe pour l'authentification de l'hôte. Requis. |
crt |
Buffer | Définit le chemin du fichier de certificat local. SSL sera utilisé pour la connexion. |
defaultConfig |
ULTIPA.UltipaConfig | D'autres configurations incluent des paramètres pour le graphset, le timeout, et la cohérence. |
otherParams |
object | Deux clés sont disponibles : isHttps et isHttp, toutes deux sous forme de valeurs booléennes. Si les deux sont réglées sur true, HTTP est utilisé en premier. Si non spécifié, la connexion essaie d'abord HTTP, et passe à HTTPS si HTTP échoue. |
Se Connecter à un Cluster
Exemple de connexion à un cluster et d'utilisation du graphset 'default'.
import { ConnectionPool } from "@ultipa-graph/ultipa-node-sdk";
import fs from "fs";
let sdkUsage = async () => {
let hosts = [
"192.168.1.85:60061",
"192.168.1.86:60061",
"192.168.1.87:60061"
];
let username = "***";
let password = "***";
let crt: Buffer;
{ // Crt est utilisé
let crt_file_path = "./ultipa.crt";
crt = fs.readFileSync(crt_file_path);
}
let connPool = new ConnectionPool(hosts, username, password, crt);
let conn = await connPool.getActive();
let isSuccess = await conn.test();
console.log(isSuccess);
};
sdkUsage().then(console.log).catch(console.log);
Se Connecter à Ultipa Cloud
Exemple de connexion à une instance sur Ultipa Cloud et d'utilisation du graphset 'default'.
import { ConnectionPool } from "@ultipa-graph/ultipa-node-sdk";
let sdkUsage = async () => {
let hosts = ["3xbotdjas.us-east-1.cloud.ultipa.com:60010"];
let username = "***";
let password = "***";
let otherParams = {
isHttps: true,
isHttp: false
};
let connPool = new ConnectionPool(hosts, username, password, undefined, undefined, otherParams);
let conn = await connPool.getActive();
let isSuccess = await conn.test();
console.log(isSuccess);
};
sdkUsage().then(console.log).catch(console.log);
Éléments de Configuration
Voici tous les éléments de configuration disponibles pour UltipaConfig :
Élément |
Type |
Description |
|---|---|---|
graphSetName |
string | Nom du graphset à utiliser. Si non défini, utilise le graphSetName configuré lors de l'établissement de la connexion. |
timeout |
number | Seuil de temporisation de la requête en secondes. |
consistency |
boolean | Si on doit utiliser le node principal pour garantir une lecture cohérente. |
useHost |
string | Envoie la requête à un node hôte désigné, ou à un node hôte aléatoire si non défini. |
clusterID |
string | Spécifie le cluster à utiliser. |
timeZone |
string | Le fuseau horaire à utiliser. |
timeZoneOffset |
number | La différence de temps entre le fuseau horaire utilisé et l'UTC en minutes. |
timestampToString |
boolean | Si on doit convertir le timestamp en chaîne de caractères. |
logUql |
boolean | Si on doit imprimer le UQL. |
threadNum |
number | Nombre de threads. |
responseWithRequestInfo |
boolean | Si on doit inclure les informations de la requête dans la réponse. |