更新时间:2024-10-30 GMT+08:00
通过NodeJs连接实例
本章节主要介绍使用NodeJs访问GeminiDB Redis实例的方法。
前提条件
- 已成功创建GeminiDB Redis实例,且实例状态为“正常”。
- 已创建弹性云服务器,创建弹性云服务器的方法,请参见《弹性云服务器快速入门》中“购买弹性云服务器”章节。
- 如果弹性云服务器为Linux系统,该弹性云服务器上必须已经安装GCC等编译工具。
- 创建的弹性云服务器与GeminiDB Redis实例要保证区域、可用区、VPC和安全组一致。
操作步骤
- 获取GeminiDB Redis实例的负载均衡地址和端口。
- 负载均衡地址的查看方法请参见查看负载均衡地址及端口。
- 端口信息的获取方法请参见查看实例节点端口。
- 登录弹性云服务器,具体操作请参见《弹性云服务器快速入门》中“登录弹性云服务器”。
- 安装NodeJs。
- 方法一:使用如下命令安装NodeJs。
yum install nodejs
以CentOS(redhat系列)为例,如果是Ubuntu(debian系列),则需要使用其对应的安装命令。
- 方法二:如果方法一安装不了,也可以通过如下方式进行安装。
wget https://nodejs.org/dist/v0.12.4/node-v0.12.4.tar.gz --no-check-certificate ;
tar -xvf node-v0.12.4.tar.gz;
cd node-v0.12.4;
./configure;
make;
make install;
以CentOS(redhat系列)为例,如果是Ubuntu(debian系列),则需要使用其对应的安装命令。
- 方法一:使用如下命令安装NodeJs。
- NodeJs安装完成后,可执行如下命令,查看其版本号,确认NodeJs已安装成功。
node -v
- 安装JS包管理工具npm。
yum install npm
- 安装NodeJs redis客户端ioredis。
npm install ioredis
- 编辑连接GeminiDB Redis实例的示例脚本。
- 使用NodeJs单机SDK连接GeminiDB Redis集群
var Redis = require('ioredis'); // 认证用的用户名和密码直接写到代码中有很大的安全风险,建议在配置文件或者环境变量中存放(密码应密文存放、使用时解密),确保安全; // 本示例以用户名和密码保存在环境变量中为例,运行本示例前请先在本地环境中设置环境变量(环境变量名称请根据自身情况进行设置)EXAMPLE_USERNAME_ENV和EXAMPLE_PASSWORD_ENV。 var pwd = process.env.EXAMPLE_PASSWORD_ENV; var redis = new Redis({ port: 8635, // 此处为步骤1中获取到的GeminiDB Redis实例的端口。 host: '192.xx.xx.xx', //此处为步骤1中获取到的GeminiDB Redis实例的负载均衡地址。 family: 4, // 此处填写4表示IPv4,6表示IPv6。 password: pwd, db: 0 }); redis.set('key', 'Nodejs tst ok!'); redis.get('key', function (err, result) { console.log(result); });
- 使用NodeJs集群SDK连接GeminiDB Redis集群
const Redis = require("ioredis"); // 认证用的用户名和密码直接写到代码中有很大的安全风险,建议在配置文件或者环境变量中存放(密码应密文存放、使用时解密),确保安全; // 本示例以用户名和密码保存在环境变量中为例,运行本示例前请先在本地环境中设置环境变量(环境变量名称请根据自身情况进行设置)EXAMPLE_USERNAME_ENV和EXAMPLE_PASSWORD_ENV。 var pwd = process.env.EXAMPLE_PASSWORD_ENV; const cluster = new Redis.Cluster([ { port: 8635, // 此处为步骤1中获取到的GeminiDB Redis实例的端口。 host: '192.xx.xx.xx', //此处为步骤1中获取到的GeminiDB Redis实例的负载均衡地址。 family: 4, // 此处填写4表示IPv4,6表示IPv6。 password: pwd, db: 0 }, ]); cluster.set("foo", "nodejs is ok!"); cluster.get("foo", (err, res) => { console.log(res); });
- 使用NodeJs单机SDK连接GeminiDB Redis集群
- 运行示例脚本,确认结果正常。
node ioredisdemo.js
父主题: 客户端通过代码连接实例示例