/ / Bắt đầu với Redis trong Node.js

Bắt đầu với Redis trong Node.js

Khi bạn đang xây dựng một ứng dụng web, bạn nên đảm bảo rằng nó có khả năng mở rộng và hoạt động hiệu quả. Để làm như vậy, bạn sẽ cần tính đến một số nguyên tắc và khái niệm.


Redis là một trong nhiều công nghệ có thể giúp cải thiện hiệu suất của các ứng dụng web của bạn. Nó cung cấp các tính năng đáng chú ý mà bạn có thể sử dụng để nâng cao hiệu suất của bất kỳ ứng dụng web nào.

Vậy Redis chính xác là gì và làm cách nào bạn có thể bắt đầu sử dụng nó với các ứng dụng web Node.js của mình?


Redis là gì và khi nào bạn nên sử dụng nó?

Redis là kho lưu trữ dữ liệu khóa-giá trị mã nguồn mở, trong bộ nhớ. Đó là một công nghệ linh hoạt có thể hoạt động như một hàng đợi công việc, cơ sở dữ liệu, bộ đệm, trình quản lý phiên, trình môi giới tin nhắn, v.v.

Sự kết hợp giữa tốc độ, tính linh hoạt và dễ sử dụng của Redis làm cho nó trở thành một công cụ rất có giá trị trong hệ sinh thái nhà phát triển phần mềm.

Khi nào bạn nên sử dụng Redis?

Redis rất phù hợp với nhiều tác vụ, nhưng bạn nên cẩn thận chỉ sử dụng nó khi thấy hợp lý.

Bạn nên cân nhắc sử dụng Redis trong các trường hợp sau:

  • Bộ nhớ đệm: Redis là cách phổ biến nhất để triển khai bộ nhớ cache nhằm giúp ngăn tải trên cơ sở dữ liệu và cải thiện hiệu suất tổng thể.
  • quản lý phiên: Lưu trữ và quản lý phiên người dùng để xác thực và quản lý trạng thái rất dễ dàng với Redis.
  • Lưu trữ dữ liệu tạm thời: Redis cho phép bạn lưu trữ dữ liệu và tự động xóa dữ liệu sau một khoảng thời gian cụ thể. Điều này làm cho nó trở thành một công cụ tốt để lưu trữ dữ liệu tạm thời như mã thông báo web JSON, hàng đợi công việc, v.v.

Các trường hợp khác mà bạn nên cân nhắc sử dụng Redis bao gồm triển khai trình môi giới thông báo, tối ưu hóa hoạt động cơ sở dữ liệu và thậm chí lưu trữ và truy cập hiệu quả các cấu trúc dữ liệu như danh sách, tập hợp và giá trị băm.

Cách sử dụng Redis với Node.js

Node.js là một công nghệ phổ biến để xây dựng các ứng dụng phía máy chủ hiệu quả và có thể mở rộng. Bạn có thể sử dụng nó cùng với các công nghệ hỗ trợ như Redis để đạt được hiệu suất cao và khả năng mở rộng.

Redis hỗ trợ một số ngôn ngữ. Bạn có thể sử dụng nó để lưu trữ dữ liệu trong PHP và có những ứng dụng khách Redis tuyệt vời cho Golang. Hai ứng dụng khách Redis phổ biến nhất cho Node.js là nút-redisioredis.

Cả hai gói có sẵn thông qua npm và rất dễ sử dụng. Sự khác biệt chính là nút-redis là khách hàng chính thức, trong khi cộng đồng khuyến nghị ioredis.

Kết nối với Redis từ Node.js

Để bắt đầu, bạn phải cài đặt Redis trên máy tính của mình và thiết lập môi trường phát triển Node.js. Xem hướng dẫn cài đặt trên Redis.io để cài đặt Redis trên Linux, macOS và Windows.

Bạn cần cài đặt SDK máy khách Redis ưa thích trong dự án của mình để có thể kết nối với Redis. Tùy thuộc vào sở thích của bạn (chúng tôi sẽ sử dụng nút-redis), hãy chạy một trong các lệnh bên dưới để cài đặt ứng dụng khách Redis:

 npm install redis --save
npm install ioredis --save

Lệnh đầu tiên cài đặt nút-redistrong khi cái thứ hai cài đặt ioredis.

Để định cấu hình ứng dụng khách mới cài đặt của bạn, bạn phải đảm bảo rằng Redis đang chạy. Bạn có thể làm điều này bằng cách đơn giản bắt đầu redis-cli trong thiết bị đầu cuối của bạn:

