本人一直被这种模式存在疑惑:
比如:一个培训系统包含(门户站+培训系统) PHP5+MySQL5+Apache2内容门户站
中心站->分站(只有视频) 培训系统与数据库都在中心,当点击视频播放时调自己分站视频播放目前存在这样问题:
1、视频资源分发,分站越多,视频分发也麻烦
2、这样的架构,当达到20W左右中心服务器是否能承受(主要是页面浏览以及数据更新),在线最高峰可能在1000左右需要讨论的:
1、对于这样的网站架构怎么样做比较好
2、做集群还是有其他更好的解决方案
3、如果成这样的 中心站(培训平台+数据库+视频)-省级中心(培训平台+数据库+视频)-地方分站(视频),如果这样的省级中心多的话又存在数据同步问题,怎么解决好。欢迎大家指点、讨论,本人不怎么熟悉,人多了分不够,再开帖继续讨论。

解决方案 »

  1.   

    没做过视频站,也不了解是怎么分发的!但单从http的角度讲,能否做中间代理或路由服务器!中间代理可缓存数据!这相从apache上能否有解决?
    其代理模块能否用得上?
      

  2.   

    对于这样的网站架构怎么样做比较好
    1.单独设立保存静态数据的CDN集群
    2.CDN静态数据通过NFS统一管理,可以根据理论路径名称的不同分配到不同的服务器
    3.CDN的web服务器上不要管理数据,采用同一访问NFS的形势公开HTTP数据。
    4.条件允许,CDN的web服务器甚至可以不要硬盘,用闪存。使用相同的软件配置环境,制作假如自己设定内容和软件的Linux,一旦某台服务器损坏可以快速安装。做集群还是有其他更好的解决方案
    1.做多个(IP)入口,域名分同时配到多个入口
    2.HTTP、AP、DB各个群做Layer4-7的集群。具体根据预算、访问量来设立。注意留出扩充空间。
    3.DB可以用自带或者外部的复制功能。在此基础之上,根据需要还可以用Layer4开关做分散。
    4.mysql做分散的话,更新、搜索的数据分开。根据处理不同,选择适当的桌面引擎。
    5.HTTP协议通信的多重化,session的共享可以使用数据库,或Layer4-7开关。如果成这样的 中心站(培训平台+数据库+视频)-省级中心(培训平台+数据库+视频)-地方分站(视频),如果这样的省级中心多的话又存在数据同步问题,怎么解决好。 

    1.数据同步的方法上面已经说了。这里存在的,主要是数据库分布管理问题。
    2.数据库统一管理,出入口使用Layer4-7开关。
    3.通过Layer4-7开关,将两个以上的DB集群多重化
      

  3.   

    楼上强,据说百度的都不用硬盘了,全部用闪盘+NFS
      

  4.   

    做集群需要大笔的资金,如果用layer4-7开关的话,光它的开销就得用10W RMB单位计算,
    这还不算服务器、人工、场地等费用。
    所以,没有一定访问量或者严谨的投资计划的网站,几乎很难涉及到这方面的布局。
      

  5.   

    宏观上的概念谁都懂,做raid,做集群,多台服务器环形结构避免单点故障,dns负载均衡...在这里做这种讨论的意义其实不大。当你具体实践中,还会碰到多如牛毛的问题,要灵活变通,不要太拘泥于一种模式,把所有好的方法拿过来串联在一起,摸索怎么将他们串联起来做出最适合你的架构。这些只能靠你自己来摸索。