Mẹo nhỏ: Để tìm kiếm chính xác các bài viết của Vuihecungchocopie.vn, hãy search trên Google với cú pháp: "Từ khóa" + "vuihecungchocopie". (Ví dụ: công thức giải rubik 3x3 vuihecungchocopie). Tìm kiếm ngay
16 lượt xem

Redis là gì? Ưu điểm của nó và ứng dụng

Bạn đang xem: Redis là gì? Ưu điểm của nó và ứng dụng Tại Vuihecungchocopie                        

Bạn đang quan tâm đến Redis là gì? Ưu điểm của nó và ứng dụng phải không? Nào hãy cùng Vuihecungchocopie đón xem bài viết này ngay sau đây nhé, vì nó vô cùng thú vị và hay đấy!

redis là gì?

Redis là gì? – redis (Máy chủ Từ điển Từ xa) là một phần mềm mã nguồn mở để lưu trữ dữ liệu có cấu trúc và có thể được sử dụng làm cơ sở dữ liệu, bộ nhớ cache hoặc môi giới tin nhắn.

Đây là một hệ thống lưu trữ dữ liệu khóa-giá trị rất mạnh mẽ và phổ biến hiện nay. redis nổi bật và hỗ trợ nhiều cấu trúc dữ liệu cơ bản, chẳng hạn như: băm, danh sách, tập hợp, tập hợp đã sắp xếp, chuỗi … Tất cả dữ liệu được ghi và lưu trữ trên ram nên tốc độ đọc ghi dữ liệu rất cao nhanh chóng.

Bạn đang xem: Redis la gi

redis là gì

ứng dụng redis

