要说可以支持多少用户,是无法得到一个准确答案的。用户支持的数量由许多因素组成,例如使用的语言、架构、处理的业务类型 数据大小等。这是一个需要连续调整优化过程的。
第一需要确定业务类型
1、不同的服务有不同的特性,有些CPU占用比较高,有些内存比较高,还比如数据处理,有些需要大量带宽,例如网络爬虫,有些磁盘很高,例如和数据库类。
2、同一配置的机器运行不同的业务,效果会有所不同,而且未使用的资源将大大浪费。
3、根据自己的业务类型调整机器的资源比率是节省资金和改善支持的好方法。
第二确定数据大小
1、网络传输的数据大小决定了带宽占用。尺寸越小,带宽越大,每单位时间可以访问和处理的用户请求越多。
2、然后,减少无效数据传输并减小请求分组的大小是必须考虑的地方以改善用户访问能力。
第三连续测算和调整
1、支持的TPS数量,是不断监控并不断调整的。很多时候,小参数调整可以带来多重性能提升。几十秒的业务请求,可能会在几十毫秒内完成调整。
2、真正的在线服务,持续监控和持续调整是一个长期的过程的。
第四使用恰当的语言架构
1、设计良好的系统,与随便设计的系统,终端能力是全然有所不同的。
2、克服资源浪费问题,可使用Docker之类的容器化,微服务化,能精确的提高资源使用率,减少服务器压力。
3、使用Nginx或是Tengine、打开NIO、打开压缩、及设立静态与局部缓存等,减少服务器负载。
4、使用MongoDB、NoSQL数据库,减少数据查询压力提升响应速度。
总之,减少前端无效请求,后端请求在靠近用户侧解决掉,避免业务过长,堆积在后端底层。
扩展资料:
1、服务器,也称伺服器,是提供计算服务的设备。由于服务器需要响应服务请求,并进行处理,因此一般来说服务器应具备承担服务并且保障服务的能力。
2、服务器的构成包括处理器、硬盘、内存、系统总线等,和通用的计算机架构类似,但是由于需要提供高可靠的服务,因此在处理能力、稳定性、可靠性、安全性、可扩展性、可管理性等方面要求较高。
3、在网络环境下,根据服务器提供的服务类型不同,分为文件服务器、数据库服务器、应用程序服务器、WEB服务器等。
参考资料来源:百度百科–服务器
蟹妖~~关注极迭代,和小伙伴一起看___4核8G+10M带宽属于比较好的机器了,能够满足大部分场景的需要。但要说能支持多少用户,就不能这样拍脑袋得到答案。用户支撑数量是由很多因素构成的,比如用的语言、架构、处理的业务类型、数据大小等等,这是一个不断调优的过程。
首先需要确定业务类型
不同的业务会有不同的特点,有些CPU占用比较高,比如内存计算类的;有些内存占用高,比如数据处理类的;有些需要大带宽,比如网络爬虫类的;有些磁盘占用高,比如和数据库类的。同样配置的机器跑不同的业务,效果就会天差地别,而且未用到的资源就大大的浪费了。根据自己的业务类型,调整机器的资源配比,是节省资金,提高支撑能力的好办法。其次确定数据尺寸
网络传输的数据尺寸决定了带宽的占用程度,尺寸越小带宽越大,单位时间能够接入和处理的用户请求就更多。那么减少无效的数据传输,减少请求包的大小,是提高用户接入能力必须考虑的地方。采用合理的语言架构
经过良好设计的系统,和随意堆砌的系统,接入能力是完全不同的。为了解决资源浪费问题,可以采用Docker之类的容器化,微服务化,能够有效的提高资源使用率,减少服务器压力。采用Nginx或Tengine、开启NIO、开启压缩、以及设置静态和局部缓存等,降低服务器负载采用MongoDB、NoSQL数据库,降低数据查询压力提高响应速度总之一句话:尽力减少前端无效请求,后端尽力将请求在靠近用户侧解决掉,避免业务过长,堆积在后端底层。不断测算和调优
支撑的TPS数,是需要不断监控不断调优的。很多时候,一个微小的参数调整,都能带来成倍的性能提高。一个数十秒的业务请求,也许调优后就能在几十毫秒完成。真正的线上服务,持续监控和持续调优是长期进行的。狭义云计算是指IT基础设施的交付和使用模式,指通过网络以按需、易扩展的方式获得所需的资源;广义云计算是指服务的交付和使用模式,指通过网络以按需、易扩展的方式获得所需的服务。云计算带来的好处:
1优化计算资源;通过虚拟化技术,整合计算资源。
2节省成本。通过虚拟化的计算,节省硬件投入。业界普遍的测算,至少可以节省38%的硬件投入。
3节省能源。云计算的自动迁移技术,可以云服务器基于云计算的自动迁移技术,意即夜间,物理服务器的利用率不高,自动迁移技术会把应用集中到几台物理服务器上,其他的物理服务器就可以休眠。HyperCloud云计算在节能方面至少能节省30%的能源。而且节省硬件投入,也是节省能源了,服务器的生产过程中,以及报废硬件设备的处理,耗费大量能源。
3更高的可靠性和稳定性。虚拟化集群,动态迁移,双机热备,计算资源负载均衡,故障迁移,快照备份,系统模板等等都是云计算在提高可靠性和稳定性方面做出的贡献和努力的方向。
4更高的IT交付能力。因为云计算的集中管理,和灵活的d性计算,可以大幅度提高IT的交付能力和支持能力,从而提高整个组织的运作效率。
弊端也有不少:
市场在培育期,云计算很热,大家都想沾点边,踏实做解决方案的并不多。因此,使很多客户对云计算的概念不清,大家总认为云计算是概念,没有实际的应用。其实,在很多行业,例如政府、能源、军队已经用得比较普遍了。但是对于大多数人而言毕竟是新生事物,也轻易不敢尝试;
2 维护虚拟化的工程师因为需要懂Linux,硬件和软件,更需要实际的经验,所以都比较贵的,成本也比较高。
3国外的虚拟化解决方案比较昂贵,维护的成本也比较高。国内也有优秀的解决方案。据我所知,例如“HyperCloud云计算基础架构管理”就是其中的佼佼者,虽然不是明星,但是具有草根的务实,不但可以构建虚拟化环境;而且可以支持XEN、Hyper-V,VMWare等虚拟化环境,可以对现有的虚拟化进行有效管理,填补国际厂商不支持多虚拟化环境、未整合工作流的空白。
如果你想尝试一下云计算的实际应用,可以免费试用中数云服务,中数云服务就是完全基于HyperCloud云计算架构管理解决方案的公有云平台。楼主您好,一台服务器的价格是由机房规格、机房线路、网络质量、服务器型号、带宽大小、服务商规模等多方面综合决定的。,这些都是直接影响服务器价格的关键因素。目前国内机房的线路分为电信、联通、双线、多线。一般来说,单线机房比双线或多线便宜。但是你一定要对硬件非常了解,对自己买的服务器质量非常清楚,这样才能省点钱。但是如果你对服务器的硬件不太了解,建议你选择每年交产权,找正规的IDC服务商帮你更划算。
服务器的成本与你选择的机房电路、配置水平、带宽大小有关。没有固定的标准。拿一个普通的至强四核处理器来说。8G内存配置为例。网通和电信机房一般每年四五千。双线或BGP房间一般每年在六七千左右。这是一个大概的参考标准。希望能帮到你。
服务器的成本主要由硬件配置、带宽和防御组成。要求不太高的话,一般一年5000左右。如有特殊需要,价格另算。这里,我们讨论的是物理主机。如果想租低价的服务器,可以找深圳姬友网719416666,国内外都有,价格也不算太贵。
租用海外服务器一般有两种费用,一种是按配置收费,一种是按数据中心环境收费。1服务器CPU、内存、硬盘租用海外服务器按配置收费,根据业务需求选择。不同类型的业务或者同一类型的业务运营对服务器CPU、内存、硬盘的要求是不同的。正规的IDC机房都配备了硬件集群防火墙,可以有效防止网络攻击。对于特别容易受到DDOS攻击和CC攻击的金融行业和游戏行业,需要租用单机防御的服务器。防御越高,服务器租赁价格越高。HostEase为美国高防服务器提供了非常高的性价比。有兴趣的可以去了解一下。服务器的带宽大小和模式也影响着海外服务器的租赁价格。比如香港服务器分为本地带宽和国际带宽。两者价格不同,国际带宽比本地带宽贵很多。服务器的带宽越大,就越贵。第二,租用海外服务器是按照机房环境收费的。不同等级的数据中心、不同的网络设备(开关、恒温器)等。与所能提供的网络质量密切相关。自然等级越高,数据中心服务器的租赁价格越高。由于服务器是24小时运行的,在运行的过程中难免会遇到一些问题,所以需要专业的服务团队来解决问题。售后服务越好,用户租用海外服务器可能付出的价格就越高。但也有可能是售后服务很好的IDC厂商,但其收费并没有上调,比如RAKsmart美国服务器提供商,虽然他们24小时在线提供专业客服,但其收费并没有上调。最近因为写论文的关系,泡知网、泡万方,发现了很多学术界对数据中心网络一些构想,发现里面不乏天才的想法,但日常我们沉迷在各个设备厂商调制好的羹汤中无法自拔,管中窥豹不见全局,还一直呼喊着“真香”,对于网工来说沉溺于自己的一方小小天地不如跳出来看看外界有哪些新的技术和思想,莫听穿林打叶声,何妨吟啸且徐行
当前新的数据中心网络拓扑主要分为两类
1、以交换机为核心,网络连接和路由功能由交换机完成,各个设备厂商的“羹汤”全属于这个领域
2、以服务器为核心,主要互联和路由功能放在服务器上,交换机只提供简单纵横制交换功能
第一类方案中包含了能引发我回忆阴影的Fat-Tree,和VL2、Helios、c-Through、OSA等等,这些方案要么采用更多数量交换机,要么融合光交换机进行网络互联,对交换机软件和硬件要求比较高,第二类主要有DCell、Bcube、FiConn、CamCube、MDCube等等,主要推动者是微软,这类方案中服务器一版会通过多网卡接入网络,为了支持各种流量模型,会对服务器进行硬件和软件的升级。
除了这些网络拓扑的变化外,其实对数据中心网络传输协议TCP/IP、网络虚拟化、网络节能机制、DCI网络互联都有很多创新的技术和概念涌现出来。
FatTree 胖树,2008年由UCSD大学发表的论文,同时也是5年前工作中接触的第一种交换机为中心的网络拓扑,当时没有太理解,跟客户为这事掐的火星四溅,再来一次可能结论会有所改变,同时也是这篇论文引发了学术界对数据中心内部网络拓扑设计的广泛而深刻的讨论,他提出了一套组网设计原则来达成几个目的
1、全网采用低端商用交换机来组网、其实就是采用1U的接入交换机,取消框式设备
2、全网无阻塞
3、成本节省,纸面测算的话FatTree 可以降为常规模式组网成本的1/4或1/5
物理拓扑(按照4个pod设计)
FatTree 的设计原则如下
整个网络包含K个POD,每个POD有K/2个Edge和K/2个Agg 交换机,他们各有K的接口,Edge使用K/2个端口下联服务器,Agg适用K/2个端口上联CORE交换机
Edge使用K/2个端口连接服务器,每个服务器占用一个交换端口
CORE层由K/2K/2共计KK/4个K个端口交换机组成,分为K/2组,每组由K/2ge,第一组K/2台CORE交换机连接各个POD中Agg交换层一号交换机,第二组K/2的CORE交换机连接各POD中Agg的二号交换机,依次类推
K个POD,每个POD有K/2个Edge交换机,每个Edge有K/2端口,服务器总数为KK/2K/2=KKK/4
K取值4的话,服务器总数为16台
常规K取值48的话,服务器为27648台
FatTree的路由设计更加有意思,论文中叫两阶段路由算法,首先要说明的是如果使用论文中的算法是需要对交换机硬软件进行修改的,这种两阶段路由算法和交换设备及服务器的IP地址强相关,首先就是IP地址的编制,这里依然按照K=4来设计,规则如下
1、POD中交换机IP为10podswitch1,pod对应POD编号,switch为交换机所在POD编号(Edge从0开始由左至右到k/2-1,Agg从k/2至k-1)
2、CORE交换机IP为10kji ,k为POD数量,j为交换机在Core层所属组编号,i为交换机在该组中序号
3、服务器IP为10podswitchID,ID为服务器所在Edge交换机序号,交换机已经占用1,所以从2开始由左至右到k/2+1
设计完成后交换机和服务器的IP地址会如下分配
对于Edge交换机(以10201为例)第一阶段匹配10202和10203的32位地址,匹配则转发,没有匹配(既匹配0000/0)则根据目的地址后8位,也就是ID号,选择对应到Agg的链路,如目标地址为xxx2则选择到10221的链路,目标地址为xxx3则选择到10231的链路
对于Agg交换机(以10221为例)第一阶段匹配本POD中网段10200/24和10210/24,匹配成功直接转发对应Edge,没有匹配(既匹配0000/0)则根据目的地址后8位,也就是ID号确定对应到Core的链路,如目标地址为xxx2则选择到10411的链路,目标地址为xxx3则选择到10412的链路
对于Core交换机,只有一个阶段匹配,只要根据可能的POD网段进行即可,这里是10000/16~10300/16对应0、1、2、3四个口进行转发
容错方面论文提到了BFD来防止链路和节点故障,同时还有流量分类和调度的策略,这里就不展开了,因为这种两阶段路由算法要对交换机硬件进行修改,适应对IP后8位ID进行匹配,现实中没有看到实际案例,但是我们可以设想一下这种简单的转发规则再加上固定端口的低端交换机,对于转发效率以及成本的压缩将是极为可观的。尤其这种IP地址规则的设计配合路由转发,思路简直清奇。但是仔细想想,这种按照特定规则的IP编制,把每个二层限制在同一个Edge交换机下,注定了虚拟机是没有办法跨Edge来迁移的,只从这点上来看注定它只能存在于论文之中,但是顺着这个思路开个脑洞,还有什么能够编制呢?就是MAC地址,如果再配上集中式控制那就更好了,于是就有了一种新的一种路由方式PortLand,后续我们单独说。
如此看来FatTree 是典型的Scale-out模式,但是由于一般交换机端口通常为48口,如果继续增加端口数量,会导致成本的非线性增加,底层Edge交换机故障时,难以保障服务质量,还有这种拓扑在大数据的mapreduce模型中无法支持one-to-all和all-to-all模式。
把脑洞开的稍微小一些,我们能否用通用商业交换机+通用路由来做出来一种FatTree变种拓扑,来达到成本节省的目的呢,答案一定是确切的,目前能看到阿里已经使用固定48口交换机搭建自己的变种FatTree拓扑了。
以交换机为中心的网络拓扑如VL2、Helios不再多说,目前看到最好的就是我们熟知的spine-leaf结构,它没有设计成1:1收敛比,而且如果使用super层的clos架构,也可以支撑几万台或者百万台的服务器规模,但是FaTtree依靠网络拓扑取消掉了框式核心交换机,在一定规模的数据中心对于压低成本是非常有效的
聊完交换机为核心的拓扑设计后,再来看看服务器为核心的拓扑,同样这些DCell、Bcube、FiConn、CamCube、MDCube等,不会全讲,会拿DCell来举例子,因为它也是2008年由微软亚洲研究院主导,几乎和FatTree同时提出,开创了一个全新的思路,随后的年份里直到今天一直有各种改进版本的拓扑出现
这种服务器为核心的拓扑,主导思想是在服务器上增加网卡,服务器上要有路由转发逻辑来中转流量数据包,并且采用递推方式进行组网。
DCell的基本单元是DCell0,DCell0中服务器互联由一台T个端口的mini交换机完成,跨DCell的流量要通过服务器网卡互联进行绕转。通过一定数量的Dcell0组成一个DCell1,按照一定约束条件进行递推,组成DCell2以及DCellk
上图例中是一个DCell1的拓扑,包含5个Dcell0,每台服务器2个端口,除连接自己区域的mini交换机外,另一个端口会依次连接其他DCell0中的服务器,来组成全互联的结构,最终有20台服务器组成DCell1,所有服务器按照(m,n)坐标进行唯一标识,m相同的时候直接通过moni交换机交互,当m不同时经由mini交换机中继到互联服务器,例子中红色线为40服务器访问13服务器的访问路径。
DCell组网规则及递归约束条件如下:
DCellk中包含DCellk-1的数量为GK
DCellk中包含服务器为Tk个,每台服务器k+1块网卡,则有
GK=Tk-1+1
TK=Gk-1 ✕ Tk-1
设DCell0中有4台服务器
DCell1 中有5个DCell0 (G1=5)
Tk1=20台服务器(T1=20)
DCell2 中有21个DCell1 (G2=21)
Tk2=420台服务器(T2=420)
DCell3 中有421个DCell2 (G3=421)
Tk3=176820台服务器(T3=176820)
…
Tk6=3260000台服务器
经过测算DCell3中每台服务器的网卡数量为4,就能组建出包含17万台服务器的数据中心,同样DCell的缺点和优点一样耀眼,这种递归后指数增长的网卡需求量,在每台服务器上可能并不多,但是全量计算的话就太过于惊人了,虽然对比FatTree又再一次降低交换机的采购成本,但是天量的网卡可以想象对于运维的压力,还有关键的问题时高层次DCell间通信占用低层次DCell网卡带宽必然导致低层次DCell经常拥塞。最后还有一个实施的问题,天量的不同位置网卡布线对于施工的准确度以及未知的长度都是一个巨大的挑战。
DCell提出后,随后针对网卡数量、带宽抢占等一系列问题演化出来一批新的网络拓扑,思路无外乎两个方向,一个是增加交换机数量减少单服务网卡数量,趋同于spine-leaf体系,但是它一直保持了服务器多网卡的思路。另一种是极端一些,干脆消灭所有交换机,但是固定单服务器网卡数量,按照矩阵形式组建纯服务器互联结构,感兴趣的同学可以继续探索。
数据中心的路由框架涵盖范围和领域非常多,很多论文都选择其中的一个点进行讨论,比如源地址路由、流量调度、收敛、组播等等,不计划每个展开,也没有太大意义。但是针对之前FatTree的两阶段路由有一个更新的路由框架设计PortLand,它解决了两段路由中虚拟机无法迁移的问题,它的关键技术有以下几点
1、对于FatTree这种高度规范化的拓扑,PortLand设计为采用层次化MAC编址来支持大二层,这种路由框架中,除了虚拟机/物理机实际的MAC外(AMAC),还都拥有一个PortLand规范的伪MAC(PMAC),网络中的转发机制和PMAC强相关,PMAC的编址规则为
podpositionportvmid
pod (2字节) 代表虚拟机/服务器所在POD号,position(1字节)虚拟机/服务器所在Edge交换机在POD中编号,port(1字节)虚拟机/服务器连接Edge交换机端口的本地编号,vmid(2字节)服务器在Edge下挂以太网交换机编号,如果只有一台物理机vmid只能为1
2、虚拟机/服务器的编址搞定后,Edge、Aggregate、Core的编址呢,于是PortLand设计了一套拓扑发现机制LDP(location discovery protocol),要求交换机在各个端口上发送LDP报文LDM(location
discovery message)识别自己所处位置,LDM消息包含switch_id(交换机自身mac,与PMAC无关)pod(交换机所属pod号)pos(交换机在pod中的编号)level(Edge为0、Agg为1、Core为2)dir(上联为1,下联为-1),最开始的时候Edge角色会发现连接服务器的端口是没有LDM的,它就知道自己是Edge,Agg和Core角色依次收到LDM后会计算并确定出自己的leve和dir等信息。
3、设计一个fabric manager的集中PortLand控制器,它负责回答Edge交换机pod号和ARP解析,当Edge交换机学习到一个AMAC时,会计算一个PMAC,并把IP/AMAC/PMAC对应关系发送给fabric manager,后续有虚拟机/服务器请求此IP的ARP时,会回复PMAC地址给它,并使用这个PMAC进行通信。
4、由于PMAC的编址和pod、pos、level等信息关联,而所有交换机在LDM的交互过程中知晓了全网的交换机pod、pos、level、dir等信息,当数据包在网络中传播的时候,途径交换机根据PMAC进行解析可得到pod、pos这些信息,根据这些信息即可进行数据包的转发,数据包到达Edge后,Edge交换机会把PMAC改写为AMAC,因为它是知道其对应关系的。当虚拟机迁移后,由fabric manager来进行AMAC和PMAC对应更新和通知Edge交换机即可,论文中依靠虚拟机的免费ARP来触发,这点在实际情况中执行的效率要打一个问号。
不可否认,PortLand的一些设计思路非常巧妙,这种MAC地址重写非常有特色。规则设计中把更多的含义赋给PMAC,并且通过LDP机制设计为全网根据PMAC即可进行转发,再加上集中的控制平面fabric manager,已经及其类似我们熟悉的SDN。但是它对于转发芯片的要求可以看出要求比较低,但是所有的转发规则会改变,这需要业内对于芯片和软件的全部修改,是否能够成功也看市场驱动力吧,毕竟市场不全是技术驱动的。
除了我们熟悉的拓扑和路由框架方面,数据中心还有很多比较有意思的趋势在发生,挑几个有意思的
目前数据中心都是以太网有线网络,大量的高突发和高负载各个路由设架构都会涉及,但是如果使用无线是不是也能解决呢,于是极高频技术在数据中心也有了一定的研究(这里特指60GHZ无线),其吞吐可达4Gbps,通过特殊物理环境、波束成形、有向天线等技术使60GHZ部署在数据中心中,目前研究法相集中在无线调度和覆盖中,技术方案为Flyways,它通过合理的机柜摆放及无线节点空间排布来形成有效的整体系统,使用定向天线和波束成形技术提高连接速率等等新的技术,甚至还有一些论文提出了全无线数据中心,这样对数据中心的建设费用降低是非常有助力的。
数据中心目前应用的还是TCP,而TCP在特定场景下一定会遇到性能急剧下降的TCP incast现象,TCP的拥塞避免和慢启动会造成当一条链路拥塞时其承载的多个TCP流可能会同时触发TCP慢启动,但随着所有的TCP流流量增加后又会迅速达到拥塞而再次触发,造成网络中有时间流量很大,有时间流量又很小。如何来解决
数据中心还有很多应用有典型的组通信模式,比如分布式存储、软件升级等等,这种情况下组播是不是可以应用进来,但是组播在数据中心会不会水土不服,如何解决
还有就是数据中心的多路径,可否从TCP层面进行解决,让一条TCP流负载在不同的链路上,而不是在设备上依靠哈希五元组来对每一条流进行特定链路分配
对于TCPincast,一般通过减少RTO值使之匹配RTT,用随机的超时时间来重启动TCP传输。还有一种时设计新的控制算法来避免,甚至有方案抛弃TCP使用UDP来进行数据传输。
对于组播,数据中心的组播主要有将应用映射为网络层组播和单播的MCMD和Bloom Filter这种解决组播可扩展性的方案
对于多路径,提出多径TCP(MPTCP),在源端将数据拆分成诺干部分,并在同一对源和目的之间建立多个TCP连接进行传输,MPTCP对比传统TCP区别主要有
1、MPTCP建立阶段,要求服务器端向客户端返回服务器所有的地址信息
2、不同自流的源/目的可以相同,也可以不同,各个子流维护各自的序列号和滑动窗口,多个子流到达目的后,由接收端进行组装
3、MPTCP采用AIMD机制维护拥塞窗口,但各个子流的拥塞窗口增加与所有子流拥塞窗口的总和相关
还有部分针对TCP的优化,如D3协议,D3是针对数据中心的实时应用,通过分析数据流的大小和完成时间来分配传输速率,并且在网络资源紧张的时候可以主动断开某些预计无法完成传输的数据流,从而保证更多的数据流能按时完成。
这的数据中心节能不会谈风火水电以及液冷等等技术,从网络拓扑的角度谈起,我们所有数据中心拓扑搭建的过程中,主要针对传统树形拓扑提出了很多“富连接”的拓扑,来保证峰值的时候网络流量的保持性,但是同时也带来了不在峰值条件下能耗的增加,同时我们也知道数据中心流量多数情况下远低于其峰值设计,学术界针对这块设计了不少有脑洞的技术,主要分为两类,一类时降低硬件设备能耗,第二类时设计新型路由机制来降低能耗。
硬件能耗的降低主要从设备休眠和速率调整两个方面来实现,其难点主要时定时机制及唤醒速度的问题,当遇到突发流量交换机能否快速唤醒,人们通过缓存和定时器组合的方式进行。
节能路由机制,也是一个非常有特点的技术,核心思想是通过合理的选择路由,只使用一部分网络设备来承载流量,没有承载流量的设备进行休眠或者关闭。Elastic Tree提出了一种全网范围的能耗优化机制,它通过不断的检测数据中心流量状况,在保障可用性的前提下实时调整链路和网络设备状态,Elastic Tree探讨了bin-packer的贪心算法、最优化算法和拓扑感知的启发算法来实现节能的效果。
通过以上可以看到数据中心发展非常多样化,驱动这些技术发展的根本性力量就是成本,人们希望用最低的成本达成最优的数据中心效能,同时内部拓扑方案的研究已经慢慢成熟,目前设备厂商的羹汤可以说就是市场化选择的产物,但是数据中心网络传输协议、虚拟化、节能机制、SDN、服务链等方向的研究方兴未艾,尤其是应用定制的传输协议、虚拟网络带宽保障机制等等,这些学术方面的研究并不仅仅是纸上谈兵,对于我知道的一些信息来说,国内的阿里在它的数据中心网络拓扑中早已经应用了FatTree的变种拓扑,思科也把数据中心内部TCP重传的技术应用在自己的芯片中,称其为CONGA。
坦白来说,网络从来都不是数据中心和云计算的核心,可能未来也不会是,计算资源的形态之争才是主战场,但是网络恰恰是数据中心的一个难点,传统厂商、学术界、大厂都集中在此领域展开竞争,创新也层出不穷,希望能拓展我们的技术视野,能对我们有一些启发,莫听穿林打叶声、何妨吟啸且徐行~社保费测算系统 *** 作步骤如下:1登录测算系统后,点击缴费工资管理模块,进入年度工资申报下载,选择申报的险种和年度,点击查询,申请下载职员表单文件,职员表单下载后,点击文件表格,填写申报工资基数列中的工资基数,保存到桌面; 2点击进入年度工资申报上传导入,点击选取文件,选取保存的工资基数申报表,上传到服务器; 3点击进入年度工资基数申报导入确认,选择对应的险种后点查询,核对导入的数据无误后确认; 4点击进人年度工资申报查询,选择对应险种,可查看对应的申报情况。
导语:服务器的构成包括处理器、硬盘、内存、系统总线等,和通用的计算机架构类似,但是由于需要提供高可靠的服务,因此在处理能力、稳定性、可靠性、安全性、可扩展性、可管理性等方面要求较高。那么,我们可以怎么选择好的服务器
怎么选择好的服务器你需要从不同的角度来决定选择一台什么样的服务器,找到满足技术需要、业务发展和成本控制之间的最佳平衡点,为了做到这一点,绝对还是需要一点智慧。51IDC将在下面为大家介绍一些易于理解,尽可能全面的建议,并帮助你做出决定。
先不要急于决定需要怎样的CPU,几个硬盘,几个G内存,需要多少兆带宽这样的问题,那些是我们最后需要得到的答案。在这之前,先一起梳理几个问题。在下面,我们列出了一些“多少”或“什么样”的问题,拿起你的笔或在Windows记事本里新建一个文件,尝试根据下面四个问题来评估自己的需求:
1服务器运行什么应用
2需要支持多少用户访问
3需要多大空间来存储数据
4我的业务有多重要
1:服务器运行什么应用这是首先需要考虑的问题,在这里你要根据服务器的应用类型,也就是用途,来决定服务器的性能、容量和可靠性需求。我们按照前端服务器+应用程序服务器+数据服务器的常见基础架构来讨论:
11Web前端:正常情况下,我们认为大多数Web前端服务器(Front-end)对服务器的要求不大,例如静态Web服务器、动态Web服务器、服务器等等,因为在现有的技术框架中,我们有很多方案可以解决前端服务器的性能扩展和可靠性问题,例如LVS、Nginx反向代理、硬件负载均衡(F5,A10,Radware)等。甚至在很多访问量不高(几百个用户同时在线)的应用中,51IDC的经典酷睿服务器就可以满足需求。
12应用服务器:由于承担了计算和功能实现,我们需要为基于Web架构的应用程序服务器(Application Server)选择足够快的服务器,另外应用程序服务器可能需要用大量的内存,尤其是基于Windows基础架构的Ruby,Python,Java服务器。这一类服务器至少需要使用单路至强的配置。对于可靠性的问题,如果你的架构中只有一台应用服务器,那肯定需要这台服务器足够可靠,RAID绝对是不能忽视的选项。但如果有两台或更多的应用服务器,并设计了负载均衡机制,具有冗余功能,那我们则不必将每台服务器武装到底。
13特殊的应用:除了作为Web架构中的应用程序服务器之外,如果你的服务器是用来处理流媒体视频编码、服务器虚拟化、媒体服务器(Asterisk之类),或者作为游戏服务器(逻辑、地图、聊天)运行,则同样对CPU和内存需求比较高,我们至少要考虑单路至强的服务器。其中服务器虚拟化对存储的可靠性的要求都非常高,因为一个篮子里有十几个鸡蛋,篮子一定要足够牢靠才是。
14公共服务:我们指的是邮件服务器、文件服务器、DNS服务器、域控服务器这类服务器。通常情况我们会部署两台DNS服务器作为互相备份,域控主服务器也会拥有一台备份服务器(专用的或非专用的),所以对于可靠性,无需达到苛刻的地步。至于邮件服务器,至少需要具备足够的硬件可靠性和容量大小,这主要是为了对邮件数据负责,因为很多用户没有保存和归档邮件数据的习惯,当他们重装系统后,总会依赖重新下载服务器上的数据。至于性能问题,我们认为需要评估用户数量才能决定。
15数据库:我们最后讨论的应用,也是要求最高,最重要的服务器。无论你使用的是MySQL、SQLServer还是Oralce,一般情况下,我们认为它需要足够快的CPU,足够大的内存,足够稳定可靠的硬件。单路至强CPU/4GB内存/Raid1绝对是入门配置。关于准确的配置我们需要再讨论业务需求后才能作决定。
2:服务器需要支持多少用户访问服务器肯定是为了提供某种服务,而使用这些服务的用户同样是我们必须考虑的因素,有几个具体的问题你需要做出评估:有多少注册用户正常情况下有多少用户会同时在线访问每天同时在线访问的最高峰值大概是多少这些问题,对我们决定采用什么样的CPU,多大的内存有着至关重要的影响。51IDC建议你的技术人员和业务部门坐在一起来讨论这几个问题,最后甚至需要按照特定的技术模型和算法,将这些数字转化为一些更具体的技术数字,例如并发多少个连接(很多时候,用户数与连接数不是一个概念)。同时,你还要对未来的用户增长做一个尽可能准确的预测和规划,你的服务器需要支持越来越多的用户。
3:需要多大空间来存储数据我们需要从两个角度来计算这个问题,一个角度是有哪些类别的数据,包括: *** 作系统本身占用的空间、安装应用程序所需要的空间、应用程序所产生的数据、数据库、日志文件、邮件数据等等,如果是Web20类的网站,你还要计算每个用户的存储空间;另一个角度是从时间轴来考虑,这些数据每天都在增长,你至少要为未来1年(我们建议2~3年)的数据增长做个准确的测算,这可能仍然需要你的软件开发人员和业务人员一起提供足够的信息。最后你仍然需要为计算出来的数字结果乘15左右的系数,方便维护的时候做各种数据备份和文件转移 *** 作。
4我的业务有多重要:你需要根据自身的业务领域,来遵循一些要求,我们在下面举几个简单的例子,帮助你理解这些服务器对可靠性、数据完整性等方面的要求:
41如果你的服务器用来运行一个WordPress博客,与朋友们分享观点。那么我相信,一台酷睿服务器,1G内存外加一块160GB的硬盘就足够了。就算服务器出现了一点硬件故障,导致几个小时甚至一两天不能提供访问,生活会照常继续,天也不会塌下来。
42如果你的服务器用来作为测试平台,那么就不会如生产环境那样,对可靠性有极高的要求,你所需要的可能只是做好例行的数据备份,服务器宕机后,能有个人在今天把问题解决掉就OK了
43如果你是一个电子商务公司,服务器正在运行电子商务网站平台,那么请一定要像重视女朋友一样重视服务器,当硬件发生故障而导致宕机,你需要对以下危言耸听的后果做好心理准备:投诉电话被打爆、顾客大量流失、顾客要求退款、市场推广费用打水漂、员工无事可干,公司运营陷入瘫痪、数据丢失(这是最痛苦最灾难的结果,我们经历了太多这样的案例,它甚至会导致一个公司就此消亡)在这里,我们其实只需要简单讨论你的业务对服务器硬件可靠性的要求。换言之,如果你觉得业务不能承担硬盘损坏带来的停机或数据丢失风险,那么一定要选择一个合适的Raid卡,对于冗余电源问题,道理一样。(全面解决这个问题,不单考虑单个服务器的硬件,还需要结合系统架构的规划设计和运维管理来分析,这部分我们将单独撰写文章来讨论。)
在完成以上问题后,我们接下来就可以决定这些具体选项:
选择什么CPU
回忆一下上面”服务器运行什么应用“和“需要支持多少用户访问”两个问题的答案,这将帮助我们来选择合适的CPU。毫无疑问,CPU的主频越高,其性能也更高;两个CPU要比一个CPU来得更爽,至强肯定比酷睿更生猛。但我们究竟需要选择怎样的CPU我们在这里为你提供一些常见情况下的建议:
(1)如果你的业务刚刚起步,预算不是很充足,建议你选择一款经典酷睿服务器,毕竟51IDC的E5300服务器最便宜只需要450块钱一个月。而且,以后你可以根据业务发展情况,随时升级到更高配置的服务器。
(2)如果你需要在一台服务器同时运行多种应用服务,例如Net+Exchange+SQLServer,那么一个单路至强(例如X3330)或新一代酷睿I3/I7(双核四线程)将是最佳的选择。虽然从技术角度,这不是一个好主意,但至少能够帮你节约一大笔成本。
(3)如果你的服务器运行SQLServer、MySQL或者Oracle,而且目前有几百个用户同时在线,未来还会不断增长,那么你至少应该选择安装一个E5504(或更高主频)的至强服务器。当半年后负载越来越大的时候,可以选择增加一个CPU。
(4)如果你需要一台游戏服务器,那么我们建议你选择一台单路或双路的至强服务器。需要注意的是,使用双路CPU需要应用程序的支持,如果应用程序本身没有对双路CPU进行代码优化,就不会带来性能的显著提升,而且将造成投资的极大浪费。
需要多大的内存
同样,”服务器运行什么应用“和“需要支持多少用户访问”两个问题的答案,也将帮助我们来选择合适的内存容量。相比于CPU,我们更认为内存(RAM)是影响性能的最关键因素。因为在相当多正在运行的服务器中,我们发现CPU利用率一般都在10%~30%之间,甚至更低。但我们发现由于内存容量不够而导致服务器运行缓慢的案例比比皆是,如果服务器不能分配足够的内存给应用程序,应用程序就需要通过缓慢的硬盘接口来交换读写数据,这将导致网站慢的令人无法接受。内存大小主要取决于服务器的用户数量,当然也和应用软件对内存的最低需求和内存管理机制有关系,所以,最好由你的程序员或软件开发商给你最佳的内存配置建议。我们同样在下面给出了一些常见应用环境下的内存配置建议:
(1)无论是Windows下的`IIS还是Linux下的Apache,一般情况下Web前端服务器不需要配置特别高的内存,尤其是在集群架构中,1GB-2GB就已足够。只有当几千个并发用户,并运行动态脚本的时候,我们才会考虑使用4GB或更高的内存。
(2)对于运行Tomcat、Resin、WebLogic、Websphere或Net这样的应用服务器,2GB内存应该是基准配置。更准确数字需要根据用户数量和技术架构来确定。
(3)数据库服务器的内存由数据库实例的数量、表大小、索引、用户数来决定,一般建议配置4GB以上的内存,我们甚至在很多的客户案例中使用了24GB到48GB的内存。
(4)诸如Imail、Notes、Exchange这样的邮件服务器对内存的要求也并不高,1GB-2GB就可以满足了。
(5)对于一台文件服务器,1GB内存可能就足够了。
(6)还有一些特殊的服务器,我们需要为之配置尽可能高的内存容量,包括Squid,Varnish这样的缓存服务器,和Memcached Server。事实上,上面的数字已经足够慷慨,由于内存技术的不断进化和价格不断降低,我们才得以近乎奢侈的讨论4G、8G、16GB这些曾经不可想象的内存容量。早在2000年的时候,我面对的大多数服务器都是256MB、512MB内存,1GB已经算是高配,而那时同样也需要满足大量用户的访问。所以,除了花钱购买内存来满足应用程序的贪婪之外,系统优化和内存管理仍然是我们需要重视的问题。需要怎样的硬盘存储系统硬盘存储系统的选择和配置是整个服务器系统里最为复杂的一部分,我们需要考虑硬盘的数量、容量、接口类型、转速、缓存大小,以及是否需要Raid卡,Raid卡的型号和Raid级别等问题。甚至在一些高可靠性高性能的应用环境中,我们还需要考虑使用怎样的外部存储系统(SAN、NAS或DAS)。
网卡的问题:
如果你的基础架构是多服务器环境,而且服务器之间有大量的数据交换,那么我们建议你为每台服务器配置两个或更多的网卡,一个用来对外提供服务,另一个用来做内部数据交换。如果你对安全的要求特别高,我们甚至可以单独安装一个用于系统管理和日常维护的网卡。至于网卡端口的速率问题,这主要取决于你对带宽流量的评估。大多数情况下,百兆网卡足够用来对外提供服务,而内部数据交换建议使用千兆网卡。但话说回来,除了经典酷睿服务器之外,我们现在很难找到百兆接口的服务器主板了。还有一种情况需要注意,如果你选择51IDC的数据备份服务(Managed Backup Service),则需要一块单独的网卡连接到专有的数据备份网络中,进行每天的数据备份,这会带来几个好处:不会占用宝贵的外网带宽、保证数据传输的安全、提供快速的数据备份速度。我们非常希望这篇文章能够帮助你为服务器选择合适的硬件配置,如果你阅读后发现有不正确的地方,请在评论中指出来,我们会及时更新并感谢你的热情指正。
随着互联网的飞速发展,企业越来越离不开服务器,一个服务器的好坏往往会影响到企业的发展。那么企业如何选择适合的服务器需要考虑哪些因素
我们可以从以下几方面考虑:
1服务器的主要目的是做什么
选择服务器之前,确定好将运行什么软件,负载有多大,清楚的知道服务器的应用类型,可以决定服务器的配置,包括cpu、内存、硬盘等。
按照常见基础架构来讨论:
Web服务器正常情况下,我们认为大多数Web服务器对硬件要求不大,例如静态Web服务器、动态Web服务器、服务器等等,甚至一般的硬件配置(2颗4核、8G内存、1T硬盘)即可满足需求,如果后期Web服务访问量上升,只需要新增同等配置的服务器加入负载均衡集群即可实现Web服务的性能扩展。
应用程序服务器应用服务器由于承担了计算和功能实现,需要为基于Web架构的应用程序服务器。对CPU的配置,至少是双路志强银牌Silver系列。对于可靠性问题,如果你只有一台服务器的话,那么这台服务器必须足够可靠,磁盘做成RAID1阵列是必不可少的。
特殊应用服务器除了作为Web架构中的应用程序服务器之外,如果你的服务器是用来处理流媒体视频编码、服务器虚拟化、媒体服务器(Asterisk之类),或者作为游戏服务器(逻辑、地图、聊天)运行,则同样对CPU和内存需求比较高,我们至少要考虑单路至强的服务器。其中服务器虚拟化对存储的可靠性的要求都非常高,因为一个篮子里有十几个鸡蛋,篮子一定要足够牢靠才是。
数据服务器数据服务器对硬件要求最高,主要特征是CPU要足够快、内存足够大,磁盘IO足够快和稳定。比如:MySQL、Oracle服务器要求CPU配置一定要好,最好是双路志强金牌Gold,磁盘最好使用SSD系列。而Redis服务器主要是内存
其它公用服务器还有一些公用的服务器,例如邮件服务器、DNS服务器、域控服务器。对稳定性要求较高,因此一般会推荐有至少两台进行主、备部署。对硬件来说,没有特殊的需求,所以一般的硬件即可。
2 业务系统要支持多少的用户量
硬件服务器是为了提供某种服务,而使用这些服务的用户有多少,也是我们需要考虑的因素,有几个具体的问题需要我们做出评估:
正常情况下有多少用户会同时在线访问
每天同时在线访问的最高峰值大概是多少
预估网络带宽会占用多少
同时,你还要对未来的用户增长做一个尽可能准确的预测和规划,让服务器需要支持越来越多的用户。这些问题,对我们决定采用什么样的CPU,多大的内存有着至关重要的影响。
3要用多大空间来存储数据
可以从两个角度来计算这个问题,
一个角度是看有哪些类别的数据是占据空间的。包括: *** 作系统本身占用的空间、安装应用程序所需要的空间、应用程序所产生的数据、数据库、日志文件、邮件数据等等,如果是Web20类的网站,你还要计算每个用户的存储空间。
另一个角度是从时间轴来考虑,这些数据每天都在增长,至少为未来两三年的数据增长做个准确的测算,最后为计算出来的数字结果乘15左右的系数,方便维护的时候做各种数据备份和文件转移 *** 作。
4业务重要性有多高
服务器可以为不同业务系统提供各种应用服务,这个重要性直接影响到我们对服务器的选型配置。
如果只是做分享文章观点等门户网站,一台服务器,铜牌Bronze
单路cpu、4G内存、500GB足够了,并且也不需要备机,就算服务器出现了一点硬件故障,导致几个小时甚至一两天不能提供访问,工作也会照常继续,对公司也影响不大。
如果是做功能测试,那么对硬件配置基本没要求,虚拟机也可以满足要求,而如果是做性能测试,那么就根据性能测试的方向,选择某方面比较强劲的硬件即
如果是做电商平台类,那么CPU要足够好,内存也要足够大,磁盘一定要做RAID10。同时,还要部署主、备架构,数据要做实时备份、异地远程备份,因为重要的业务系统,一旦发生故障,可能产生客户流失,直接导致的损失就是金钱。
另外企业也可以根据IT成本预算和业务的发展需求,选择租用服务器还是购买服务器。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)