• 1. 缓存技术与负载均衡
  • 2. 提纲动态缓存技术集群与负载均衡平台实现策略关键技术 2
  • 3. 动态缓存基于动态缓存的电子商务优化针对电子商务网站的特点和性能要求,在Web服务器前端设置动态缓存服务器,作为Web服务器的前置机,实现动态内容的缓存,加快了响应用户访问的速度;通过一定的替换和更新策略保证用户访问到最新的内容,对提高Web服务器峰值负载下的运行能力,减少访问动态内容的延迟时间起到优化作用。参考文献:http://www.docin.com/p-152105671.html 《基于动态缓存的电子商务平台优化研究》
  • 4. 集群与负载均衡welcome to use these PowerPoint templates, New Content design, 10 years experience集群 Cluster概念: 一组独立的计算机系统构成 一个松耦合的多处理器系统,他们之间通过网络实现进程间的通信。应用程序之间可以通过网络共享内存信息消息传送。实现分布式计算。
  • 5. 集群与负载均衡welcome to use these PowerPoint templates, New Content design, 10 years experience负载均衡Load balance概念: 网络的负载均衡是一种动态均衡技术。基于现有的网络结构,提供了一种扩展服务器带宽和增加服务器吞吐量的廉价有效方法。提高了数据的处理能力、灵活性和可用性。 特点: (1)高可靠性(HA)。利用集群管理软件,当主服务器故障时,备份服务器能够自动接管主服务器的工作,并及时切换过去,以实现对用户的不间断服务。 (2)高性能计算(HP)。即充分利用集群中的每一台计算机的资源,实现复杂运算的并行处理。   (3)负载平衡。即把负载压力根据某种算法合理分配到集群中的每一台计算机上,以减轻主服务器的压力,降低对主服务器的硬件和软件要求。
  • 6. 网罗天下实施策略总体网络架构图
  • 7. 平台实施策略 设计原理Nginx:服务的代理与客户端请求与分发。SSL证书的配置。80及443端口的监听。Redis:动态缓存服务器,Session共享。Tomcat:Web应用服务器集群。JbossCache:单点登录票据的共享。
  • 8. 关键技术Nginx 安装安装nginx,下载下面的插件安装,否则nginx无法识别tomcat中jvmRoute,从而无法达到session复制的效果。 tar xzf nginx-upstream-jvm-route-0.1.tar.gz tar xzf nginx-1.0.5.tar.gzNginx 配置1、 nginx.conf中http{}中配置upstream wlotx { ip_hash; server 192.168.1.218:8080;#Tomcat1 server 192.168.1.219:8080; #Tomcat2 }
  • 9. 关键技术Nginx 配置2、 Server 80端口选段: server { listen 80; server_name buseniss.wlotx.com; #charset koi8-r; #access_log logs/host.access.log main; location / { index index.html index.htm index.jsp; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_connect_timeout 3; proxy_send_timeout 30; proxy_read_timeout 30; proxy_pass http://wlotx; }
  • 10. 关键技术Nginx 配置3、 HTTPS 443端口 Server 选段: server { listen 443; server_name cas.wlotx.com; ssl on; ssl_certificate /usr/local/nginx/conf/server.crt; ssl_certificate_key /usr/local/nginx/conf/server.key; ssl_session_timeout 5m; ssl_protocols SSLv3 TLSv1; ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP; ssl_prefer_server_ciphers on; location / { root html; index index.html index.htm; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_connect_timeout 3; proxy_send_timeout 30; proxy_read_timeout 30; proxy_pass http://wlotx; } }
  • 11. 关键技术Redis安装及配置 daemonize yes pidfile /usr/local/redis/var/redis.pid port 6379 timeout 300 loglevel debug logfile /usr/local/redis/var/redis.log databases 16 save 900 1 save 300 10 save 60 10000 rdbcompression yes dbfilename dump.rdb dir /usr/local/redis/var/ appendonly no appendfsync always glueoutputbuf yes shareobjects no shareobjectspoolsize 1024
  • 12. 关键技术Redis安装及配置 将上面内容写为redis.conf并保存到/usr/local/redis/etc/目录下。 然后在命令行执行:  /usr/local/redis/bin/redis-server /usr/local/redis/etc/redis.conf   即可在后台启动redis服务,这时通过 telnet 127.0.0.1 6379 可查看redis的服务状态。
  • 13. 关键技术JBossCacheTicketRegistry+组播由于单点登录系统的特殊性,不能简单使用session复制技术来实现多服务器间的登录信息共享。JBossCacheTicketRegistry提供了针对单点登录系统集群的共享策略。在cas项目工程里spring-configuration/ticketRegistry.xml文件里面的DefaultTicketRegistry换成JBossCacheTicketRegistry缓存 ;在class文件里添加jbossCache.xml文件添加jboss的缓存配置。jbossCache.xml中依赖组播。
  • 14. 关键技术Tomcat Cluster 安装安装tomcat tar zxf apache-tomcat-6.0.29.tar.gz mv apache-tomcat-6.0.29/usr/local/tomcat cp tomcat-replication.jar /usr/local/tomcat/lib 在另一台机器上安装tomcat_2,步骤同1 分别在tomcat服务器安装jdk chmod 755 jdk-6u26-linux-i586-rpm.bin ./jdk-6u26-linux-i586-rpm.bin cat >>/etc/profile <
  • 15. 关键技术Tomcat Cluster 配置1
  • 16. 关键技术Tomcat Cluster 配置2 注:标红部分为Nginx和TomcatSSL请求间的证书转化。
  • 17. 关键技术Tomcat Cluster 配置3 基于JBossCache的单点登录系统Tomcat配置:
  • 18. 关键技术Tomcat Cluster 配置4基于Redis session 共享的应用系统配置:
  • 19. 关键技术Nginx+Tomcat+SSL 实际上,大规模的网站都有很多台Web服务器和应用服务器组成,用户的请求可能是经由 Varnish、HAProxy、Nginx之后才到应用服务器,中间有好几层。而中小规模的典型部署常见的是 Nginx+Tomcat 这种两层配置,而Tomcat 会多于一台,Nginx 作为静态文件处理和负载均衡。如果Nginx作为前端代理的话,则Tomcat根本不需要自己处理 https,全是Nginx处理的。用户首先和Nginx建立连接,完成SSL握手,而后Nginx 作为代理以 http 协议将请求转给 tomcat 处理,Nginx再把 tomcat 的输出通过SSL 加密发回给用户,这中间是透明的,Tomcat只是在处理 http 请求而已。因此,这种情况下不需要配置 Tomcat 的SSL,只需要配置 Nginx 的SSL 和 Proxy。
  • 20. Thank you!