最近学校要搭 ctf 平台,虽然有一台 16 核 32g,带宽 200m 的服务器,但是我怕搞坏了,所以想搭在自己的腾讯云学生机上,学生机配置是 1 核 2g,带宽 1m,腾讯云这个只是供我们打 web 方向的人使用,也是 5 个人,用的是 uwsgi+Nginx+ctfd 搭建,但是非常非常卡,也用了 CDN 加速,还是很卡,请问各位表哥有什么解决方案可以优化吗?
ctfd 是一个用 Python 写的轻量级 ctf 平台
1
guyeu 2019-03-26 15:13:34 +08:00
卡在哪个地方,内存 /CPU/网络。。。
目测是带宽。。。 |
2
0clickjacking0 OP @guyeu 我也觉得是带宽,我把题目放在另一台学生机上,20 个人同时访问也不卡,主要是平台的 js 加载太多了,打开一次网站需要 25s 左右,太慢了,是把 js 文件都用 cdn 引入吗
|
3
guyeu 2019-03-26 15:23:15 +08:00
@0clickjacking0 #2 可以啊,所有的静态资源都走 CDN 试试。。另外,容器化之后放在你们比较牛比的服务器上就不会有搞坏的可能性了。
|
4
mhycy 2019-03-26 15:24:29 +08:00 1
你们那台 16 核 32G 很适合做虚拟化....ESXI 搞起来好了
学生机套个 CDN 吧,静态资源一律 CDN,动态信息回源 阿里云方案参考: 阿里云 HK 轻量服务器 + 阿里云 OSS 做静态文件缓存(自动回源,用作大陆的二级分发)+ 阿里云 CDN 现有 blog 的方案,流量不大不怎么耗钱,只是。。你需要个有备案的域名做 CDN |
6
guyeu 2019-03-26 15:37:19 +08:00
@mhycy #5 容器化的好处是简单快捷维护成本低。。
ctf 平台这种东西确实挺适合虚拟化的。。但是工作量和维护成本相对来说高一点 |
7
0clickjacking0 OP @guyeu 我尝试过用 docker 搭建,但是好像无法搭起来,是我太菜了,hhhh
|
8
0clickjacking0 OP @mhycy 域名备案都做好的,我上次尝试了 CDN 加速,但还是一直在本地加载 js 和 CSS,是需要修改主题的配置文件,把加载的 js 都外链吗
|
9
mhycy 2019-03-26 16:00:52 +08:00
@guyeu
其实相比容器维护带来的需要详细记录各个容器信息的工作量,虚拟化反而更为简单省事 (有自动化平台另说) @0clickjacking0 修改 nginx 先强制所有静态文件都加缓存标记 然后再考虑修改主题的事,批量修改其实还算好搞( notepad++在这种事上很好用) 要是时间多可以折腾,那就配个二级域名专门丢主题的静态资源(事实上太麻烦我也没搞) 要是域名本身就已经备案直接混合 CDN 套上去完事了。。我是因为主域名没备案才搞那么复杂 毕竟是个 blog 而已。。。blog.mhycy.me |
10
jasonyang9 2019-03-26 16:09:23 +08:00
非常非常卡,服务器负载有监控么?
|
11
privil 2019-03-26 16:13:12 +08:00
服务器上个 kvm
|
12
hundan 2019-03-26 18:39:07 +08:00 via Android
ctfd 的 docker 的确有点毛病 所以我以前搭完直接做成镜像了
带宽 1m 真的挺艰难的 套 cdn 也…… 楼上的人说这么多折腾 (手滑送了感谢) 相比这个复杂度 我建议你还是用那台 32g 200m 的服务器吧 学生机挺弱的 当然一方面也有可能是线路问题 感觉阿里云的线路会好一点 不知道你们搭好了要多少人用? |
13
scukmh 2019-03-26 19:53:47 +08:00 1
怕什么,上手就是干,大不了重装。我校给了两台 24 核 50G 内存的。(跑
|
14
ShangAliyun 2019-03-26 21:59:58 +08:00
笼统来说总共就几个指标需要考虑: 内存,cpu,硬盘 io,带宽。。。
|
15
hangzhou777 2019-03-26 23:15:00 +08:00
问题太泛,无法回答
|
16
wangxiyu191 2019-03-27 00:47:50 +08:00
CTFd 有个坑是它默认用的 SQLite,并发量上去就完蛋了,换成 MySQL 会好很多。
不过你这个问题也有可能是带宽不够之类的原因。 加油折腾啊总之。 |
17
huclengyue 2019-03-27 01:10:40 +08:00 via Android
用又拍云全站 CDN 啊,不需要你自己处理静态资源。在域名哪里配置一下就行
|
18
yingfengi 2019-03-27 08:49:19 +08:00 via Android
32G 那台跑 esxi 啊。。。然后 esxi 里面跑 docker
esxi 还可以跑更多东西 |
19
jifengg 2019-03-27 09:17:07 +08:00
16 核机器上跑 docker,随便搞
|
20
gamexg 2019-03-27 09:32:11 +08:00 via Android
测试过云服务器性能吗?
我上次也是非常卡,测试下发现硬盘读写个位数,提工单解决。 |
21
kxct 2019-03-27 11:39:10 +08:00
应该是带宽,学生机好像是 1M 小水管
|
22
xiaowoniu 2019-03-27 13:55:27 +08:00
|