请教一下关于网站服务器以及带宽要求
一般要看是做什么用,可以分为三个方面,医院官网,移动诊疗系统和医院内部业务系统来看。
医院官网:医院官网建站不会很复杂,主要是医院机构,医疗力量,资源,奖项和医院简介。所以如果作为官网使用,不会有很高的并发量,流量也不会集中,数据沉淀也不多,所以在CPU上选择2核4G的就足够用了,带宽选择2M的即可。
医院内部业务系统:医院内部业务系统主要是医生开药,病例录入,诊疗等,对存储的要求比较大,可以搭建服务器集群,较多的服务器去做存储即可。内部业务系统一般采用的都是局域网或者内网,所以并没有外网带宽的要求。
不管是虚拟主机还是服务器,我们都知道,它的稳定性很重要,访问速度也有着决定性的作用。一般来说,如果访问速度不好的话,会让网站加载非常慢。壹基比小喻企鹅头像给大家介绍一下租用服务器前怎样检测访问速度。
第一种方法:常见的ping命令。
这个命令与IT打交道的站长并不陌生,一般来说,网站速度不好,或者测试一下是网站问题还是服务器问题,都会使用这个命令进行测试。那么具体怎样检测租用服务器的网络是否通畅无延迟呢?
在电脑中点击开始,运行,然后输入CMD打开DOS命令窗口。然后输入网站网址,或者服务器的IP地址,格式为ping 域名,或者ping IP。使用ping命令后,会反馈一个结果,这个结果基本包括了以下几个信息。
Time,这个是响应时间,时间越小越好,国内服务器响应时间一般在30-80ms之间。
TTL,这个可以判断相关的操作系统,TTL=119,则表示是XP系统,不过这个现在一般不准,毕竟服务器可以修改注册表TTL类型。
数据包发送信息,这个里面有个丢包率,数值越小越好,正常都是显示丢失0。
第二种方法:tracert命令。
测试方法与ping命令类似,只是将ping 换成tracert,不过这个命令可以用来检测终端用户到服务器机房的跳数及响应时间,换句话说,就是可以测试出服务器与全国客户的连接速度。显示时间也是以Ms为单位,时间越短越好。
第三种方法:比网站加载速度。
可以利用WhichLoadsFasterFastSoft工具测试一下打开网站速度。基本工作原理是通过连接,在浏览器中让两个真实的网页显示出来,反应的结果就是两个网站真实打开速度对比。
第四种方法:网站速度测试工具。
使用GTmetrixgtmetrix有丰富的测量结果,能够提供相关的网站速度提升建议,站长可以根据这些建议优化站点。然后再逐一找到加载速度变慢的原因。
我们知道,一个网站如果在好几秒都打不开,那么基本上都会没有耐心,会关闭页面,而这无形当中就是流失了用户。以上就是租用服务器前对速度的测试方法,希望对站长有一定的帮助。
这个没有限制的,来也没有规定的,主要是看企业使用的程度,一般中小企业5M-10M独享或者100M共享就可以了。也可以直接问IDC服务商锐讯网络的客服人员。
举个大家都熟悉的例子,像优酷这样的,带宽大,带宽700G。服务器150台。
1、公网带宽:是指服务器对外提供的网络带宽,即是通过互联网访问阿里云服务器的能力。而网络带宽是指在单位时间(一般指的是1秒钟)内能传输的数据量。网络和高速公路类似,带宽越大,就类似高速公路的车道越多,其通行能力越强。
2、阿里云服务器没有数据盘是没有关系的,服务器默认分配有系统盘,上面安装好了镜像操作系统。如果对磁盘容量没有特别需求,用系统盘就可以了,日后可以升级扩充容量。
3、如果阿里云服务器没有公网带宽,就没有办法从外部(互联网)访问到这台服务器。只能通过阿里云的内部网络访问到服务器同一机房网络环境下的其他服务器。
扩展资料
1、公网带宽的计费方式
阿里云采用后付费方式,按实际使用流量收取ECS实例的公网带宽费用,不受ECS实例的计费方式和网络类型的限制,按小时计费。并且网络带宽价格因地域而不同。
2、公网带宽类型
(1)出网带宽:从ECS实例流出的带宽,比如您的ECS实例对外提供访问,或者从客户端FTP等工具下载ECS实例内部资源。
(2)入网带宽:流入ECS实例的带宽,比如您在ECS实例内部下载外部网络资源,或者从客户端FTP等工具上传资源到ECS实例。
3、购买公网带宽
根据访问公网的方式不同,可以采用不同的方式购买公网带宽:
(1)如果每个ECS实例均使用自己的公网IP地址访问公网,您需要在创建ECS实例时一起购买公网带宽。购买方法是:创建ECS实例时,设置公网带宽时,选择分配公网IP地址,并设置带宽峰值。
(2)对于VPC类型ECS实例,如果您想使用弹性公网IP(EIP)地址访问公网,您只需要购买EIP服务即可。
-网络带宽
webrtc中的带宽自适应算法分为两种:
1, 发端带宽控制, 原理是由rtcp中的丢包统计来动态的增加或减少带宽,在减少带宽时使用TFRC算法来增加平滑度。
2, 收端带宽估算, 原理是并由收到rtp数据,估出带宽; 用卡尔曼滤波,对每一帧的发送时间和接收时间进行分析, 从而得出网络带宽利用情况,修正估出的带宽。
两种算法相辅相成, 收端将估算的带宽发送给发端, 发端结合收到的带宽以及丢包率,调整发送的带宽。
下面具体分析两种算法:
2, 接收端带宽估算算法分析
结合文档http://toolsietforg/html/draft-alvestrand-rtcweb-congestion-02以及源码webrtc/modules/remote_bitrate_estimator/overuse_detectorcc进行分析
带宽估算模型: d(i) = dL(i) / c + w(i) d(i)两帧数据的网络传输时间差,dL(i)两帧数据的大小差, c为网络传输能力, w(i)是我们关注的重点, 它主要由三个因素决定:发送速率, 网络路由能力, 以及网络传输能力。w(i)符合高斯分布, 有如下结论:当w(i)增加是,占用过多带宽(over-using);当w(i)减少时,占用较少带宽(under-using);为0时,用到恰好的带宽。所以,只要我们能计算出w(i),即能判断目前的网络使用情况,从而增加或减少发送的速率。
算法原理:即应用kalman-filters
theta_hat(i) = [1/C_hat(i) m_hat(i)]^T // i时间点的状态由C, m共同表示,theta_hat(i)即此时的估算值
z(i) = d(i) - h_bar(i)^T theta_hat(i-1) //d(i)为测试值,可以很容易计算出, 后面的可以认为是d(i-1)的估算值, 因此z(i)就是d(i)的偏差,即residual
theta_hat(i) = theta_hat(i-1) + z(i) k_bar(i) //好了,这个就是我们要的结果,关键是k值的选取,下面两个公式即是取k值的,具体推导见后继博文。
E(i-1) h_bar(i)
k_bar(i) = --------------------------------------------
var_v_hat + h_bar(i)^T E(i-1) h_bar(i)
E(i) = (I - K_bar(i) h_bar(i)^T) E(i-1) + Q(i) // h_bar(i)由帧的数据包大小算出
由此可见,我们只需要知道当前帧的长度,发送时间,接收时间以及前一帧的状态,就可以计算出网络使用情况。
接下来具体看一下代码:
[cpp] view
plaincopy
void OveruseDetector::UpdateKalman(int64_t t_delta,
double ts_delta,
uint32_t frame_size,
uint32_t prev_frame_size) {
const double min_frame_period = UpdateMinFramePeriod(ts_delta);
const double drift = CurrentDrift();
// Compensate for drift
const double t_ts_delta = t_delta - ts_delta / drift; //即d(i)
double fs_delta = static_cast<double>(frame_size) - prev_frame_size;
// Update the Kalman filter
const double scale_factor = min_frame_period / (10000 / 300);
E_[0][0] += process_noise_[0] scale_factor;
E_[1][1] += process_noise_[1] scale_factor;
if ((hypothesis_ == kBwOverusing && offset_ < prev_offset_) ||
(hypothesis_ == kBwUnderusing && offset_ > prev_offset_)) {
E_[1][1] += 10 process_noise_[1] scale_factor;
}
const double h[2] = {fs_delta, 10}; //即h_bar
const double Eh[2] = {E_[0][0]h[0] + E_[0][1]h[1],
E_[1][0]h[0] + E_[1][1]h[1]};
const double residual = t_ts_delta - slope_h[0] - offset_; //即z(i), slope为1/C
const bool stable_state =
(BWE_MIN(num_of_deltas_, 60) fabsf(offset_) < threshold_);
// We try to filter out very late frames For instance periodic key
// frames doesn't fit the Gaussian model well
if (fabsf(residual) < 3 sqrt(var_noise_)) {
UpdateNoiseEstimate(residual, min_frame_period, stable_state);
} else {
UpdateNoiseEstimate(3 sqrt(var_noise_), min_frame_period, stable_state);
}
const double denom = var_noise_ + h[0]Eh[0] + h[1]Eh[1];
const double K[2] = {Eh[0] / denom,
Eh[1] / denom}; //即k_bar
const double IKh[2][2] = {{10 - K[0]h[0], -K[0]h[1]},
{-K[1]h[0], 10 - K[1]h[1]}};
const double e00 = E_[0][0];
const double e01 = E_[0][1];
// Update state
E_[0][0] = e00 IKh[0][0] + E_[1][0] IKh[0][1];
E_[0][1] = e01 IKh[0][0] + E_[1][1] IKh[0][1];
E_[1][0] = e00 IKh[1][0] + E_[1][0] IKh[1][1];
E_[1][1] = e01 IKh[1][0] + E_[1][1] IKh[1][1];
// Covariance matrix, must be positive semi-definite
assert(E_[0][0] + E_[1][1] >= 0 &&
E_[0][0] E_[1][1] - E_[0][1] E_[1][0] >= 0 &&
E_[0][0] >= 0);
slope_ = slope_ + K[0] residual; //1/C
prev_offset_ = offset_;
offset_ = offset_ + K[1] residual; //theta_hat(i)
Detect(ts_delta);
}
[cpp] view
plaincopy
BandwidthUsage OveruseDetector::Detect(double ts_delta) {
if (num_of_deltas_ < 2) {
return kBwNormal;
}
const double T = BWE_MIN(num_of_deltas_, 60) offset_; //即gamma_1
if (fabsf(T) > threshold_) {
if (offset_ > 0) {
if (time_over_using_ == -1) {
// Initialize the timer Assume that we've been
// over-using half of the time since the previous
// sample
time_over_using_ = ts_delta / 2;
} else {
// Increment timer
time_over_using_ += ts_delta;
}
over_use_counter_++;
if (time_over_using_ > kOverUsingTimeThreshold //kOverUsingTimeThreshold是gamma_2, gamama_3=1
&& over_use_counter_ > 1) {
if (offset_ >= prev_offset_) {
time_over_using_ = 0;
over_use_counter_ = 0;
hypothesis_ = kBwOverusing;
}
}
} else {
time_over_using_ = -1;
over_use_counter_ = 0;
hypothesis_ = kBwUnderusing;
}
} else {
time_over_using_ = -1;
over_use_counter_ = 0;
hypothesis_ = kBwNormal;
}
return hypothesis_;
}
造成服务器带宽跑满的原因有很多,大致可以归结为以下几类:
病毒
Windows 系统服务器中病毒或站点挂马,导致服务器内部有对外发包的文件。
建议在服务器上安装杀毒软件,进行杀毒。可以通过任务管理器中查看是否异常进程。当前阿里云暂时没有提供杀毒软件,您可以登陆服务器根据自己的日常使用的杀毒软件进行安装即可。
网络攻击
服务器或站点遭受 DDOS 攻击或 CC 攻击等,短期内产生大量的访问需求。
可以登陆阿里云管理控制台,查看云盾中的防护 DDOS 攻击是否调整好阈值,并核实是否开启CC防护。
目前CC防护有自己默认的阈值,由于安全问题此阈值暂时不对外公开。如果攻击没有触发到阈值,云盾没有清洗,可以提交工单到售后请手工协助开起清洗,后期该调整阈值的功能会对外放。
存在耗资源进程
服务器内部有耗资源进程。
Windows Server 2003 系统无法直接查看到,但可以借助第三方软件查看;
Windows Server 2008 系统可以启动 任务管理器>性能>资源监控器>网络>查看 发送(字节/秒) 占用较多的进程。如果不是常用进程,说明可能是病毒或异常文件;如果是常用进程,说明该进程当前有异常,需要针对该进程对应的服务进行一下分析。
根据以往经验,曾发现过因搜狗拼音的更新,以及疑似上传本地词库导致的出网带宽跑高。
爬虫
正常网站所消耗的带宽较多,此类情况建议通过访问的日志来分析,如果日志中过多的 baiduspider 或 googlebot 。说明网页被爬虫抓取,大量来自搜索引擎的链接也容易跑高带宽,例如:
windows-cmd 下找到 iis的日志,可以使用命令 type log | find “baidu “ 等。
Linux 的 Apache 和 nginx 可以检查 cat accesslog | grep baidu 等。
同时检查站点是否存有 MP3,flv,swf 等大文件被频繁访问下载,如果此类文件较多,建议减少这些文件,可搭配使用 OSS、CDN 服务。
网站规模大
网站规模较大(比如门户网站、商城等),即网站本身访问量需求大,查看网站的 Page View 值、Hits 值、日流量都很高,建议升级带宽 。
造成流量大的原因主要有:
网站页面设计不合理;
页面中包含大或音频、视频文件等文件,导致网站页面太大;
网站提供mp3,rar,zipexe等文件的下载,或网站提供视频、音频文件的播放;
如果网站规模较大,网站的点击率很高,建议减少音频、视频文件。如果还不能满足要求,可以升级带宽。
一般说的是下行带宽,就是你每秒下载的速度KB
一般的计算公式是除以8 。比如2M的到家的下载速度理论为250左右,蛋实际是使用迅雷也就220K左右。
以此推算如果你是专线10M的到你家最大也就14M 左右。
0条评论