이번에는 nodejs에서 redis를 적용하는 실제 프로젝트 공유를 가져오겠습니다. nodejs에서 redis를 사용할 때주의사항은 무엇인가요? 다음은 실제 사례를 살펴보겠습니다.
redis는 성능이 매우 좋은 인메모리 데이터베이스입니다. 애플리케이션과 mysql 데이터 사이에캐싱 데이터 라이브러리로 배포되어 애플리케이션의 성능을 크게 향상시킬 수 있습니다. nodejs 클라이언트에서 redis 운영
Redis에 저장할 수 있는데이터 유형은 총 5개입니다. 이는문자열, 목록, 집합, 세 개의 열, 추가, 삭제, 확인 및 순서가 지정된 집합입니다. 이 5가지 데이터 유형의 수정은 여기에서 하나씩 처리됩니다.
1 Mac에 redis 설치: 2. Redis 시작: 명령줄에서 redis-server를 실행하면 기본 포트는 다음과 같습니다. 6379; 3. nodejs 클라이언트 설치: 이 디렉토리에서 Yarn init -y 후에 redis-node 디렉토리를 생성하고 nodejs의 redis 클라이언트를 설치하려면 다음 명령을 실행하십시오: https://github. .com/NodeRedis/node_redis 4. redis-node 디렉토리에서 다음으로 터미널에서 node를 실행하면 테스트를 위해 터미널에서 nodejs 코드를 실행할 수 있습니다. 먼저 클라이언트를 생성해 보겠습니다. 그리고 redis 서버에 연결하세요. 다음 연결 클라이언트 코드를 실행하기 전에 redis 서버가 실행 중인지 확인하세요. 터미널 공급자가 redis-server를 실행할 수 있으며 기본 포트는 6379입니다. 모든 것이 잘 되면 우리는 생성했습니다. Redis 서버에 연결하기 위한 클라이언트와 클라이언트 객체에 대한 후속 작업이 수행됩니다.1. 문자열 유형
문자열 유형이지만 저장할 수 있는 데이터에는 문자열, 정수, 부동 소수점 숫자가 포함됩니다.const redis = require('redis'); const client = redis.createClient(); //默认连接localhost:6379,具体配置参数可以参考文档https://github.com/NodeRedis/node_redis
var res = client.set('name', 'abczhijia', (err, data) => { console.log('err: ', err, ' data: ', data); }); // err: null data: OK,res的值是true client.get('name', (err, data) => { console.log('err: ', err, ' data: ', data); }); // err: null data: abczhijia
const cb = (err, data) => { console.log('err: ', err, ' data: ', data, ' data type: ', typeof data); }
2. 목록 데이터 유형
client.set('age', 20, cb); //err: null data: OK data type: string client.get('age', cb); //err: null data: 20 data type: string
3. 수집 데이터 유형
//从右侧推入 client.rpush('friends', 'mike', 'jhon', cb); //err: null data: 2 data type: number client.lrange('friends', 0, -1, cb); //err: null data: [ 'mike', 'jhon' ] data type: object //从左侧推入 client.lpush('friends', 'sam', 'bob', cb); //err: null data: 4 data type: number client.lrange('friends', 0, -1, cb); // err: null data: [ 'bob', 'sam', 'mike', 'jhon' ] data type: object //从右侧弹出 client.rpop('friends', cb); //err: null data: jhon data type: string //从左侧弹出 client.lpop('friends', cb); //err: null data: bob data type: string //打印看看发生了啥 client.lrange('friends', 0, -1, cb); // err: null data: [ 'sam', 'mike' ] data type: object //查看索引位置的值 client.lindex('friends', 0, cb); // err: null data: sam data type: string //对列表进行裁剪 client.rpush('friends', 'tom', 'bryant', cb)// err: null data: 4 data type: number client.ltrim('friends', 1, 2, cb); //err: null data: OK data type: string client.lrange('friends', 0, -1, cb); //err: null data: [ 'mike', 'tom' ] data type: object
4. 해시 데이터 유형
//往集合ids中加几个元素 client.sadd('ids', 1, 2, cb); //err: null data: 2 data type: number //查看集合元素 client.smembers('ids', cb); //err: null data: [ '1', '2' ] data type: object //从集合中删除元素 client.srem('ids', 2, cb); // err: null data: 1 data type: number //看看发生了啥 client.smembers('ids', cb); //err: null data: [ '1' ] data type: object //看看集合有多少个元素 client.scard('ids', cb); //err: null data: 1 data type: number //再加几个元素进去 client.sadd('ids', 3, 5, 8, 9); // //判断元素是否在集合内 client.sismember('ids', 8, cb); // err: null data: 1 data type: number client.sismember('ids', 80, cb); //err: null data: 0 data type: number
추천 도서:
Vue SSR 컴포넌트 로딩 사용 방법
위 내용은 nodejs에서 redis 애플리케이션의 실제 프로젝트 공유의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!