集群方案
目的
为了使普通Java Web应用在tomcat上面一下具备了SNA(Share Nothing Architecture)架构的能力.实现负载均衡和http session的失败转移.需要在目前的结构中加入一个分布式的数据缓存层,我们准备采用memcached作为数据缓存层软件.请你帮忙安装一下,相关软件我会再发邮件给你.
步骤:
1,在Tomcat服务器(192.200.8.110)和在Tomcat服务器(192.200.8.108)上分别安装
libevent 和 memcached
安装步骤:
cd /www/src/
tar zxvf libevent-1.3e.tar.gz
cd libevent-1.3e
./configure --prefix=/usr //指定目录
make
make install
tar zxvf memcached-1.2.4.tar.tar
cd memcached-1.2.2
./configure --with-libevent=/usr //必须指定libevent目录
make
make install
启动:
memcached -d –m 1024 -l 192.200.1.75 -p 11211 -u root
-d 以守护程序(daemon)方式运行 memcached;
-m 设置 memcached 可以使用的内存大小,单位为 M;
-l 设置监听的 IP 地址,如果是本机的话,通常可以不设置此参数;
-p 设置监听的端口,默认为 11211,所以也可以不设置此参数;
-u 指定用户;
检查一下进程是否已经启动.
ps –ef |grep memcached
2 , 更改LVS设置,使LVS不需要负责维持session通道的持久性.(因为程序还没有更新,等需要测试的时候再设置)
3, 上述两个软件,我再发给你.
注意:在64位的机器上可能需要
ln -s /usr/local/lib/libevent-1.3e.so.1 /lib64/
还要看看 /usr/local/lib是不是有该文件
cp libevent-1.3e.so.1 /usr/local/lib/libevent-1.3e.so.1
VS/DR 配置
Director的配置
ipvs的脚本如下:
#!/bin/bash
ipvsadm -C
ipvsadm -A -t 192.200.8.111:8080 -s wlc
ipvsadm -a -t 192.200.8.111:8080 -r 192.200.8.113 -g
ipvsadm -a -t 192.200.8.111:8080 -r 192.200.0.115 -g
/etc/sysconfig/network:
NETWORKING=yes
HOSTNAME=localhost.localdomain
GATEWAY=192.200.8.251
/etc/sysconfig/network-scripts/ifcfg-eth0 :
DEVICE=eth0
ONBOOT=yes
BOOTPROTO=static
IPADDR=192.200.8.254
NETMASK=255.255.255.0
/etc/sysconfig/network-scripts/ifcfg-eth0:0 :
DEVICE=eth0:0
ONBOOT=yes
BOOTPROTO=static
IPADDR=192.200.8.111
NETMASK=255.255.255.255
Realserver的配置
/etc/sysctl.conf:
net.ipv4.ip_forward = 1
net.ipv4.conf.lo.arp_ignore = 1
net.ipv4.conf.lo.arp_announce = 2
net.ipv4.conf.all.arp_ignore = 1
net.ipv4.conf.all.arp_announce = 2
在/etc/sysconfig/network-scripts/ifcfg-eth0中配置ip地址和网关。
DEVICE=eth0
ONBOOT=yes
BOOTPROTO=static
IPADDR=192.200.8.113
NETMASK=255.255.255.0
BROADCAST=192.168.0.255
GATEWAY=192.168.0.252
配置VIP的网卡为/etc/sysconfig/network-scripts/ifcfg-lo:0。
DEVICE=lo:0
IPADDR=192.200.8.111
NETMASK=255.255.255.255
ONBOOT=yes
分享到:
相关推荐
搭建一个基于Linux、PHP和Memcached的网站架构是一项常见的任务,尤其对于那些希望提升网站性能、减少...通过按照这些指南进行操作,开发者可以成功地建立一个高效的Web服务架构,利用Memcached来优化数据库性能。
- **`mcmaster`**:在分布式环境中,mcmaster可以用于集群管理和故障转移,监控多个Memcached节点的状态,并在节点失效时自动重新分配数据。 - **`telnet`**:最基础的管理方式是直接通过telnet连接到Memcached...
1. **C/S架构与简单的协议**:Memcached采用了客户端/服务器(C/S)的架构模式,并且支持一个非常简单的协议,使得其在网络传输中的开销较小,易于实现与集成。 2. **基于libevent的事件驱动机制**:Memcached内部...
2. **建立连接**:创建Memcached客户端,并与Memcached服务器建立连接。 3. **执行操作**:通过客户端API执行数据的存储、获取和删除等操作。 #### 三、为Java应用实现缓存系统 ##### 3.1 Java应用与Memcached集成...
- 应用服务器规模: 为了应对高并发访问,eBay部署了大量的应用服务器集群。 - 数据库分布扩展架构: 使用了多种技术手段实现了数据库的分布式扩展。 #### 4. 高并发高负载网站的系统架构设计 - **系统分层设计**: ...
5. **数据存储**:早期使用Memcached建立一致性Hash集群,后来部分系统转向Redis,利用其更好的并发读写性能。航班数据存储按照出发地、到达地和日期进行组织。 6. **航班类型**:系统需要处理单程航班、往返航班...
3. **缓存机制**:利用缓存技术,如Redis或Memcached,将频繁访问的数据存储在内存中,减少数据库的直接读写次数,极大地提高了数据访问速度。 4. **定期维护**:包括但不限于数据归档、表优化、索引重建等,这些都...
4. **前端架构**:优化页面结构,分离静态请求,利用反向代理提升速度。前端性能优化工具如JDK Tools、JProfiler、Resin Profiler等帮助调整内存和线程配置。 5. **负载均衡**:应对高并发请求,采用四层和七层负载...
本文主要探讨了如何通过优化Web系统架构来提升工作效率,特别是利用缓存技术构建服务器集群的方法。对于初学者来说,理解Web的工作原理以及服务器集群的部署策略有助于提高开发水平。 **Web应用的工作原理** Web...
4. **容灾备份**:建立完整的容灾备份体系,包括数据备份、系统备份以及异地灾备等措施,确保在发生灾难时能够快速恢复服务。 #### 自动化测试 自动化测试对于确保网站质量、提升开发效率具有重要意义。通过自动化...
5. **监控与维护**:建立完善的监控体系,定期检查系统状态,及时处理可能出现的问题。 #### 五、结论 本文介绍了一种基于廉价硬件平台的高性能、高并发、高扩展性的Web应用系统架构设计思路。通过对关键技术点的...
3. **缓存**:Redis或Memcached用于存储热点数据,减少对数据库的访问压力,提高响应速度。 4. **消息队列**:RabbitMQ或Kafka用于异步处理和解耦服务间的通信,实现削峰填谷。 5. **分布式事务**:Seata或2PC(两...
可以采用如Memcached或Redis作为分布式缓存,实现多节点间的同步。此外,数据库事务处理和死锁避免也至关重要,合理设置事务隔离级别和使用乐观锁、悲观锁策略。 3、文件存储:大规模文件存储通常采用分布式文件...
### QQ架构设计中的关键技术点分析 #### 登录时的负载处理 登录阶段是任何即时通讯系统面临的关键挑战之一,尤其是在用户基数庞大且活跃度高的情况下,例如QQ这种拥有数亿用户的平台。为了确保用户能够快速、顺畅地...
常见的缓存方案包括使用Apache自身的缓存模块、第三方缓存服务如Memcached或Redis等。在实际应用中,可以根据具体需求选择合适的缓存策略,如将热门数据持久化在内存中,或是利用分布式缓存系统来支持跨服务器的数据...
5. 数据存储与处理:大数据存储通常采用分布式数据库(如HBase、Cassandra)、NoSQL数据库(如MongoDB)或关系型数据库集群(如MySQL Cluster)。数据处理则可能涉及批处理(如Hadoop)和实时处理(如Spark)。 6. ...
4. 数据分析:利用数据挖掘、机器学习算法,如分类、聚类、关联规则等,从数据中提取有价值信息。 二、高并发架构 高并发架构设计的目标是确保系统在面临大量用户请求时仍能保持稳定和高效。以下是一些关键策略: ...
- **架构优化**:采用分布式架构,将不同业务模块部署在不同的服务器集群中。 - **性能监控**:建立了完善的性能监控体系,实时监控系统的各项指标,及时发现并解决问题。 - **社区支持**:积极贡献开源项目,...