scheduler)是一个使公司能够调度并且,在某些情况下,能管理计算机“批”作业(执行单位,例如一个职工工资表程序的运行)的程序。
作业调度器(job
scheduler)是一个使公司能够调度并且,在某些情况下,能管理计算机“批”作业(执行单位,例如一个职工工资表程序的运行)的程序。作业调度器可以自动地通过处理准备好的作业控制语言语句或通过和一个人类 *** 作者进行同等作用的交互来初始化和管理作业。现在的作业调度器一般都提供一个图形化的用户接口,以及在分布式计算机网络中对所有的 *** 作提供一个单点控制。
在作业调度器(job
scheduler)中可以找到的一些特征包括:
对作业以及完成通告的持续自动的监控
事件驱动的作业的调度
性能监控
报告调度
多处理器调度(Multiple-Processor
Scheduling):如果多个CPU,则负载分配(load
sharing)。其中主要讨论处理器功能相同(或同构)的系统,可以将任何处理器用于运行队列内的任何进程。
多处理器调度方法:在一个多处理器中,CPU调度的一种方法是让一个处理器(主服务器)处理所有的调度决定、I/O处理以及其他系统活动,其他的处理器只执行用户代码。这种非对称处理(asymmetric
multiprocessing)方法更为简单,因为只有一个处理器访问系统数据结构,减轻了数据共享的需要。另一种方法是使用对称多处理(symmetric
multiprocessing,SMP)方法,即每个处理器自我调度。所有进程可能处于一个共同的就绪队列中,或每个处理器都有自己的私有就绪队列。无论如何,调度通过每个处理器检查共同就绪队列并选择一个进程来执行。如果多个处理器试图访问和更新一个共同数据结构,那么每个处理器必须仔编程:必须确保两个处理器不能选择同一进程,且进程不会从队列中丢失。
处理器亲和性:进程移到其他处理器上时,被迁移的第一个处理器的缓存中的内容必须为无效,而将要迁移的第二个处理器上的缓存需重新构建。由于使缓存无效或重构的代价高,因而SMP努力的使一个进程在同一个处理器上运行,这被称为处理器亲和性,即一个进程需有一种对其他运行所在的处理器的亲和性。软亲和性(soft
affinity, *** 作系统具有设法让一个进程保持在同一个处理器上运行的策略,但不能做任何保证)—硬亲和性(hard
affinity,允许进程指定它不允许移至其他处理器)。
负载平衡(load
balancing):设法将工作负载平均地分配到SMP系统中的所有处理器上。通常只是对那些拥有自己私有的可执行的进程的处理器而言是必要的。两种方法:push
migration(一个特定的任务周期性地检查每个处理器上的负载,如果发现不平衡,即通过将进程从超载处理器移到(或推送到)空闲或不太忙的处理器,从而平均地分配负载,当空闲处理器从一个忙的处理器上推送pull一个等待任务时,发生pull
migration)和pull
migration。会抵消处理器亲和性。达到限额。
对称多线程:提供多个逻辑(而非物理的)处理器来运行几个线程,称为对称多线程(SMT),或超线程(hyperthreading)技术。即使系统仅有单处理器,每个逻辑处理器都有它自己的架构状态,包括通用目的和机器状态寄存器。每个逻辑处理器负责自己的中断处理,这意味着中断被送到并被逻辑处理器所处理,每个逻辑处理器共享其物理处理器的资源,如缓存或总线。SMT是硬件而非软件提供的。硬件应该提供每个逻辑处理器的架构状态的表示以及中断处理方法。调度程序首先设法把不同线程分别调度到每个物理处理器上,而不是调度到同一个物理处理器的不同逻辑处理器上。
线程调度:用户线程---内核线程
系统调度的是内核线程,而不是进程。用户线程由线程库管理,内核并不了解它们。用户线程最终必须映射到相应的内核级线程。轻量级线程(LWP)。
竞争范围:用户线程和内核线程的区别之一是它们是如何被调度的。在执行多对一模型和多对多模型系统上,线程库调度用户级线程到一个有效的LWP上运行,这被称为进程竞争范围(process-contention
scope,PCS)方法,因为CPU竞争发生在属于相同进程的线程之间。为了决定调度哪个内核线程到CPU,内核采用系统竞争范围(system-contention
scope,SCS)方法来进行,竞争CPU发生在系统所有线程中,采用一对一的模型的系统,调度仅使用SCS方法。
PCS是根据优先级完成的。
Pthread调度:在线程生成过程中允许指定是PCS或SCS的。
一、实现与应急预案系统对接
高速公路出现突发事故时,经常需要启动应急预案并与医疗、公安交通等部门进行应急联动。高速公路联网中心管理人员可以将公路应急管理预案提前录入到MDS多媒体调度系统,一旦接到应急事件警报后,调度员一键即可触发预案处理 *** 作,并实现与其他相应部门的应急联动。
二、实现与WEB服务器的对接
高速公路管理部门有实时发布信息的网站,各地的交通路况、施工信息可实施发布在网站上。MDS多媒体调度系统实现了与高速公路联网中心WEB服务器、数据库服务器的对接,管理部门的各级领导通过简单的点触查询,即可在指挥中心的调度台上实时查询网站已发布的各种交通路况信息。
同时,各级值班员会根据实时交通路况,录入多种类的信息,发送到网站和运营系统之中。MDS多媒体调度系统也可以实时调用到相关的信息和文件。高速公路联网中心的相关领导和负责人,可以随时了解到联网中心信息系统发布的实时信息。
三、实现与管理数据库的对接
通过MDS多媒体调度系统可实现与高速公路系统管理数据库的对接,调度员可以详细查询到现场工作人员的通讯方式及人员值班情况,仅需点击调度用户图标上显示的通讯信息并可迅速发起呼叫。
针对某省整体交通系统的管理方式,系统界面中还可添加有高速公路联网中心系统的值班表。当调度员或相关领导想了解当天值班状况,则可马上看到的都是当天的值班人员表。
四、实现与短信平台系统的对接
高速公路联网中心可以通过捷思锐度身定制短信平台系统,增加调度指挥的业务覆盖面,将一些重要的或紧急的信息群发给相关工作人员。同时,也实现对值班表和通讯录中所有手机号码的短信群发。
五、实现与视频监控系统对接
高速公路联网中心已在指挥中心、各路段、各收费站等地点部署视频监控设备。通过IP协议,MDS多媒体调度系统可与视频监控系统进行对接,使得指挥中心人员可随时查看视频监控区图像。
15台服务器不少也不算太多,搭建一个基于LAMP技术的网站绰绰有余了。我的建议是
选择其中的两台硬盘较大,内存还可以的两台作为数据库服务器。搭建一套主从热备的主从数据库,实现系统的读写分离。提高数据访问的速度。
选择硬盘最大的一台作为文件服务器,放置系统需要使用的等静态资源。这里可以看情况而定,如果文件数据量大的话可以考虑多用一两台的搭建分布式文件系统。选择内存较大的一或两台搭建缓存服务器,将网站上满足二八定律的、访问量集中的、那百分之二十的数据缓存起来。内存的访问速度比硬盘快太多。剩下的用于搭建应用服务器集群。使用一台作为负载均衡调度服务器。当请求访问时根据既定的策略将请求分发到集群中去。
如有不对请斧正。欢迎评论讨论。
加入视频服务器之后可以让视频图像更加清晰、确保无损转码、提高交换效率、增强网络使用能力、简化参数配置等。捷思锐科技推出的MDVS可以再一以下方面对视频功能具有以下改善:
可同时对多路不同编码类型的视频数据进行编码转换;
支持ITU-T视频编码H264编码算法的全集,对于标准的H264全部可以实现解码、编码;
支持ITU-T视频编码MPEG4编码算法的全集,对于标准的MPEG4全部可以实现解码、编码;
支持ITU-T视频编码H263编码算法的全集,对于标准的H263全部实现解码、编码;
支持同时多路视频转发;
支持多路视频混码转发,即可将多路不同格式的视频混合成一路转发给目的终端;
支持不同尺寸、不同速率的视频转换。
从系统架构来看,目前的商用服务器大体可以分为三类,即对称多处理器结构(SMP:SymmetricMulti-Processor),非一致存储访问结构(NUMA:Non-UniformMemoryAccess),以及海量并行处理结构(MPP:MassiveParallelProcessing)。
一、SMP(SymmetricMulti-Processor)
所谓对称多处理器结构,是指服务器中多个CPU对称工作,无主次或从属关系。各CPU共享相同的物理内存,每个CPU访问内存中的任何地址所需时间是相同的,因此SMP也被称为一致存储器访问结构(UMA:UniformMemoryAccess)。对SMP服务器进行扩展的方式包括增加内存、使用更快的CPU、增加CPU、扩充I/O(槽口数与总线数)以及添加更多的外部设备(通常是磁盘存储)。
SMP服务器的主要特征是共享,系统中所有资源(CPU、内存、I/O等)都是共享的。也正是由于这种特征,导致了SMP服务器的主要问题,那就是它的扩展能力非常有限。对于SMP服务器而言,每一个共享的环节都可能造成SMP服务器扩展时的瓶颈,而最受限制的则是内存。由于每个CPU必须通过相同的内存总线访问相同的内存资源,因此随着CPU数量的增加,内存访问冲突将迅速增加,最终会造成CPU资源的浪费,使CPU性能的有效性大大降低。实验证明,SMP服务器CPU利用率最好的情况是2至4个CPU。
二、NUMA(Non-UniformMemoryAccess)
由于SMP在扩展能力上的限制,人们开始探究如何进行有效地扩展从而构建大型系统的技术,NUMA就是这种努力下的结果之一。利用NUMA技术,可以把几十个CPU(甚至上百个CPU)组合在一个服务器内。
NUMA服务器的基本特征是具有多个CPU模块,每个CPU模块由多个CPU(如4个)组成,并且具有独立的本地内存、I/O槽口等。由于其节点之间可以通过互联模块(如称为CrossbarSwitch)进行连接和信息交互,因此每个CPU可以访问整个系统的内存(这是NUMA系统与MPP系统的重要差别)。显然,访问本地内存的速度将远远高于访问远地内存(系统内其它节点的内存)的速度,这也是非一致存储访问NUMA的由来。由于这个特点,为了更好地发挥系统性能,开发应用程序时需要尽量减少不同CPU模块之间的信息交互。利用NUMA技术,可以较好地解决原来SMP系统的扩展问题,在一个物理服务器内可以支持上百个CPU。比较典型的NUMA服务器的例子包括HP的Superdome、SUN15K、IBMp690等。
但NUMA技术同样有一定缺陷,由于访问远地内存的延时远远超过本地内存,因此当CPU数量增加时,系统性能无法线性增加。如HP公司发布Superdome服务器时,曾公布了它与HP其它UNIX服务器的相对性能值,结果发现,64路CPU的Superdome(NUMA结构)的相对性能值是20,而8路N4000(共享的SMP结构)的相对性能值是63。从这个结果可以看到,8倍数量的CPU换来的只是3倍性能的提升。
三、MPP(MassiveParallelProcessing)
和NUMA不同,MPP提供了另外一种进行系统扩展的方式,它由多个SMP服务器通过一定的节点互联网络进行连接,协同工作,完成相同的任务,从用户的角度来看是一个服务器系统。其基本特征是由多个SMP服务器(每个SMP服务器称节点)通过节点互联网络连接而成,每个节点只访问自己的本地资源(内存、存储等),是一种完全无共享(ShareNothing)结构,因而扩展能力最好,理论上其扩展无限制,目前的技术可实现512个节点互联,数千个CPU。目前业界对节点互联网络暂无标准,如NCR的Bynet,IBM的SPSwitch,它们都采用了不同的内部实现机制。但节点互联网仅供MPP服务器内部使用,对用户而言是透明的。
在MPP系统中,每个SMP节点也可以运行自己的 *** 作系统、数据库等。但和NUMA不同的是,它不存在异地内存访问的问题。换言之,每个节点内的CPU不能访问另一个节点的内存。节点之间的信息交互是通过节点互联网络实现的,这个过程一般称为数据重分配(DataRedistribution)。
但是MPP服务器需要一种复杂的机制来调度和平衡各个节点的负载和并行处理过程。目前一些基于MPP技术的服务器往往通过系统级软件(如数据库)来屏蔽这种复杂性。举例来说,NCR的Teradata就是基于MPP技术的一个关系数据库软件,基于此数据库来开发应用时,不管后台服务器由多少个节点组成,开发人员所面对的都是同一个数据库系统,而不需要考虑如何调度其中某几个节点的负载。
网络是有很多设备和因素构成,没有那个是绝对的心脏。单纯以网络间的数据传输来说,电信部门的核心交换机和路由设备是心脏,它们处理来自一个地方的所有数据流量,把数据比作血液的话,这些核心交换机无疑就是心脏了。就网站访问来说的话,服务器就是心脏,它处理所有来自与访问者的访问请求,而服务器 *** 作系统只不过是一个软件层次上的中介,沟通服务器硬件处理及反馈数据。最核心的东西,都是最底层的基础的,即硬件设备,这是计算机信息世界的根源。服务器 *** 作系统是网络的心脏,它提供了网络最基本的核心功能,如网络文件系统、存储器的管理和调度等。服务器 *** 作系统(英语:Server operating system)一般指的是安装在大型计算机上的 *** 作系统,是企业IT系统的基础架构平台,也是按应用领域划分的3类 *** 作系统之一(另外2种分别是桌面 *** 作系统和嵌入式 *** 作系统)。
同时,服务器 *** 作系统也可以安装在个人电脑上。相比个人版 *** 作系统,在一个具体的网络中,服务器 *** 作系统要承担额外的管理、配置、稳定、安全等功能,处于每个网络中的心脏部位。服务器 *** 作系统可分为 Windows Server、 Netware、Unix和Linux。重要版本Windows NT Server 40、Windows 2000 Server、Windows Server 2003、Windows Server 2003 R2、Windows Server 2008 、Windows Server 2008 R2 、Windows Server 2012。Windows服务器 *** 作系统派应用,结合NET开发环境,为微软企业用户提供了良好的应用框架。仅供参考BOINC是一个利用志愿提供的计算机资源进行分布计算的软件平台。BOINC的特性如下:
在独立的项目间共享资源
许 多不同的项目可以使用BOINC。项目之间是独立的;每一个项目 *** 纵自己的服务器和数据库。参与者可以同时参与多个项目;他们可以控制自己参与那些项目, 控制他们的资源如何在这些项目间分配。当一个项目完成或者暂时不需要工作的时候,分配给这个项目的资源会自动分配到其他项目上去。
项目特性
BOINC提供如下特性用来简化分布计算项目的创建和 *** 作。
可伸缩的应用程序框架
用通用语言(C, C++, Fortran)编写的应用程序略加修改或者完全不改即可作为BOINC应用程序运行。程序可以有多个文件组成。程序的版本升级无需参与者干预。
安全
BOINC项目可以阻挡多种类型的攻击。例如,基于公钥加密算法的数字签名可以防止项目被用来传播病毒。
多服务器和容错处理
项目可以有各自独立的多个调度和数据服务器。客户端自动尝试轮换服务器,如果所有的服务器都无法访问,客户端利用指数回归算法来尝试与服务器连接,以避免服务器恢复连接后,对服务器造成洪水式攻击。
开放源代码
BOINC基于LGPL协议开放源代码。但是,BOINC应用程序无需开源。
支持大规模数据
BOINC支持应用程序生产或者消费大规模的数据,或者使用大量的内存。数据的分发和收集可以分散在多台服务器,参与者可以传送大量的数据。用户可以指定磁盘空间和网络带宽限制。系统只会给用户发送他能够处理的数据量。
参与者特性
BOINC为参与者提供如下的特性:
多种参与平台
BOINC核心客户端几乎支持所有的通用平台(Mac OS X, Windows, Linux 和 其他Unix系统)。客户端可以使用多CPU的运算能力。
基于Web的用户参与接口
BOINC提供基于Web接口,包括用户创建,偏好设置和参与状态显示。一个参与者的偏好设置会在他所有的主机上自动的传播,简化了对大规模主机的管理。
可配置的主机工作缓冲
核心客户端可以下载足够的工作,使主机在用户指定的时间内保持繁忙。这样可以减少网络连接的频率,还可以保障主机在项目服务器无法连接的情况下继续工作。
BOINC官方站点
中国分布式计算总站
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)