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读取日志,集中处理。
当然现实当中还有更多的使用场景,发挥自己的想象。