Redis
 sql >> Cơ Sở Dữ Liệu >  >> NoSQL >> Redis

redis lua script so với các cuộc gọi đơn lẻ

Có, LUA script là giải pháp tốt nhất trong trường hợp EVALSHA gọi:

  • Bạn đang làm việc không đồng bộ với redis. Vì vậy, LUA giúp bạn giảm số lượng mã và khả năng đọc mã.
  • LUA trường hợp nhanh hơn vì giảm giao tiếp mạng.

Tôi nghĩ bạn có thể viết mã của mình chỉ với 2 lệnh. Bạn không cần exists trong mã của bạn.

local path = KEYS[1]
local resourcesPrefix = ARGV[1]
local collectionsPrefix = ARGV[2]
local ret

set ret = redis.call('get',resourcesPrefix..path)
if ret then
   return ret
end  
set ret = redis.call('smembers',collectionsPrefix..path)
if ret then
   return ret
end  

return "notFound" 


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. StackExchange.Redis hết thời gian chờ

  2. redis để ghi nhật ký

  3. Sử dụng nhóm đa xử lý từ tác vụ cần tây làm tăng ngoại lệ

  4. Redis hoạt động như thế nào để giúp Kiên trì trong phiên trong khung cảnh cửa sổ

  5. Quy ước đặt tên và các ký tự hợp lệ cho khóa Redis