Đầu ra lệnh ping Redis-CLI

Các ping lệnh ping máy chủ để xác nhận nó đang chạy và một PHONG phản hồi trong CLI có nghĩa là máy chủ đang hoạt động tốt. Bây giờ hãy tạo một redis.js tệp trong dự án Node của bạn và viết đoạn mã sau vào đó để định cấu hình Redis:

 const redis = require("redis")


const RedisClient = redis.createClient()

const connectRedis = async () => {
    
    await RedisClient.connect()

    
    RedisClient.on('error', (err) => {
        console.error(`An error occurred with Redis: ${err}`)
    })

    console.log('Redis connected successfully...')
}

Đoạn mã trên khởi tạo ứng dụng khách Redis mới trong ứng dụng. Các tạo khách hàng chức năng của gói redis cho phép bạn tạo ứng dụng khách bằng các tham số đã chỉ định.

Bạn có thể chỉ định máy chủ, cổng, tên người dùng, mật khẩu hoặc chuỗi kết nối hoặc sử dụng các giá trị mặc định. Ví dụ, nút-redis sẽ bắt đầu chạy trên máy chủ cục bộ, trên cổng 6379theo mặc định.

Dưới đây là một số cách bạn có thể sử dụng tạo khách hàng chức năng:

 
const RedisClient = redis.createClient("rediss://127.0.0.1:6379")


const RedisClient = redis.createClient({
    socket: {
        host: "127.0.0.1",
        port: "6379"
    },
    username: "your redis username",
    password: "your password"
})

Sử dụng các phiên bản Redis an toàn trong sản xuất. Khi rơi vào trường hợp này, bạn có một giải pháp an toàn URL chuỗi để kết nối hoặc sử dụng các tham số hiển thị ở trên. Dù là trường hợp nào đi chăng nữa, hãy luôn nhớ không để thông tin đăng nhập vào mã và thay vào đó hãy sử dụng các biến môi trường.

Thực hiện các thao tác Redis cơ bản trong Node.js

Đoạn mã sau kết nối với Redis bằng cách sử dụng kết nốiRedis chức năng ở trên và trình bày một số thao tác cơ bản mà bạn có thể thực hiện trong Redis từ các ứng dụng Node của mình.

 const testRedis = async () => {
    await connectRedis()

    
    await RedisClient.set("name", "Timmy")
    const getCommand = await RedisClient.get("name")
    console.log(getCommand)

    
   
    await RedisClient.del("name");
    await RedisClient.setEx("location", 60, "Lagos")

    
    await RedisClient.lPush("days", "monday")
    await RedisClient.rPush("days", "tuesday")
    await RedisClient.lPush("days", "wednesday")
    const daysArray = await RedisClient.lRange("days", 0, -1)
    
    console.log(daysArray)

    
    await RedisClient.rPop("days")
    await RedisClient.lPop("days")
    const newDaysArray = await RedisClient.lRange("days", 0, -1)
    
    console.log(newDaysArray)
}

testRedis()

Lưu ý việc sử dụng không đồng bộchờ đợi đây. Điều này là do tất cả các chức năng chạy không đồng bộ và trả về lời hứa, vì vậy nếu bạn cần kết quả của chúng ngay lập tức, điều quan trọng là chờ đợi họ.

Đoạn mã trên chỉ hiển thị một số thao tác cơ bản mà bạn có thể thực hiện trong Redis từ ứng dụng Node.js. Có rất nhiều lệnh và khái niệm đáng để xem xét.

Các Lệnh Redis phần trong README được tìm thấy trên nút-redis Kho lưu trữ GitHub là một nơi tốt để tìm tất cả các lệnh khác và chức năng của chúng.

Sử dụng Redis để xây dựng các ứng dụng hiệu quả

Khai thác sức mạnh của Redis cho phép bạn, với tư cách là nhà phát triển, xây dựng các ứng dụng phía máy chủ hiệu quả cao. Với khả năng lưu trữ dữ liệu trong bộ nhớ của Redis cũng như các lệnh và cấu trúc dữ liệu mở rộng, các ứng dụng có thể đạt được sự tối ưu hóa hiệu suất vượt trội.

Bạn chắc chắn nên xem xét việc tích hợp Redis vào ứng dụng Node.js tiếp theo của mình để nâng cao hiệu suất của ứng dụng và mang lại trải nghiệm người dùng tốt hơn.

Similar Posts

Leave a Reply

Your email address will not be published. Required fields are marked *