已掉线,重新登录

首页 > 绿虎论坛 > 杂类 > 超级灌水 (发帖)

标题: 如此访问人数,什么配置的服务器能稍微访问正常

作者: @Ta

时间: 2019-11-23

点击: 10154

日IP:4k-5k
日PV:3w-4w

日PV只是统计网站能统计的,有一些ajax访问还不能统计到(我的意思是,一个用户较短时间内访问服务器的次数会过多,直白点就是导致了服务器压力更大一点)

现在手里1h2g的学生机。基本处于不能访问的状态。。。

想问一下什么配置能好一点。@老虎会游泳@net909
红米Note7 高配版(黑色)


[隐藏样式|查看源码]


『回复列表(27|隐藏机器人聊天)』

1. MySQL太占内存,可以考虑来个云数据库
(/@Ta/2019-11-23 17:02//)

2. 也要看网站具体业务逻辑复杂度,可以先在当前服务器上压测下
如果就将就当前的服务器的话,就在前端限制下流量,损失部分用户总比网站直接挂了要好
要买好的机器先分析下系统瓶颈,哪里差了再去补哪里
不过多买几台机器做下负载均衡可能还实惠方便点,配置也容易,学生机也便宜.
(/@Ta/2019-11-23 17:05//)

3.

@上善若水,之前确实有这想法,不过去阿里云看了下,也不便宜。

@石头会飞翔

这点倒是提醒了我,身边这么多童鞋,趁着还是学生确实应该可以做下负载均衡。不过这一点到又有 @上善若水,提到的数据库瓶颈的问题。到时候如果是负载均衡,真要考虑下云数据库。

感谢两位
红米Note7 高配版(黑色)

(/@Ta/2019-11-23 17:39//)

4. @无道,可以加一层缓存塞
(/@Ta/2019-11-23 18:18//)

5.

你要搞清楚性能瓶颈在哪里,是CPU、网络还是磁盘IO。

(/@Ta/2019-11-23 18:19//)

6.

@老虎会游泳,手里的服务器存在这三个瓶颈。不过在我刚刚购买了云数据库后,情况得到缓解,服务器负载只有1-3左右。【之前30以上是常态】,本来继续弄Nginx负载均衡的,但是遇到点麻烦。先将就这样弄算了。

的确像@上善若水,说的,MySQL看了的确很占内存和IO
红米Note7 高配版(黑色)

(/@Ta/2019-11-23 19:19//)

7.

@无道,你用的什么程序?如果是博客之类的搞个memcached就能减轻很多数据库压力。

(/@Ta/2019-11-23 20:43//)

8.

@老虎会游泳,自己使用Laravel写的程序,从数据库检索服务的。目前缓存已使用redis
红米Note7 高配版(黑色)

(/@Ta/2019-11-23 20:49//)

9.

@无道,你是不是索引没做好开慢日志看一下。
索引完备的情况下,除非一直插入、修改,否则MySQL占用的资源是很少的。
常用查询涉及的字段都应该建立复合索引,避免MySQL全表扫描。
比如hu60_bbs_topic_meta的索引

也可以用EXPLAIN select * from xxx where xxxxxx分析索引的覆盖情况,就是EXPLAIN接你常用的查询语句。如果得到Using filesort(文件排序),说明索引没有覆盖到,需要全表扫描,会很慢。

(/@Ta/2019-11-23 21:16//)

10.

顺便一提,机器性能差的时候用apache2mod方式运行PHP效果更好,因为nginx采用的fastcgi模式在并发高的时候经常卡住,采用php-fpm也不能改善(php-fpm也是fastcgi),而且进程上限非常不好调整。apache2mod的问题就少得多,默认配置就能支撑足够数量的并发。此外,apache2mod没有进程间通信开销。

(/@Ta/2019-11-23 21:22//)

11.

@老虎会游泳,修改插入算是较为频繁,因为要修改某条数据的状态为失效。要插入新数据。

其实搜索服务我是已经是用xunsearch建立了索引,用xunsearch搜索的,而需要从数据库中查询的是同属某个tid的资源,以及查询次数最多的几条数据。

关于apache还是nginx,我先是用的apache,但是当时用户稍微多了点的时候还是很卡,出现打不开网站的情况。当时换了nginx后此状况得到改善。所以,不知道该使用哪种服务器。
红米Note7 高配版(黑色)

(/@Ta/2019-11-23 21:34//)

12.

总的来说,今天换了阿里云的云数据库,情况还是得到不少改善。最起码现在服务器负载一直在1-3,网站只是加载慢了,但能打开。

只能说1h2g的服务器性能也确实就那样。

当然,也有自己写的代码的锅吧。
红米Note7 高配版(黑色)

(/@Ta/2019-11-23 21:36//)

13.

hu60.cn,阿里云1核2G,日PV(22日):68208(可能大部分来自搜索引擎),日IP:4488。
Web服务器和MySQL数据库都运行在这台服务器上,Web服务器采用Debian软件源提供的Apache2.4和PHP7(采用apache2mod方式运行PHP,默认配置,安装方法:apt install apache2 phpmyadmin,会自动配置好apache2和PHP)。
MySQL也是来自软件源,apt install mariadb-server,没有做任何性能调整。
论坛搜索采用memcached,除此之外,没有其他缓存机制。
带宽是5Mbps的固定小水管。

目前CPU和IO都是轻载,个人感觉访问非常流畅,一直都可用。

(/@Ta/2019-11-23 21:49//)

14.

@无道,如上所述,就我使用1h2g的服务器来看,完全能承担你的访问量。所以,如果你把MySQL移走能产生这么大的性能改善,那你确实得看看你的表索引问题了。你可以把你的数据库结构(包括索引)贴出来看看吗?

如果不是表索引的问题,那就是PHP-FPM(或者说FastCGI)在1h2g服务器上表现太烂了。PHP-FPM更适合那种一次能启动成千上万进程的部署,不太适合单核少内存实例。

(/@Ta/2019-11-23 21:46//)

15.

@老虎会游泳,不能比,不能比,看来有待优化。

不过我得证明我写的代码不是很差(因为也没什么涉及到性能的,就是增删改查):

如上图所示的只是51la统计的流量。(不过得说明的是我同时安装了百度统计和51啦,每天的统计51la的量都比百度统计少800-1000ip左右)

另外,对外提供了油猴插件,每天最起码有3000左右的请求。

老虎你的数据是从服务器上用代码自己统计的吗?
红米Note7 高配版(黑色)

(/@Ta/2019-11-23 21:51//)

16.

@无道,如果查询语句很简单,但性能却不好,那首先想到的就是索引没建到位。阿里云RDS支持性能分析,你可以去看看慢日志,看看哪些查询开销较高,然后针对性的建立索引。

我没有统计代码,我刚刚临时抓取apache日志看的。

(/@Ta/2019-11-23 21:55//)

17.

好的,明天去看看,谢谢。

nginx也可以日志来分析吗?

@老虎会游泳
红米Note7 高配版(黑色)

(/@Ta/2019-11-23 21:58//)

18.

我就是用脚本简单计算了一下:

cat access.log | grep 'Nov 22' | grep 'hu60.cn' | awk '{print $10}' | awk -F':' '{print $1}' | sort | uniq | wc -l
cat access.log | grep 'Nov 22' 得到昨天的日志 | grep 'hu60.cn' 得到hu60.cn的日志 | awk '{print $10}' 得到IP:端口部分 | awk -F':' '{print $1}' 得到IP部分 | sort 排序 | uniq 去重,需要先排序才能去重 | wc -l 统计行数

你可以根据Nginx日志的格式更改,主要是$10,表示按空格分隔的第十个部分是IP端口。

(/@Ta/2019-11-23 22:05//)

19.

@老虎会游泳,嗯嗯,感谢老虎🐯
红米Note7 高配版(黑色)

(/@Ta/2019-11-23 22:08//)

下一页 1/2页,共27楼

回复需要登录

7月30日 20:53 星期三

本站由hu60wap6驱动

备案号: 京ICP备18041936号-1