redis是基於內存的非關係型數據庫,數據是以key-value的形式來存儲的。redis的讀寫效率很是高,處理併發訪問能力很強。主要應用場景是分佈式緩存redis
redis中的key只有string類型。可是value有五種數據類型:字符串string,散列hash,列表list,集合set,有序集合sorted set。數據庫
redis操做都是原子性的,線程安全,保證數據完整性。緩存
一個Tomcat同一時刻可以處理的請求大約200-300,當同一時刻有多個請求訪問同一個Tomcat,併發訪問量大的時候,一個Tomcat就不夠用了,就須要多個Tomcat,也就是Tomcat集羣。可是Tomcat集羣中每一個Tomcat之間不能共享數據,並且效率低,來一個請求訪問一次後臺。當數據庫中的數據發生改變時,Tomcat中的緩存信息都要發生改變,維護成本高,這時,須要有一個專門存放緩存的服務器來存儲緩存信息,當接收到一個請求時,Tomcat先去這個服務器中查找。這就是redis。redis專門用做分佈式緩存,處理大量數據的高訪問負載。安全
redis數據是在內存中存放的,查找速度快,而MySQL是在磁盤中存放數據的,沒有redis效率高。服務器