Sau khi nói về redis, chúng ta hãy xem ứng dụng của redis. Ngoài việc lưu trữ khóa-giá trị trong ram, redis còn hỗ trợ sắp xếp, truy vấn và sao lưu dữ liệu trên đĩa cứng, cho phép bạn khôi phục dữ liệu khỏi sự cố hệ thống bất cứ lúc nào … Sao chép (chạy nhiều máy chủ redis đồng thời).

  • Bộ nhớ đệm: Được sử dụng làm bộ nhớ đệm. Nó là redis có thể được sử dụng như một bộ nhớ cache, nơi dữ liệu được chia sẻ giữa các ứng dụng hoặc như một cơ sở dữ liệu tạm thời để đạt được tốc độ đọc và ghi nhanh. Ngoài ra, redis có thể được sử dụng để làm bộ nhớ đệm toàn trang cho các trang web. Cũng vì tính nhất quán của redis nên ngay cả khi redis được khởi động lại, người dùng sẽ không cảm thấy chậm khi tải trang.
  • Bộ đếm: Sử dụng làm bộ đếm. Khi dữ liệu được lưu trữ trong ram, các thông số tăng và giảm rất nhanh, và các bộ sưu tập và bộ sưu tập được sắp xếp được sử dụng để tính số lần xem trang cho các trang web, chẳng hạn như thứ hạng trong trò chơi. Redis hỗ trợ an toàn luồng, vì vậy dữ liệu có thể được đồng bộ hóa giữa các yêu cầu.
  • Xuất bản / Đăng ký (pub / sub): Tạo kênh chia sẻ dữ liệu. redis hỗ trợ tạo các kênh để trao đổi dữ liệu giữa nhà xuất bản và người đăng ký, chẳng hạn như các kênh trong socket cluster hoặc các chủ đề trong apache kafka. Ví dụ: pub / sub được sử dụng để theo dõi các kết nối trong mạng xã hội hoặc hệ thống trò chuyện.
  • Hàng đợi: Tạo hàng đợi để xử lý các yêu cầu theo trình tự. Redis cho phép lưu trữ danh sách và cung cấp một số lượng lớn các hoạt động trên các phần tử danh sách, vì vậy nó cũng có thể được sử dụng như một hàng đợi thông báo.
  • Loại dữ liệu trong redis

    Không giống như các rdms như mysql hoặc postgresql, redis không có bảng. redis lưu trữ dữ liệu dưới dạng khóa-giá trị. Thực ra memcache cũng vậy nhưng kiểu dữ liệu của memcache bị hạn chế, không đa dạng như redis nên không hỗ trợ nhiều thao tác của người dùng. Dưới đây là tổng quan ngắn gọn về các kiểu dữ liệu mà redis sử dụng để lưu trữ các giá trị.

    -string : Chuỗi, số nguyên hoặc số thực. Redis có thể xử lý toàn bộ chuỗi, một phần chuỗi và các giá trị tăng / giảm của số nguyên và số thực.

    -list : list là một danh sách các chuỗi, được sắp xếp theo thứ tự chèn. redis có thể thêm một phần tử vào đầu hoặc cuối danh sách. danh sách tốt cho các vấn đề trong đó các phần tử cần được thao tác ở gần đầu và cuối, bởi vì việc truy cập này rất nhanh, ngay cả khi chèn hàng triệu phần tử. Nhưng nhược điểm là việc truy cập các phần tử ở giữa danh sách chậm.

    -set : Tập hợp chuỗi (không được sắp xếp). Redis hỗ trợ các thao tác thêm, đọc và xóa từng phần tử, kiểm tra sự xuất hiện của các phần tử trong bộ sưu tập. Ngoài ra, redis cũng hỗ trợ các hoạt động thiết lập, bao gồm cả giao nhau / liên hiệp / khác biệt.

    -hash : Bảng băm lưu trữ một cặp khóa-giá trị, trong đó các khóa được sắp xếp ngẫu nhiên, không có thứ tự nào cả. redis hỗ trợ thêm, đọc, loại bỏ các phần tử riêng lẻ và đọc tất cả các giá trị.

    tập hợp đã sắp xếp (zset) : là một danh sách trong đó mỗi phần tử là một ánh xạ của một chuỗi (thành viên) và một số thực (phân số), danh sách được sắp xếp bằng điểm này. Các phần tử của zset được sắp xếp theo thứ tự tăng dần của điểm.

    Ngoài ra, redis hỗ trợ các kiểu dữ liệu khác như mảng bit, siêu nhật ký, luồng, v.v. Vui lòng tham khảo tài liệu redis để cài đặt.

    Xem thêm: Tinder là gì? Cách tải, đăng ký chơi match Tinder hiệu quả để nhanh tìm được nửa kia của mình

    Để có thể quản lý redis bằng giao diện web, bạn có thể sử dụng công cụ phpredisadmin: https://github.com/erikdubbelboer/phpredisadmin để quản lý cơ sở dữ liệu.

    Redis dai dẳng là gì

    Ngoài việc lưu trữ các khóa-giá trị trong bộ nhớ ram, redis còn có 2 luồng nền dành riêng cho việc ghi dữ liệu định kỳ vào đĩa cứng.

    Có hai loại tệp được ghi vào đĩa:

    rdb (tệp cơ sở dữ liệu redis)

    rdb thực hiện tạo ảnh chụp nhanh và sao lưu cơ sở dữ liệu vào đĩa định kỳ.

    Ưu điểm

    rdb cho phép người dùng lưu các phiên bản khác nhau của db, rất tiện dụng khi có sự cố.

    Bằng cách lưu trữ dữ liệu trong các tệp cố định, người dùng có thể dễ dàng chuyển dữ liệu đến các trung tâm dữ liệu và máy chủ khác nhau.

    rdb giúp tối ưu hóa hiệu suất redis. Quá trình redis chính sẽ chỉ thực hiện công việc trên ram, bao gồm các hoạt động cơ bản được khách hàng yêu cầu như thêm / đọc / xóa, trong khi quá trình con sẽ xử lý các hoạt động i / o đĩa. Tổ chức này tối đa hóa hiệu suất của redis.

    Khi khởi động lại máy chủ, việc sử dụng rdb để xử lý lượng lớn dữ liệu sẽ nhanh hơn so với việc sử dụng aof.

    Nhược điểm

    Nếu bạn muốn giảm thiểu rủi ro mất dữ liệu, rdb không phải là một lựa chọn tốt.

    Thông thường, người dùng sẽ thiết lập để tạo ảnh chụp nhanh rdb cứ sau 5 phút (hoặc hơn). Vì vậy trong trường hợp có sự cố mà redis không hoạt động được thì dữ liệu của phút cuối sẽ bị mất.

    rdb cần sử dụng fork () để tạo một quy trình con cho các hoạt động i / o đĩa. Nếu dữ liệu quá lớn, quá trình fork () có thể tốn thời gian và máy chủ sẽ không thể đáp ứng yêu cầu của khách hàng, tùy thuộc vào lượng dữ liệu và hiệu suất của cpu, có vài mili giây hoặc thậm chí 1 giây.

    aof (chỉ thêm tệp)

    Xem thêm: Trình dược viên là gì và những điều chưa biết về nghề trình dược?

    aof lưu giữ tất cả các hoạt động ghi mà máy chủ nhận được, các hoạt động này sẽ chạy lại khi máy chủ được khởi động lại hoặc tập dữ liệu ban đầu được đặt lại.

    Ưu điểm

    Sử dụng aof sẽ giúp đảm bảo rằng tập dữ liệu mạnh mẽ hơn so với sử dụng rdb. Người dùng có thể cấu hình redis để ghi lại mọi truy vấn hoặc mọi giây.

    redis ghi nhật ký bằng cách thêm vào cuối tệp hiện có, vì vậy không cần tìm kiếm tệp hiện có. Ngoài ra, ngay cả khi chỉ một nửa số lệnh được ghi trong tệp nhật ký (có thể do ổ đĩa đã đầy), redis vẫn có cơ chế để quản lý và sửa lỗi theo cách này (redis-check-aof).

    redis cung cấp một quy trình nền cho phép viết lại các tệp aof khi tệp quá lớn.

    Trong khi máy chủ vẫn đang thực hiện các thao tác trên tệp cũ, một tệp hoàn toàn mới được tạo với số lượng thao tác ít nhất để tạo tập dữ liệu hiện tại. Và khi tệp mới được ghi, redis sẽ chuyển sang ghi tệp mới.

    Nhược điểm

    tệp aof thường lớn hơn tệp rdb có cùng tập dữ liệu.

    aof có thể chậm hơn rdb, tùy thuộc vào khoảng thời gian được đặt để sao lưu đĩa cứng. Tuy nhiên, thiết lập nhật ký cứ sau 1 giây có thể đạt được hiệu suất tương tự như rdb.

    Các nhà phát triển của redis đã gặp lỗi trong aof (mặc dù rất hiếm), aof không thể xây dựng lại tập dữ liệu một cách chính xác khi khởi động lại redis. Không bao giờ gặp lỗi này khi sử dụng rdb.

    Tóm tắt Redis là gì?

    redis là một lựa chọn tốt khi bạn cần một máy chủ lưu trữ dữ liệu yêu cầu khả năng mở rộng cao và được chia sẻ bởi nhiều quy trình, nhiều ứng dụng và nhiều máy chủ khác nhau.

    Có thể bạn muốn tìm hiểu thêm:

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *