0
A
回答
1
使用基本Redis的API你不能做到這一點。
我可以看到兩個選項供您:
- 自己做以任何編程語言,你使用Redis的使用;
- 做一個lua script。
這是一個非常簡單的LUA腳本例子,做你想要什麼:
eval "return redis.call('get', redis.call('get', KEYS[1]))" 1 baz
NB:您只能使用此腳本使用獨立Redis的安裝,因爲它的使用不是關鍵通過KEYS
陣列明確聲明,因此它不是羣集安全的(thanx到Itamar Haber的評論)。
1
雖然你不能用Redis Strings做到這一點,但如果你用所有的「keys」和「values」來代替hash,那麼這是可行的。例如:
HSET miniredis foo bar
HSET miniredis baz foo
現在,取本品,你需要的Lua但由於一切都在一個單一的數據結構捆綁在一起,這將是集羣安全(在可擴展性的代價)。
EVAL "return redis.call('HGET', KEYS[1], redis.call('HGET', KEYS[1], ARGV[1]))" 1 miniredis baz
當然,這隻適用於總是存在單個解引用級別的情況。另一個特點是能夠自我引用(例如,HSET miniredis minime minime
)。這些應該在需要時處理。
相關問題
- 1. 是否可以在redux中嵌套reducer?
- 2. 是否可以嵌套ko.utils.arrayFilter?
- 3. 是否可以嵌套preg_match?
- 4. 是否可以嵌套門套?
- 5. 是否可以嵌套索引匹配?
- 6. 是否可以嵌套JavaScript對象?
- 7. 是否可以嵌套清單?
- 8. 是否可以嵌套部分視圖?
- 9. 是否可以嵌套數組json?
- 10. 是否可以綁定嵌套泛型?
- 11. 是否可以嵌套SQL表?
- 12. XHTML是否可以嵌套更多XHTML?
- 13. 在sequelize.js中,是否可以使用嵌套包含嵌套查詢的結果?
- 14. 是否可以在SASS中的變量中嵌套變量?
- 15. CollectionViewSources是否可嵌套?
- 16. 是否可以在PigLatin中創建沒有COGROUP的嵌套FOREACH?
- 17. 是否可以在Mandrill中使用嵌套合併標籤?
- 18. 是否可以在java中調用回外部嵌套類?
- 19. 是否可以在ASP.NET MVC 2中嵌套區域?
- 20. if語句是否可以嵌套在while循環中?
- 21. 是否可以在DynamoDB中插入嵌套字段?
- 22. 是否可以在NSPredicate中使用嵌套的SUBQUERY?
- 23. 是否可以在媒體查詢中嵌套媒體查詢?
- 24. 是否可以在SSRS 2005中嵌套DataSets?
- 25. 是否可以在同一個事務中嵌套句子?
- 26. 是否可以在Android中嵌套資源數組?
- 27. 是否可以在Scala Ammonite shell中嵌套命令調用?
- 28. 是否可以在Wicket中嵌套相互獨立的窗體?
- 29. 是否可以將一個VML嵌套在另一個VML中?
- 30. 是否可以在句柄模板中嵌套if/else語句?
>用lua腳本做 - 不要。您正在訪問未通過'KEYS'數組明確聲明的密鑰,並且這不是羣集安全的。 –
@ItamarHaber好點 –
;)添加一個基於Lua的答案,應該這樣做 –