域名:
  http://www.55188.com/index.php
  理想论坛为国内人气最旺的股票论坛,注册会员已超过100万,并以每月60000人的速度稳定递增,每日页面访问量超过200万,并保持稳定增长的趋势,60分钟在线平均约2万多人,最高记录3万3千多。 目前主题超过30万,帖子接近1千万,数据库大小5.8GB,附件总大小大约150GB
  业内认可度: 网站在专业性方面是做得最好的,这一点非常值得赞赏。下一阶段发展的潜力不可预估
  (本项评级:6)
  网站规模: 网站在规模方面是应该称道的,目前来说这一部分做得和专业程度相得益彰(本项评级:7)
  访问量: 和网站规模比也还算可以了。由于站点的专业性,要有突破可能得靠吸引更多的忠实用户了。(本项评级:7)
  线上宣传:很显然,网站宣传方面您还有更多的潜力可挖,或许多做点交换链接吧,其他网站会愿意的。(本项评级:5)
  综合实力: 恭喜您,您的网站和其他网站已经有质的区别了,以后的发展不可限量。
  发展小评: 一点小结论,您的网站各项指标我们觉得还是比较均衡。 发展很良好,请继续保持吧。
  我们建议:您多注意一些线上宣传,多和一些可信的站点做下链接吧,或者尽可能让人引用您的内容
  一下为网站架构:
  之前理想论坛有三台服务器,两台WEB服务器以及一台数据库服务器,访问已经渐渐出现瓶颈,在猪头的建议下,站长决定增加一台服务器放数据库,另外三台做WEB,并且对原有的服务器的操作系统进行升级。
  硬件具体情况
  MySQL服务器: DualXeon 5335/8GB内存/73G SAS硬盘(RAID0+1)/CentOS5.1-x86_64/MySQL5
  三台WEB服务器如下:
  N1. Dual Xeon 3.0 2GB 内存
  N1. Dual Xeon 3.0 4GB 内存
  N1. Dual Xeon 3.0(双核) 4G内存
  另外有三块300G的SCSI硬盘准备做RAID5,用来存放附件,四台机器通过内网连接
  猪头考虑过的解决方案如下:
  1. ZEUS + PHP5 + eAccelerator
  2. squid + Apache2 + PHP + eAccelerator
  3. nginx + PHP(fastcgi) + eAccelerator
  4. nginx + Apache2 + PHP + eAccelerator
  第一个方案,属于比较完美的,而且很稳定,但是最大的问题是ZEUS是收费软件,用盗版总会受良心责备的,所以暂时押后做候补方案
  第二个方案,squid转发请求给Apache2,很多网站都采用这种方式,而且效率也非常高,猪头也测试了一下,但是问题非常严重,因为squid是把文件缓存起来的,所以每一个访问过的文件,squid都要把它打开,理想论坛拥有150G的附件,而且访问量巨大,这种情况下只有打开squid,机器很快就会因为打开文件过多而拒绝响应任何请求了,看来也不适合,只适合缓存文件只有几百M以内的网站.
  第三个方案,猪头对第三个方案的测试结果是访问量大的时候,PHP经常会出现bad gateway,看来通过TCP连接Fastcgi执行PHP的方法不够稳定,猪头也测试了通过Unix Socket连接执行PHP,同样还是不稳定.
  对比之下,猪头目前使用了第四种解决方案.
  Apache2的安装。
  (由于服务器采用FreeBSD7,所以大部分软件将会通过ports安装)
  由于Apache2只需要处理PHP请求,所以其他模块基本上都不需要,所以不要选择安装其他模块,即使rewrite也不需要,因为rewrite将会在nginx上面实现,如果熟悉,还可以修改Makefile删掉不需要的部分,这样经过优化之后,apache将会以最稳定最高效的方式处理PHP请求
  cd /usr/ports/www/apache20
  make install clean
  修改httpd.conf(这里仅列出要修改/增加的部分)
  vi /usr/local/etc/apache2/httpd.conf
  把KeepAlive On修改为KeepAlive Off,在下面添加
  ServerLimit 2048
  MaxClients增加到512
  Listen 127.0.0.1:81 #由于httpd服务器不需要对外开放,仅仅处理nginx转发过来的PHP请求,所以仅仅需要监听本地的端口.
  另外增加对PHP的支持
  AddType application/x-httpd-php .php
  AddType application/x-httpd-php-source .phps
  至于添加虚拟主机的部分将不再罗嗦,注意虚拟主机也监听本地81端口就可以了
  PHP5的安装(GD库等模块请提前装好)
  cd /usr/ports/lang/php5
  修改一下Makefile,把需要的东西加上去吧
  本来应该有这样一段的
  CONFIGURE_ARGS= \
  --with-layout=GNU \
  --with-config-file-scan-dir=${PREFIX}/etc/php \
  --disable-all \
  --enable-libxml \
  --with-libxml-dir=${LOCALBASE} \
  --enable-reflection \
  --program-prefix=""
  我们要把它修改成
  CONFIGURE_ARGS= \
  --with-layout=GNU \
  --with-config-file-scan-dir=${PREFIX}/etc/php \
  --disable-all \
  --enable-libxml \
  --with-libxml-dir=${LOCALBASE} \
  --enable-reflection \
  --program-prefix="" \
  --with-config-file-path=/etc --enable-mbstring --enable-ftp --with-gd --with-jpeg-dir=/usr/local --with-png-dir=/usr/local --enable-magic-quotes --with-mysql=/usr/local --with-pear --enable-sockets --with-ttf --with-freetype-dir=/usr/local --enable-gd-native-ttf --with-zlib --enable-sysvsem --enable-sysvshm --with-libxml-dir=/usr/local --with-pcre-regex --enable-xml
  make install clean
  cp work/php-5.2.5/php.ini-dist /etc/php.ini
  安装eAccelerator
  cd /usr/ports/www/eaccelerator
  make install clean
  把以下部分添加到php.ini尾端:
  extension_dir="/usr/local/lib/php/20060613/"
  extension="eaccelerator.so"
  eaccelerator.cache_dir="/tmp/eaccelerator"
  eaccelerator.shm_size="64"
  eaccelerator.enable="1"
  eaccelerator.optimizer="1"
  eaccelerator.check_mtime="1"
  eaccelerator.debug="0"
  eaccelerator.filter=""
  eaccelerator.shm_max="0"
  eaccelerator.shm_ttl="60"
  eaccelerator.shm_prune_period="60"
  eaccelerator.shm_only="0"
  eaccelerator.compress="1"
  eaccelerator.compress_level="9"
  eaccelerator.keys="shm_and_disk"
  eaccelerator.sessions="shm_and_disk"
  eaccelerator.content="shm_and_disk"
  建立缓存目录以及修改权限
  mkdir /tmp/eaccelerator
  chmod 777 /tmp/eaccelerator
  chown nobody:nobody /tmp/eaccelerator
  nginx的安装以及配置
  cd /usr/ports/www/nginx
  make install
  有几个module是我们需要的,要选上
  HTTP module
  http_addition module
  http_rewrite module
  http_realip module
  http_stub_status module
  其他的看自己需要了
  修改配置文件
  vi /usr/local/etc/nginx/nginx.conf
  user nobody nobody;
  worker_processes 4;
  #error_log logs/error.log;
  #error_log logs/error.log notice;
  #error_log logs/error.log info;
  #pid /var/log/nginx.pid;
  events {
  worker_connections 10240;
  }
  http {
  include mime.types;
  default_type application/octet-stream;
  limit_zone one $binary_remote_addr 10m;
  #log_format main '$remote_addr - $remote_user [$time_local] $request '
  # '"$status" $body_bytes_sent "$http_referer" '
  # '"$http_user_agent" "$http_x_forwarded_for"';
  sendfile off;
  tcp_nopush off;
  #keepalive_timeout 0;
  keepalive_timeout 10;
  gzip off;
  server {
  listen 80;
  server_name www.55188.net www.55188.com www1.55188.com www2.55188.com 55188.com 55188.net www.55188.cn 55188.cn bbs.55188.net bbs.55188.com bbs.55188.cn;
  index index.html index.htm index.php;
  root /home/www;
  access_log /dev/null combined;
  limit_conn one 5;#限制一个IP并发连接数为五个
  error_page 404 /404.html;
  error_page 403 /403.html;
  location /status {
  stub_status on;
  access_log off;
  auth_basic "NginxStatus";
  auth_basic_user_file conf/htpasswd;
  }
  #在根目录使用Discuz6.0 rewrite规则,如果你的论坛在二级目录下面,则要相应 猜你喜欢:
  • 为什么我一直在劝普通人不要买股票、不要炒股呢?
  • 网上说的印度小白盒是啥?
  • 山东海化集团有限公司(山东海化集团:突破传统,迎接挑战)
  • 舍线腾空形态的操作要点 舍线腾空形态的定义
  • 什么水果清热下火