redis是互聯網發展的產物,作爲key—value的高效存儲系統,爲互聯網應用提供高效的解決方案。redis基於c語言開發,並且提供了基本的數據結構list、set、map,還支持java、c++、.net等衆多語言調用。redis存儲的數據一般放在內存當中,這樣加快了讀取速度。
redis的應用是無限的,根據它的特性,可以想象無限多的應用場景,下面是經常使用的場景:
1.作爲緩存使用,網站併發量大的情況下,很多人使用了這套解決方案,包括持久化數據的緩存,包括狀態化數據的緩存。
2.排隊使用,許多網站有秒殺、搶購的功能,這種功能即時性非常強,需要用高效的機制,發佈庫存的時候,可以把庫存信息存在redis,這樣用戶購買後redis就減少,這樣就不會造成短時間的阻塞。
3.異步通信,服務A作爲生成者,服務B作爲消費者,可以代替笨重的webservice或者http,高效的作爲服務之間的通信。
4.日誌記錄,redis與logstash使用,處理了分佈式日誌系統問題。logstash的agent收集日誌發送到redis,另外一臺中央logstash從redis讀取日誌,集中處理。
當然現實當中還有更多的使用場景,發揮自己的想象。