zoukankan      html  css  js  c++  java
  • 关于WEB集群中文件服务器的讨论

    原文地址: http://blog.itpub.net/29806344/viewspace-1364778/

    在WEB集群中一般都要上传和删除图片。小规模的时候,图片放在本地,再通过同步方式来保持一致。

    常见的文件服务器:samba+web,ftp+web,nfs+web,rsync单向同步,分布式存储

     samba+web,ftp+web这2种需要改程序代码,用的不多;rsync单向同步在小环境中用;nfs+web在中型环境用的最多;大型环境,海量文件用的是分布式存储,比如hadoop等。

    一:samba+web文件服务器

       存储:通过samba账号和密码来存储图片,需要修改程序代码

       调取:通过文件服务器web的URL

    二:ftp+web文件服务器

       存储:通过ftp账号和密码来存储图片,需要修改程序代码

       调取:通过文件服务器web的URL

    三:rsync+inotify文件服务器

    存储:保存到WEB本地,通过rsync同步到文件服务器

       调取:通过文件服务器web的URL

       缺点:单向同步

    四:rsync+sersync+web文件服务器
    和rsync+inotify相同,但是比其更快更节约资源 

    五:nfs+web文件服务器

    存储:远程nfs文件夹挂载到本地,nfs同步

       调取:1,通过文件服务器web的URL;2,直接在挂载的文件夹下取图片

     

    实际操作如下:

    NFS+WEB文件服务器:192.168.47.142

    WEB1:192.168.47.143

    WEB2:192.168.47.144

     

    在NFS文件服务器上:

    yum install nfs-utils -y

    yum install httpd  -y

    chmod 777 -R /var/www/html/upload

    chkconfig nfs on

    cat /etc/exports:

    /var/www/html/upload   *(rw,sync,root_squash)   192.168.47.142

    /var/www/html/upload    192.168.47.0/24(rw,sync,root_squash)

     

    /etc/init.d/rpcbind restart

    /etc/init.d/nfs restart

     

     

     

    在两台WEB上:

    mkdir /var/www/html/upload

    chmod 777 -R  /var/www/html/upload

    cat /etc/fstab:

    ......

    proc                    /proc                   proc    defaults        0 0 192.168.47.142:/var/www/html/upload  /var/www/html/upload  nfs defaults     0 0

    #注意:写入/etc/fstab中,会自动开机挂载的

    mount –a

     

    #WEB2的操作和WEB1一样即可;

    注意:

    当图片多了,可以把upload的功能从中分离出来,可以考虑利用URL进行hash分组,用一组机器来实现upload,另一组机器来实现浏览。进行不同的设置,可以充分利用到NFS的缓存,可以提高性能

  • 相关阅读:
    ubuntu的php7与apache2的环境搭建
    git服务器搭建post-receive 钩子部署服务端代码
    node redis安装与使用
    微信小程序坑集
    微信小程序登录
    mobx react
    react-native-router-flux 下部导航
    java
    java
    java
  • 原文地址:https://www.cnblogs.com/AloneSword/p/4506868.html
Copyright © 2011-2022 走看看