请教网络文件系统和保持数据库的同步问题,章博士和做过的兄弟进来看看

我们做集群是用来提供web服务的,所有的RS提供相同内容的web服务,RS用linux+apache+mysql+php做,3个软件装在一台机器上
这样就会出现下面2个问题
1>当用户更改某个web页面web1.php时,如何保证所有RS上的web1.php的内容的一致性?看到一些资料说用NFS网络文件系统,那么请问,NFS是装在director机器上还是任何一台RS机器上? NFS的I/O性能如何,有其他的同类型软件吗?

2>当用户在RS1上注册后,下次访问director把他的请求发到RS2上,那么RS2上的mysql里显然没有他上次注册的信息,我如何保证所有的mysql数据库表的内容一致性?用什么软件...装在那个机器上...如何实现等等

恳切的希望章博士和其他做过这个的兄弟能够指点一下小弟,万分感谢!!!!

Forums:

看上去和LVS完全无关么......

1。 相信你不会容许一个WEB用户来随便修改你的PHP文件,我想你的意思应该是用户提交后的信息保存在某个地方,而你又想让所有的RS来同步这个信息,想同步后端不同RS之间的文件/目录,方法很多,RSYNC/NFS都可以,NFS当然是一台独立的SERVER(至少逻辑上独立),其他RS来
mount它就可以了,NFS的性能取决于你用的是什么NFS SERVER,有软件实现的,有纯粹硬件实现的,差别很大。

2。比较好的办法是,所有的注册全部注册到一个主库(master)中,然后用户访问时只访问mysql slave,然后用mysql的binlog实现master-->slave的同步.

还是想说,这和LVS没什么关系么,完全是一些基本的负载均衡、数据分布的基本概念

This weitbse makes things hella easy.

That's not even 10 minteus well spent!

That's a smart answer to a dicffiult question.

还是有些关系.呵呵
他的架构前端一定有LVS调度器,用户的请求被调度器通过算法交付给后端的WEB Server
至于楼主问题中关于文件/数据同步,是因其应用架构决定的.

1.关于文件同步
我想楼主想表达的意思不一定是用户修改某个php文件,或许是用户会上传一些图片或者文件
用RSYNC实现的数据同步,有两个问题,一个是实效性可能不能满足你的需求,二是定时调度的RSYNC可能会产生"下旋"造成同步循环失效
用NFS的话,主要考量NFS Server的I/O.这个又和你的应用关系很大.也可以选择商业产品化的NAS设备
2.关于数据同步
如果你的应用对数据库压力不大的话,建议采用单独的MySQL服务器,并做调优
如果你的应用对数据库压力大的话,可以采用Msster->Slave的复制模式,并把你的PHP程序做的只能,让写操作连接Master,查询操作连接Slave,并且Slave还可以继续扩展.
3.关于LVS调度算法
你的WEB应用,估计会有动态内容操作,也就是带状态值的会话,比如登陆啊什么的.对于动态的WEB应用,应该需要打开持久连接选项

上面的老兄分析得不错。。

Stellar work there eveyorne. I'll keep on reading.

I did'nt know where to find this info then kaboom it was here.

Smart thinikng - a clever way of looking at it. http://xubqrot.com [url=http://qxjaqqzm.com]qxjaqqzm[/url] [link=http://ikfmjk.com]ikfmjk[/link]

I read your post and wiehsd I was good enough to write it

上面的老兄分析得不错。。

上面的老兄分析得不错。。

我想问题1和2可以统一考虑。对于永久性数据可以考虑放在共享的存储层,而不是放在真实服务器上。静态数据可以放在NFS上,动态数据放在数据库中。

NFS性能应该还不错,一台NFS服务器一般来说可以支持4~8台应用服务器。

MySQL若遇到性能问题,可以考虑使用MySQL集群。

只所以对这个架构有些看法,是因为我最近也在看关于NFSV4以及MySQL群集的东西.
呵呵,有问题的话还请大家指教.