成都网站建设设计

将想法与焦点和您一起共享

redis介绍及保持session会话-创新互联

█Redis介绍

创新互联建站成都企业网站建设服务,提供成都网站制作、做网站、外贸营销网站建设网站开发,网站定制,建网站,网站搭建,网站设计,成都响应式网站建设公司,网页设计师打造企业风格网站,提供周到的售前咨询和贴心的售后服务。欢迎咨询做网站需要多少钱:13518219792

●redis是一个key-value存储系统。和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(sorted set --有序集合)和hash(哈希类型)。与memcached一样,为了保证效率,数据都是缓存在内存中。区别的是redis会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件,并且在此基础上实现master-slave(主从)同步。

●redis是一个高性能的key-value数据库。redis的出现,很大程度补偿了memcached这类key-value存储的不足,在部分场合可以对关系数据库起到很好的补充作用。它提供了Java,C/C++,C#,PHP。JavaScript,Perl,Object-C,Python,Ruby等客户端,使用很方便。

●简单比较Redis与Memcached的区别:

1、Redis不仅仅支持简单的k/v类型的数据,同时还提供list,set,zset,hash等数据结构的存储。

2、Redis支持数据的备份,即master-slave模式的数据备份。

3、Redis支持数据的持久化,可以将内存中的数据保持在磁盘中,重启的时候可以再次加载进行使用。

●在redis中,并不是所有的数据都一直存储在内存中,这是和Memcached相比一个大的区别。Redis只会缓存所有的key信息,如果Redis发现内存的使用量超过了某一个阀值,将触发swap的操作,Redis根据“swappability = age*log(size_in_memory)”计算出哪些key对应的value需要的swap到磁盘,然后将这些key对应的value持久化的磁盘中,同时在内存中清除。这种特性使得Redis可以保持超过其他机器本身内存大小的数据。当然,机器本身的内存要能够保持所有的key,因为这些数据是不会进行swap操作的

●当从Redis中读取数据的时候,如果读取的key对应的value不在内存中,那么Redis就需要从swap文件中加载相应数据,然后再返回给请求方

█如何保持session会话

●目前,为了方便web能适应大规模的访问,需要实现应用的集群部署。集群最有效的方案就是负载均衡,而实现负载均衡用户每一个请求都有可能被分配到不固定的服务器上,这样我们首先要解决session的统一来保证无论用户的请求被转发到那个服务器上都能保证用户的正常使用,即需要实现session的共享机制。

●在集群系统下实现session统一有以下几种方案:

1、请求精确定位:sessionsticky,例如基于访问ip的hash策略,即当前用户的请求都集中定位到一台服务器中,这样单台服务器保存了用户的session登录信息,如果宕机,则等同于单点故障,会丢失,会话不复制。

2、session复制共享:sessionreplication,如Tomcat自带session共享,主要是指集群环境下,多台应用服务器之间同步session,使session保持一致,对外透明。如果其中一台服务器发生故障,根据负载均衡的原理,调度器会遍历寻找可用节点,分发请求,由于session已同步,故能保证用户的session信息不会丢失,会话复制。

★上述方案的不足之处:

①必须在同一种中间件完成(如:Tomcat-Tomcat之间)

②session复制带来的性能损失会快速增加,特别是当session中保存了较大的对象,而且对象变化较快时,性能下降更加显著,会消耗系统性能。这种特性使得web应用的水平扩展受到了限制。

③session内容通过广播同步给成员,会造成网络流量瓶颈,即便是内网瓶颈。在大并发下表现并不好

3、基于cache DB缓存的session共享

即使用cache DB存取session信息,应用服务器接受请求将session信息保存在cache DB中,当应用服务器发生故障时,调度器会遍历寻找可用节点,分发请求,当应用服务器发现session不在本机内存时,则去cache DB中查找,如果找到则复制到本机,这样实现session共享和高可用

另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


当前标题:redis介绍及保持session会话-创新互联
本文网址:http://chengdu.cdxwcx.cn/article/djoooj.html