‘壹’ 请问并发连接数10000的网站 需要什么配置的服务器.
朋友,这个需要看带宽的。并发连接数10000的网站,一般的服务器肯定承受不了。但是我不相信你能建这么大流量的网站。并发连接数达到10000.以为着你每天网站的流量在100万以上。
购买服务器时,如果是共享100M,建议不要购买,最好是独享15M带宽以上。服务器配置最好是四核或8核的。
‘贰’ 一百万用户同时在线听歌需要带宽多少需要多少台服务器
100万?同时在线? 人气最高的天涯论坛 同时在线 才30多万
酷.狗 同时在线 才几万 24小时加起来 也就1000W撑死了
一个音乐网站 你要超过网络? 网络也是在近两年才突破的100万大关
哥们干什么不都要着急 小心倾家荡产!!!
100万同时在线 的刀片式集群服务器 占用机房就几个 价格也最少百万以上
带宽 我只能说 很宽很宽 四五千兆 是不可能 满足 100万同时在线的.估计像网络一样流畅都得上万兆 千兆光纤 不一定得多少根
哥们我跟你说个概念 100万同时在线 1天的IP流量大约是5000万~1亿
而PV流量 1天大约是 10亿 我刚刚查的网络进一个月.日均PV流量超过11亿
也就是说 1天有 至少有5000万人在你的网站上听歌是不太可能的!
竞争这么激烈 你怎么才能超过前辈的音乐网站不知道多少倍
‘叁’ 你好,一个门户网站,几百万人在线,1万人并发,需要多大服务器,多
海外主机就可以做到,因为似乎无限流量的,大概一年400左右,。
‘肆’ 100并发数 需要带宽多少
你说的100-200人是指总用户数还是并发访问数,如果说是总用户数的话,那并发数应该很小,那就不需要多大的带宽,如果是并发数的话,那这样算就行了,假设每个网页大小平均为30K,要求每个网页在两秒中之内打开,这样,每个网页的传输速度必须大于等于15k/s,同时有200个用户访问,则总的速度必须大于等于15k/s*200=3000k/s,所以带宽必须大于等于3M,如果要求更严格一点,要求网页必须在一秒钟之内打开,则带宽必须大于等于30k/s*200=6000k/s,即6M
‘伍’ 现在做直播产品,如果并发流在100万人在线,需要多少cdn成本
如果平均100万人持续在线,假设每个人消耗带宽1Mbps,带宽价格按每月每兆50元计算,每个月需要5000万。
‘陆’ 直播app用户并发超过上百万服务器多少钱
这里不光只是考虑并发数的问题,你还得考虑服务器的带宽,内存等情况。视频直播会占用更多的带宽资源,同时更加考验服务器的综合性能。能同时带动百万并发数且能满足其它要求,你需要的是服务器群,而不是单单的一台服务器,参考国内某里云的价格,每年的租金大概至少在200W以上。
‘柒’ 100万并发连接服务器笔记之Java Netty处理1M连接会怎么样
每一种该语言在某些极限情况下的表现一般都不太一样,那么我常用的Java语言,在达到100万个并发连接情况下,会怎么样呢,有些好奇,更有些期盼。
这次使用经常使用的顺手的netty NIO框架(netty-3.6.5.Final),封装的很好,接口很全面,就像它现在的域名 netty.io,专注于网络IO。
整个过程没有什么技术含量,浅显分析过就更显得有些枯燥无聊,准备好,硬着头皮吧。
测试服务器配置
运行在VMWare Workstation 9中,64位Centos 6.2系统,分配14.9G内存左右,4核。
已安装有Java7版本:
java version "1.7.0_21"
Java(TM) SE Runtime Environment (build 1.7.0_21-b11)
Java HotSpot(TM) 64-Bit Server VM (build 23.21-b01, mixed mode)
在/etc/sysctl.conf中添加如下配置:
fs.file-max = 1048576
net.ipv4.ip_local_port_range = 1024 65535
net.ipv4.tcp_mem = 786432 2097152 3145728
net.ipv4.tcp_rmem = 4096 4096 16777216
net.ipv4.tcp_wmem = 4096 4096 16777216
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_tw_recycle = 1
在/etc/security/limits.conf中添加如下配置:
* soft nofile 1048576
* hard nofile 1048576
测试端
测试端无论是配置还是程序和以前一样,翻看前几篇博客就可以看到client5.c的源码,以及相关的配置信息等。
服务器程序
这次也是很简单呐,没有业务功能,客户端HTTP请求,服务端输出chunked编码内容。
入口HttpChunkedServer.java:
唯一的自定义处理器HttpChunkedServerHandler.java:
启动脚本start.sh
达到100万并发连接时的一些信息
每次服务器端达到一百万个并发持久连接之后,然后关掉测试端程序,断开所有的连接,等到服务器端日志输出在线用户为0时,再次重复以上步骤。在这反反复复的情况下,观察内存等信息的一些情况。以某次断开所有测试端为例后,当前系统占用为(设置为list_free_1):
total used free shared buffers cached
Mem: 15189 7736 7453 0 18 120
-/+ buffers/cache: 7597 7592
Swap: 4095 948 3147
通过top观察,其进程相关信息
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
4925 root 20 0 8206m 4.3g 2776 S 0.3 28.8 50:18.66 java
在启动脚本start.sh中,我们设置堆内存为6G。
ps aux|grep java命令获得信息:
root 4925 38.0 28.8 8403444 4484764 ? Sl 15:26 50:18 java -server...HttpChunkedServer 8000
RSS占用内存为4484764K/1024K=4379M
然后再次启动测试端,在服务器接收到online user 1023749时,ps aux|grep java内容为:
root 4925 43.6 28.4 8403444 4422824 ? Sl 15:26 62:53 java -server...
查看当前网络信息统计
ss -s
Total: 1024050 (kernel 1024084)
TCP: 1023769 (estab 1023754, closed 2, orphaned 0, synrecv 0, timewait 0/0), ports 12
Transport Total IP IPv6
* 1024084 - -
RAW 0 0 0
UDP 7 6 1
TCP 1023767 12 1023755
INET 1023774 18 1023756
FRAG 0 0 0
通过top查看一下
top -p 4925
top - 17:51:30 up 3:02, 4 users, load average: 1.03, 1.80, 1.19
Tasks: 1 total, 0 running, 1 sleeping, 0 stopped, 0 zombie
Cpu0 : 0.9%us, 2.6%sy, 0.0%ni, 52.9%id, 1.0%wa, 13.6%hi, 29.0%si, 0.0%st
Cpu1 : 1.4%us, 4.5%sy, 0.0%ni, 80.1%id, 1.9%wa, 0.0%hi, 12.0%si, 0.0%st
Cpu2 : 1.5%us, 4.4%sy, 0.0%ni, 80.5%id, 4.3%wa, 0.0%hi, 9.3%si, 0.0%st
Cpu3 : 1.9%us, 4.4%sy, 0.0%ni, 84.4%id, 3.2%wa, 0.0%hi, 6.2%si, 0.0%st
Mem: 15554336k total, 15268728k used, 285608k free, 3904k buffers
Swap: 4194296k total, 1082592k used, 3111704k free, 37968k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
4925 root 20 0 8206m 4.2g 2220 S 3.3 28.4 62:53.66 java
四核都被占用了,每一个核心不太平均。这是在虚拟机中得到结果,可能真实服务器会更好一些。 因为不是CPU密集型应用,CPU不是问题,无须多加关注。
系统内存状况
free -m
total used free shared buffers cached
Mem: 15189 14926 263 0 5 56
-/+ buffers/cache: 14864 324
Swap: 4095 1057 3038
物理内存已经无法满足要求了,占用了1057M虚拟内存。
查看一下堆内存情况
jmap -heap 4925
Attaching to process ID 4925, please wait...
Debugger attached successfully.
Server compiler detected.
JVM version is 23.21-b01
using parallel threads in the new generation.
using thread-local object allocation.
Concurrent Mark-Sweep GC
Heap Configuration:
MinHeapFreeRatio = 40
MaxHeapFreeRatio = 70
MaxHeapSize = 6442450944 (6144.0MB)
NewSize = 629145600 (600.0MB)
MaxNewSize = 629145600 (600.0MB)
OldSize = 5439488 (5.1875MB)
NewRatio = 2
SurvivorRatio = 1
PermSize = 52428800 (50.0MB)
MaxPermSize = 52428800 (50.0MB)
G1HeapRegionSize = 0 (0.0MB)
Heap Usage:
New Generation (Eden + 1 Survivor Space):
capacity = 419430400 (400.0MB)
used = 308798864 (294.49354553222656MB)
free = 110631536 (105.50645446777344MB)
73.62338638305664% used
Eden Space:
capacity = 209715200 (200.0MB)
used = 103375232 (98.5863037109375MB)
free = 106339968 (101.4136962890625MB)
49.29315185546875% used
From Space:
capacity = 209715200 (200.0MB)
used = 205423632 (195.90724182128906MB)
free = 4291568 (4.0927581787109375MB)
97.95362091064453% used
To Space:
capacity = 209715200 (200.0MB)
used = 0 (0.0MB)
free = 209715200 (200.0MB)
0.0% used
concurrent mark-sweep generation:
capacity = 5813305344 (5544.0MB)
used = 4213515472 (4018.321487426758MB)
free = 1599789872 (1525.6785125732422MB)
72.48054631000646% used
Perm Generation:
capacity = 52428800 (50.0MB)
used = 5505696 (5.250640869140625MB)
free = 46923104 (44.749359130859375MB)
10.50128173828125% used
1439 interned Strings occupying 110936 bytes.
老生代占用内存为72%,较为合理,毕竟系统已经处理100万个连接。
再次断开所有测试端,看看系统内存(free -m)
total used free shared buffers cached
Mem: 15189 7723 7466 0 13 120
-/+ buffers/cache: 7589 7599
Swap: 4095 950 3145
记为list_free_2。
list_free_1和list_free_2两次都释放后的内存比较结果,系统可用物理已经内存已经降到7589M,先前可是7597M物理内存。
总之,我们的JAVA测试程序在内存占用方面已经,最低需要7589 + 950 = 8.6G内存为最低需求内存吧。
GC日志
我们在启动脚本处设置的一大串参数,到底是否达到目标,还得从gc日志处获得具体效果,推荐使用GCViewer。
GC事件概览:
其它:
总之:
只进行了一次Full GC,代价太高,停顿了12秒。
PartNew成为了停顿大户,导致整个系统停顿了41秒之久,不可接受。
当前JVM调优喜忧参半,还得继续努力等
小结
Java与与Erlang、C相比,比较麻烦的事情,需要在程序一开始就得准备好它的堆栈到底需要多大空间,换个说法就是JVM启动参数设置堆内存大小,设置合适的垃圾回收机制,若以后程序需要更多内存,需停止程序,编辑启动参数,然后再次启动。总之一句话,就是麻烦。单单JVM的调优,就得持续不断的根据检测、信息、日志等进行适当微调。
‘捌’ 100万用户的社交app需要多少并发数
这个要看你的日活跃用户,如果有100万活跃用户,那差不多10万并发
‘玖’ 1万并发 等于 多少IP数量或者说等于多少台手机、平板、电脑端访问
确定不了数量,只是同一时间有1万用户进行访问
‘拾’ 20000的并发量需要几台服务器
20000的并发量需要150台服务器。
150台。Tomcat 默认配置的最大请求数是 150,也就是说同时支持 150 个并发,当然了,也可以将其改大。
如果是较大规模或者是图片,视频内容较多的网站,则会对服务器资源占用较高,推荐用双至强八核处理器,32G内存,1T硬盘的配置来放数据库,然后再用几台普通四核配置的机器放网站前端来做负载均衡即可,带宽需要根据你们的具体需求来决定。
易使用性:
服务器的功能相对于PC机来说复杂许多,不仅指其硬件配置,更多的是指其软件系统配置。服务器要实现如此多的功能,没有全面的软件支持是无法想象的。但是软件系统一多,又可能造成服务器的使用性能下降,管理人员无法有效操纵。
所以许多服务器厂商在进行服务器的设计时,除了在服务器的可用性、稳定性等方面要充分考虑外,还必须在服务器的易使用性方面下足功夫。
服务器的易使用性主要体现在服务器是不是容易操作,用户导航系统是不是完善,机箱设计是不是人性化,有没有关键恢复功能,是否有操作系统备份,以及有没有足够的培训支持等方面。