网站文件的同步
来源:互联网 发布:犀牛软件 手机建模 编辑:程序博客网 时间:2024/06/06 04:23
一个网站,除了有数据库,还有很多别的文件,比如用户上传的图片,你的网站代码之类,光有数据库而没有这些文件你的网站也没法跑起来。
和数据库比起来,网站文件要大得多,而且文件数目也多得多,要做到实时同步必须考虑“增量文件同步”,一般传统的方法是使用 inotify + rsync 写脚本来操作。
我们这里采用 Sersync (https://code.google.com/p/sersync/) 来做网站数据同步 。
配置 Slave 上的 WWW 同步
采用 Rsync 做数据同步
uid=rootgid=rootuse chroot=nomax connections=10pid file=/var/run/rsyncd.pidlock file=/var/run/rsync.locklog file=/var/log/rsyncd.logmunge symlinks = nohosts allow=这里填写 Master 的 IP 地址hosts deny=*list=falseread only=noignore errors[WWW]path=/var/WWW ## 网站数据所在的位置
启动 rsync 服务: rsync –daemon
启动 Master 上的 Sersync2 做数据同步
<?xml version="1.0" encoding="ISO-8859-1"?><head version="2.5"> <host hostip="localhost" port="8008"></host> <debug start="false"/> <fileSystem xfs="false"/> <filter start="true"> <exclude expression="^BZFSHOP/Asset/*"></exclude> <exclude expression="^BZFSHOP/Runtime/*"></exclude> <exclude expression="^BZFSHOP/Trash/*"></exclude> <exclude expression="^BZFSHOP/Data/cache/*"></exclude> <exclude expression="^BZFSHOP/Data/temp/*"></exclude> </filter> <inotify> <delete start="true"/> <createFolder start="true"/> <createFile start="true"/> <closeWrite start="true"/> <moveFrom start="true"/> <moveTo start="true"/> <attrib start="false"/> <modify start="false"/> </inotify> <sersync> <localpath watch="/var/WWW"> <remote ip="Slave的IP" name="WWW"/> </localpath> <rsync> <commonParams params="-artu"/> <auth start="false" users="root" passwordfile="/etc/rsync.pas"/> <userDefinedPort start="false" port="874"/><!-- port=874 --> <timeout start="false" time="100"/><!-- timeout=100 --> <ssh start="false"/> </rsync> <failLog path="/tmp/www_rsync_fail_log.sh" timeToExecute="3"/><!--default every 3mins execute once--> <crontab start="false" schedule="600"><!--600mins--> <crontabfilter start="false"> <exclude expression="*.php"></exclude> <exclude expression="info/*"></exclude> </crontabfilter> </crontab> <plugin start="false" name="command"/> </sersync> </head>
启动文件监控同步
## 第一次启动加上 -r 参数做首次同步,之后就不要再加 -r 参数了./sersync2 -n 2 -d -r -o www.xml
后记
完整的对 数据库 和 所有文件 做了实时同步之后,我们的业务就有了保障。一旦主机房出现严重问题,我们可以使用备份数据立即继续中断的业务,最重要的是,业务数据几乎没有任何的丢失。
不像之前,每天一个备份,如果发生严重故障,只能从“昨天”开始了,中间数据丢失会带来巨大的麻烦。
如果需要更加安全,可以考虑 3 备份或者 N 备份,在 N 个城市同时做实时备份数据,一旦发生多点灾难一样可以迅速恢复业务,当然需要的成本也更高。
0 0
- 网站文件的同步
- rsync实现网站的备份,文件的同步
- 镜像网站页面文件同步和数据库同步
- windows服务器文件同步,网站同步镜像
- 几款在线文件同步和备份的网站和工具
- 搭建git私有服务器及同步更新自己网站的文件
- 同步文件的做法
- 分享Windows服务器网站文件同步备份解决方案之cwRsyn进行文件同步
- 分享Windows服务器网站文件同步备份解决方案之cwRsyn进行文件同步
- 大型网站的备份恢复同步策略
- 网站SESSION的同步 管理等。
- ASP.NET MVC 网站开发总结(二)——一个或多个文件的异步或同步上传
- 脱机文件的同步问题
- 项目文件的同步备份
- 服务器文件同步的方法
- 同步文件的shell脚本
- rsync实现文件的同步
- eclipse的文件同步插件
- A* 寻路算法
- poj 1281 MANAGER(简单模拟题)
- 无线网络通信技术完全介绍
- firefly学习笔记之C客户端与Python服务器交互(2)
- 块状元素(div)与内联元素(span)
- 网站文件的同步
- cocos2d-x的初步连连看一
- fpga流水线理解
- 黑马程序员.bobo.DAY.6
- Webkit for android java层主要类库关系及浏览器实例讲解
- jQuery基础---filter()和find()
- Windows环境下Oracle VM VirtualBox安装ubuntu
- 要求输入几个年份,然后输入每个年,求每个年两两之间相差的天数,lua语言
- 华为编程——笨笨熊搬家