独立站该如何构建服务体系
本文目录
如何构建现代化乡镇行政管理体制
乡镇是我国最基层的政权组织,是共和国政权大厦的基石,它处在农村工作的第一线,党和国家的各项方针政策要靠乡镇贯彻落实,事关全局的“三农”(农业、农村、农民)问题与之休戚相关。在我国加入WTO的新形势下,面对农村实行村民自治的现实,乡镇行政管理中有许多问题急待解决。作为一名乡镇工作者,对此深有体会。工作的实际需要迫使自己就现代乡镇行政管理去思考、去研究。本文《现代乡镇行政管理研究》,分乡镇行政管理及其特点、当代乡镇行政管理现状、优化乡镇行政管理的原则与对策三个方面进行了阐述。乡镇行政管理作为最基层的行政管理,具有执行性、直接性和不完整性等特点。这些特点和我国实行市场经济体制的新形势,暴露了当前乡镇行政管理中存在的突出问题,主要表现在:党政不分、党委权利过分集中;人浮于事、管理方式陈旧;机构条块分割,政府职能被肢解;政府职能尚未根本转变,责任错位;财政体制不完善、乡镇财政举步维艰;人民代表大会功能柔弱,作用没有充分发挥;政府与村委会矛盾加剧,工作难以正常开展等等。这些问题存在的原因比较复杂,主要是传统体制、行政环境的影响和队伍素质、法制建设的不适应。
一、乡镇行政管理体制改革的背景
我国农业税费的全面免除于与新农村建设的逐步深入使得农村工作的内容发生了很大变化,对乡镇政府也提出了一系列新的挑战。
(一)农村税费改革
农业税费改革从2000年以安徽省为试点单位,并逐步扩大到四川、重庆、甘肃、青海、山东等16个省份。于2006年在全国范围内取消农业税。农业税费新农村建设中乡镇行政管理创新研究改革的基本目的是减轻农民负担。农业税费取消以后,乡镇政府从下乡催收税费这一项工作中得以解脱,但随之而来的是乡镇财政的短缺,乡镇债务无力偿还,农村公共设施建设资金匾乏。乡镇政府除了配合税费改革的需要进行乡镇综合配套改革之外,必须应对处理农村公共设施建设、偿还乡镇债务等一系列问题。
(二)社会主义新农村建设
当前,我国总体上已经进入到“以工促农,以城带乡”的发展阶段,初步具备了加大对农业和农村支持保护的条件和能力。同时,改革开放以来,农业生产和农村经济获得了巨大发展,农民的温饱问题已经基本解决,但农村社会事业、精神文明和民主政治建设等方面却相对滞后,这已经明显制约着农村经济社会的全面进步,制约着全面建设小康社会的进程。因此党中央在十六届五中全会上做出了建设社会主义新农村的重大战略举措。社会主义新农村建设是指在社会主义制度下,反映一定时期农村社会义经济发展为基础,以社会全面进步为标志的社会状态。新农村建设的总的目标是:生产发展、生活宽裕、乡风文明、村容整洁、
管理民主。应该说这20个字包含的内容丰富,涵义十分深刻。既要求经济发展,也要求社会发展;既要加强物质文明建设,又要加强精神文明和政治文明建设。
二、乡镇行政管理体制的现状
为了更好的探讨当前乡镇行政管理体制的弊端及改革措施,先就当前的乡镇行政管理体制的现状作一简要概述。
(一)机构设置及管理情况
乡镇一级设立的机构主要有:①党群机构:党委办公室(有的乡镇把党委办公室与政府办公室合在一起,称为党政办公室)、纪检监察室、政法委、人民武装部、团委、妇联;②政府机构:政府办公室(或党政办公室)、派出所、国家税务征收分局、地方税务征收分局、工商局、计生办、社会治安综合管理办公室;③司法机构:人民法庭、司法所(或司法助理);④下属企事业单位:计生服务站、农业服务中心、文化服务中心、国土资源管理所、财政所、粮管所、烟草站、社会事务办、安全生产监督管理站、林业站、卫生院、中学、中心校、邮电所等;⑤机构管理情况:在政府机构及政府所属企事业单位中,邮电所、工商所、国家税务征收分局、地方税务征收分局、国土资源管理所、林业站、派出所、烟草站、安全生产监督管理站属于垂直管理单位,即人事权及财权都由上级业务主管部门管理,是上级业务主管部门的派出机构。乡镇政府直接管理的有政府办、农业服务中心、计生办、计生服务站、文化服务中心、社会事务办、财政所、粮管所、卫生院、中学、中心校等单位。
不过,乡镇机构设置不是千篇一律,并非每个乡镇都建有人民法庭、国家税务征收分局、地方税务征收分局、邮电所、工商所等机构,这些单位是按片区设立,一个单位负责管理几个乡镇的相关业务工作。
(二)行政运行模式
乡镇办事处均建有相同的领导机构核内设机构,即均设有党委、人大、政府三大领导机构。同时,不管是乡镇或办事处,均设有大体相同的党群部门和政府机构及企事业单位。
作为上连县、下连村的中间政权组织,乡镇主要是按照《中华人民共和国宪法》第107条的规定:“乡、民族乡、镇的人民政府执行本级人民代表大会的决议和上级国家行政机关的决定和命令,管理本行政区域内的行政工作”。同时,对村民委员会实施指导(宪法第110条规定:“农村按居住地设立的村民委员会是基层群众性自治组织”,因此,乡镇人民政府与村的关系应为指导关系,但事实上几乎都是领导关系。)这种行政运行模式,有的专家称之为“乡政村治”体制运行模式。
三、乡镇行政管理体制存在的主要弊端及其原因
现行的乡镇行政管理体制为我国农村的发展做出了重要贡献,但是随着我国农村税费改革以及新农村建设工程的实施,我国现行乡镇行政管理也存在着许多弊端,这些弊端严重的影响了我国乡镇职能的发展,阻碍了我国新农村建设工程的实施。
(一)我国现行乡镇行政管理体制存在的主要弊端
当前我国乡镇行政管理体制存在的弊端主要是:
(1)政府职能庞杂、错位
《中华人民共和国地方各级人民代表大会和地方各级人民政府组织法》规定,乡镇人代会有l3项职权、乡镇政府有7项职权,但实际落实并非如此。一是乡镇职能泛化。政府管的事情越来越多,政治、经济、文化、社会无所不包,收税收费、招商引资、计划生育、社会治安无所不干,如同一个全能的政府。有的乡镇职能错位、政企不分,既是财产所有者代表、又是企业经营者代表和社会管理者代表,直接参与微观经营。有的在发展经济中职能越位,强制农民进行经济结构调整。有的代替农民决策去办企业、发展经济。二是乡镇机构设置重叠。机构设置的不合理,必然导致职能错位;责任分工的不合理,必然导致职能错位、越位或不到位,甚至产生违法行政行为。三是由于权责不一致,弱化了乡镇应有的职能。乡镇在职能职责方面存在的一些问题,表现在乡镇,而根源却在上级部门。有的上级部门偏离了责权一致的原则,通过行政命令和资源配置权,把一些本该属于自己抓的工作下放给了乡镇,使乡镇疲于应对若干的“一票否决制”,弱化了应有的社会管理和公共服务职能。
(2)权力与责任不对等,行政运作方式不适应发展的需要
一是存在权小责大的矛盾。乡镇政府具有的七项职能中,乡镇政府主要做的工作却大部分是“办理上级人民政府交办的其它事项”。另一方面,税务、国土机构工作地点在乡镇,财物和业务管理权则属于上级业务主管部门。而他们承担的业务工作,有相当一部分却是由乡镇政府来帮助完成的。乡镇政府承担的责任没有减小,反而更大了。被上划的站、所越来越多,乡镇管理不了,有责无权。一些部门为了自身利益出现损害农民群众利益的事,农民找政府,乡镇政府除了做点解释工作外根本无能为力。二是乡镇在对上负责与对下负责之间处于两难境地。对下,由于乡镇财政十分困难,乡镇政府该为农民办的事却无能为力。直接影响了群众对乡镇政府的信任,他们看见乡镇干部就戏称为“催粮、催款”,因而政府在群众中的威信不高。对上,上级政府每年下达给乡镇各种任务,并且实行目标考核,乡镇干部形象地称之为“上面千条线、下面一根针”,每天应付每种事务喘不过气来。三是农民生产经营自主权与行政命令式政权运作方式的矛盾难以解决。传统的行政管理方式,是以直接的、微观的、权力导向型管理为特征的。在市场经济条件下,这种传统的行政管理运行方式已暴露出很多问题,比如:忽视全面、协调、可持续发展,行政运行成本高,市场机制得不到有效发挥,一些乡镇政府不按市场经济规律办事,直接插手乡镇企业和农民的生产经营具体事务,干涉乡镇企业和农民的生产经营自主权,明显违背了经济规律、市场规律和管理原则。
(3)财政不堪重负,体制不顺为腐败的产生提供了温床
一是财政供养人员过多,财政不堪重负。个别缺编单位进人时,不是从超编单位选调,而是从下级选调或公开招考,造成缺编单位逐步满编,而超编单位继续超编的现象,财政供养人员的总量在不断增加。二是财政供养人员与财力不相匹配。三是财政体制不顺。以农业为主的乡镇,由于财政支出远远高于财政收入,这就必然使得这些乡镇的财政为短缺型财政,只得靠吃上级定额补助解决诸如发工资等一系列问题。另一方面,由于分税制,上级政府往往从自身角度出发,将自身承担的公共服务职能部分或全部转移到乡镇,如义务教育、民兵训练、计划生育等纯公共产品,同时,这些财源不多或发展经济不力的乡镇为了完成上级政府每年下达给他们的财政税收考核任务,把主要精力放在了所谓“协税”上。协税事实上就是拉税买税,造成国家税收流失的同时,为腐败的滋生蔓延提供了温床。
(4)党政不分,政事不分
党政不分,主要表现为党委一元化领导与乡镇长负责制之间的关系处理不够好。按照规定,乡镇行政工作实行的是行政首长负责制。党委对政府工作实施领导主要是把宏观、把方向,做好统揽和协调工作。但事实上,在乡镇一级,党委与政府基本上是混在一起的,几乎所有的工作任务和指标对每一个干部都同等下达、同等考核。以党代政、党政不分的现象较为普遍。这种党政一体化运作的现象与党政分开的改革目标是格格不入的。同时,在乡镇也普遍存在事业单位管理模式僵化、政事不分等问题。由于职能界定不清晰,部分事业单位严重依赖业务主管部门,业务上主管部门怎么说就怎么做,经费上有财政拨款作保障,人员也由主管部门统一安排,实际上成了主管部门的附属物,造成这些事业单位缺乏竞争意识和服务意识,并且不能独立承担民事责任和法律责任,从而使这些事业单位法人意识淡薄、责任意识淡薄。
(5)公务员政绩考核办法不完善,科学合理的选拔任用体系尚未真正形成
目前,包括乡镇干部在内的公务员选拔任用办法不科学、不完善,考核公务员的政绩还没有找到一种把个人贡献与集体贡献合理区分的办法,因此往往会出现把集体的政绩说成是个人的政绩,把别人的政绩说成是自己的政绩的现象。这种考核办法的不完善,还会加剧政企不分、政事不分,而且会促使政府单纯追求经济增长速度,搞形象工程、政绩工程。同时,提拔任用干部必须经过大会民主测评和个别谈话推荐,这本是扩大民主,落实干部、群众选择权、参与权的一项重要措施,但是,部分乡镇干部(甚至县级干部)对此却异常敏感。因此,该放手去做、去管的事不认真去做、去管了,因为做事就要触及各种利益的分配和调整,就会得罪人,就会在民主测评和个别谈话中少得一票,甚至少得若干票。所以,好人主义盛行。如此种种,都不利于公务员的合理选拔和优秀人才的脱颖而出,不利于形成行为规范、运转协调、公正透明、廉洁高效的政府,不利于科学合理地选拔任用那些政治上靠得住、工作上有本事、作风上过得硬的优秀干部。
(二)我国乡镇行政管理体制存在问题的原因
分析我国当前乡镇行政管理体制存在问题的原因,主要是:
(1)对乡镇政府职能认识不到位
由于长期以来计划经济体制下乡镇政府工作职能重心、职能方式的惯性作用,致使乡镇干部的观念意识滞后于形势发展的需要。乡镇干部对乡镇应该履行什么职能,新时期如何落实发展农村经济,提高农民生活水平和生活质量;如何提高公共管理水平缺乏明确地认识。仍然习惯于完成上面的任务,习惯于做好眼前的事,缺乏发展意识和发展规划。
(2)条块分割的管理体制,削弱了乡镇的职能体制
乡镇原有一些主要职能站所比如工商、税务、国土、电力等先后实行了垂直管理。原则上乡镇是“以块为主,条块结合”,但是由于站所的人才物全部收归县级职能部门,所以乡镇对于这些站所只能协商,不能控制和指挥。这样,乡镇在履行某些职责的时候就很困难,另外行政执法权又只能授予县级职能部门。乡镇在推动工作的方法上也受到一定的限制。
(3)经济因素制约了乡镇政府职能发挥的
税费改革以前,乡镇财政收入的70%来自农业税。免征农业税以后,乡镇财政收入大幅度减少。但是乡镇政府的事权不仅没有减少反而有所增加。乡镇既要发展农村经济,努力增加本级财政收入,还要负担公共交通、公共卫生、农村公共设施维护、农村教育、社会治安、文明创建活动、科技推广等公共事务。这些公共事务决大部份依靠乡镇财政自行解决。而且这些公共事务支出大、欠账多。这也大大制约了乡镇行政管理职能发挥。
四、乡镇行政管理体制改革的具体措施
新农村建设是党和政府做出的重大战略部署,作为我国的最基层政府—乡镇政府,既承担着贯彻落实党和国家方针政策的任务,又承担着组织、动员、规划、引导新农村建设的各种任务。当前乡镇行政管理存在问题已经制约了新农村建设,因此,进一步完善明确乡镇行政管理体制具有重要意义。
(一)完善乡镇致府的机构设置
有些人提出取消乡镇政府建制,或者强县弱乡、实行乡镇作为县市派出机构等若干建议。就目前中国农村社会的需求而言,乡镇非但不能取消,而且应该强化。在新时期,乡镇面I临的问题并非源自乡镇本身,而是来自于整个中国政治体制和行政管理体制,乡镇不过是整个中国体制矛盾中最尖锐、最集中的环节。从这个意义上来说,乡镇的弱化和取消都意味着矛盾向核心地带的靠拢。乡镇的困难决不是乡镇制度本身的困难,而是整个中国体制改革困难的集中体现。因此,乡镇改革不是取消乡镇,而是要合理定位乡镇的职能,改革乡镇的体制。目前,乡镇政府的机构设置和人员配备都很不规范。要通过立法明确乡镇机构职能、人员编制和工作程序,明确乡镇政府各项行政人事行为的程序和责任。法治化是乡镇行政管理体制改革的重要保证。在乡镇改革中,要贯彻“小政府,大服务”的方针,保留履行政治和社会服务职能的机构,压缩甚至撇开履行经济管理职能的机构。对规模过小的乡镇应视具体情况适当合并,减少数量,扩大规模。
(二)创新思路,转变观念,转变职能
在乡镇改革中要形成与社会主义市场经济相适应的思想观念。计划经济体制下创办的乡镇企业,在农村经济发展和农村财源建设中发挥了重要作用,但也造成了大量的乡镇“负累”,有的甚至变成了乡镇财政的包袱。今后,乡镇政府应该从竞争性领域解脱出来,把办企业、做贸易的任务交给社会、交给市场,充分发挥市场优势,以多业并举来促进农村产业结构的调整和均衡协调发展,切实解决好政府的“越位”问题。再比如,乡镇领导要从过去包揽一切的思维定式中解脱出来,把工作重心转移到经济发展的服务和引导上来,切实解决好政府的“缺位”问题。转变职能是乡镇行政管理体制改革的关键所在。从现在的情况看,各乡镇自身的管理职能和服务职能交叉,有许多应该推向市场、推向社会的事情,政府大包大揽,做了许多费力不讨好、事与愿违的事。乡镇政府依然承担着三夏生产、三秋生产等原来计划经济体制时期的众多职能。转变乡镇政府职能,一是由政府改革带动企业改革、教育改革、医疗卫生体制等各项改革。二是防止把转变政府职能简单化,停留在提口号或做表面文章上,而要迈出实质性步伐。三是通过转变政府职能,推进政府现代化建设,包括政府治理理念的现代化,政府治理架构现代化和政府治理方式的现代化。通过转变政府职能要达到两个目标:第一,为乡镇经济发展创造种种便利条件,如信息技术支持、财政贴息等手段,通过提供经济性公共服务支持市场主体发展,引导好资源积聚和资金投向,加快产业结构调整,大力培植财源,促进经济持续快速发展。第二,通过提供社会性公共服务,为社会成员提供社会性公共服务,为社会成员提供基本的义务教育、公共医疗与社会保障等,解决最基本的社会福利与社会公平问题,促进和谐社会的建设。加快推进行政管理体制改革,目标是建立一个公共服务型政府。今后,乡镇党委政府要适应社会主义市场经济体制需要,从行政管理型向公共服务型转变,加强政府服务,把改管的事情管好,管到位,不该管的事情下决心坚决不管,乡镇要大力培育和发展农村经济型专业服务组织和社会中介组织,把不应该由政府履行的职能交给市场,企业和市场中介组织,充分发挥社会团体、行业协会、商会和中介机构的作用。
(三)加快推进乡镇机构改革,减少财政供养人员
乡镇机构改革在我国已进行过多次,效果并不理想,现在有必要加快推进。重点是合理界定乡镇机构职
能,精简机构和减少财政供养人员。要按照减少机构、整合资源、综合设置、提高效率的要求,根据职能需要严格规范乡镇机构和岗位、人员设置,结合乡镇规模和经济实力以及经济社会转型时期的工作要求,从紧设置乡镇内设机构,从严控制乡镇领导职数和人员编制。冗员负担过重是目前乡镇普遍存在的现象,大力压缩乡镇财政供养人口、减轻财政负担已经是势在必行。各级人事部门在确定编制时,不仅要根据县、乡规模大小,也要结合各地经济发展水平,树立“有多少钱,办多少事,养多少人”的指导思想,对经济发展滞后,财政供给能力差的县、乡,可在省定编制的基础上,从低、从紧核定编制额,从源头上控制财政支出的过快增长。深化教育改革,乡镇中小学要重新核定教师编制,杜绝超编现象。属于提供非公共产品和非公共服务的单位,可以取得经营性或服务性收入的单位财政要停止供给。农技站、农机站、兽医站、林业站等服务性单位,应通过服务收费来实现自我平衡。应加快乡镇公共卫生改革步伐,减轻财政负担。
在深化和完善乡镇机构改革工作中,建议乡镇的规模应达到8-10万人,乡镇的领导职数一般可确定为5-7名,包括党委、人大、政府和武装部的领导干部,总人数应控制在20-30名(不含公安和工商税务部门等县级执法部门)。乡镇机构要精干,人员要相互交叉兼职,最大限度地发挥每个机构与人员的作用,减少人员开支。对于乡镇机构人员过多的问题,主要应该通过“扎口子”,也就是严格定编,然后通过调整、逐年退休或鼓励提前退休等方式,将问题分年化解,不能过于急躁冒进。清退乡镇机构临时人员也是乡镇改革中的一个重点和难点问题,要有决心,有措施。通过健全完善社会保障制度解决裁减人员的生活出路。改革后,要避免或严格控制机构和人员的膨胀。
(四)探索乡镇深化改革的目标
就长期目标而言,乡镇自治、实现乡镇建制的地方化和公利化,应当是乡镇改革的方向。但就近期目标而言,改革首先要解决的问题是如何建立起有效地领导和管理乡镇辖区内各项事务的有活力、有权威管理组织。乡镇政府要把工作重点转到提供公共服务和发展公益事业上来要进一步规范乡镇政府和村级组织的工作职能与事权范围,打造法治诚信、廉洁、高效的服务型政府。
新时期乡镇行政管理体制的改革,要着眼于建设社会主义新农村的进程,形成有利于转变经济增长方式、促进全面协调可持续发展的机制。这是一项政治性和政策性都很强的工作,必须从实际出发,在实践中大胆探索,大胆创新,积极稳妥地推进。
深化乡镇行政管理体制改革,必须遵循积极稳妥、循序渐进、务实管用的原则,以有利于管理、有利于提高行政效率、有利于促进经济社会的发展、有利于提高服务质量和管理水平为根本目的,并结合自身实际来进行。根据上述原则和目标,应从合理设置乡镇党政机构、合理划分乡镇行政职能、合理划分乡镇行政区划、加强乡镇机构编制管理、整合乡镇行政资源、推行领导干部“交叉任职”、引入市场机制深化乡镇站所改革、建立健全科学民主的管理决策机制、压缩乡镇财政供养人员降低行政成本等方面人手,推进乡镇行政管理体制改革。新时期乡镇行政管理体制的改革,要着眼于建设社会主义新农村的进程,形成有利于转变经济增长方式、促进全面协调可持续发展的机制。这是一项政治性和政策性都很强的工作,必须从实际出发,在实践中大胆探索,大胆创新,积极稳妥地推进。
社会主义新农村建设是一项系统工程,具有长期性和复杂性。乡镇政府既是新农村建设的组织者和引导者,又是新农建设政策的实施者,因此乡镇行政管理也是一个较长时期的工程,需要多方面的努力。相信未来的农村乡镇行政体制改革必将进一步促进实现我国新农村建设目标的实现。
如何构建安全网络环境
微型计算机和局域网的广泛应用,基于client/server体系结构的分布式系统的出现,I
SDN,宽带ISDN的兴起,ATM技术的实施,卫星通信及全球信息网的建设,根本改变了以往主机
-终端型的网络应用模式;传统的、基于Mainframe的安全系统结构已不能适用于新的网络环
境,主要原因是:
(1)微型机及LAN的引入,使得网络结构成多样化,网络拓扑复杂化;
(2)远地工作站及远地LAN对Mainframe的多种形式的访问,使得网络的地理分布扩散化
;
(3)多种通讯协议的各通讯网互连起来,使得网络通信和管理异质化。
构作Micro-LAN-Mainframe网络环境安全体系结构的目标同其它应用环境中信息安全的
目标一致,即:
(1)存储并处理于计算机和通信系统中的信息的保密性;
(2)存储并处理于计算机和通信系统中的信息的完整性;
(3)存储并处理于计算机和通信系统中的信息的可用性;
(4)对信息保密性、完整性、拒绝服务侵害的监查和控制。
对这些安全目标的实现不是绝对的,在安全系统构作中,可因地制宜,进行适合于自身条
件的安全投入,实现相应的安全机制。但有一点是应该明确的,信息安全是国民经济信息化
必不可少的一环,只有安全的信息才是财富。
对于潜在的财产损失,保险公司通常是按以下公式衡量的:
潜在的财产损失=风险因素×可能的损失
这里打一个比方,将信息系统的安全威胁比作可能的财产损失,将系统固有的脆弱程度
比作潜在的财产损失,于是有:
系统的脆弱程度=处于威胁中的系统构件×安全威胁
此公式虽不能将系统安全性定量化,但可以作为分析信息安全机制的适用性和有效性的
出发点。
对计算机犯罪的统计表明,绝大多数是内部人员所为。由于在大多数Micro-LAN-Mainf
rame系统中,用户登录信息、用户身份证件及其它数据是以明文形式传输的,任何人通过连
接到主机的微型机都可秘密地窃取上述信息。图1给出了我们在这篇文章中进行安全性分析
的网络模型,其安全性攻击点多达20个。本文以下各部分将详细讨论对此模型的安全威胁及
安全对策。
@@14219700.GIF;图1.Micro-LAN-Mainframe网络模型@@
二、开放式系统安全概述
1.OSI安全体系结构
1989年2月15日,ISO7498-2标准的颁布,确立了OSI参考模型的信息安全体系结构,它对
构建具体网络环境的信息安全构架有重要的指导意义。其核心内容包括五大类安全服务以
及提供这些服务所需要的八类安全机制。图2所示的三维安全空间解释了这一体系结构。
@@14219701.GIF;ISO安全体系结构@@
其中,一种安全服务可以通过某种安全机制单独提供,也可以通过多种安全机制联合提
供;一种安全机制可用于提供一种或多种安全服务。
2.美军的国防信息系统安全计划DISSP
DISSP是美军迄今为止最庞大的信息系统安全计划。它将为美国防部所有的网络(话音
、数据、图形和视频图象、战略和战术)提供一个统一的、完全综合的多级安全策略和结构
,并负责管理该策略和结构的实现。图3所示的DISSP安全框架三维模型,全面描述了信息系
统的安全需求和结构。第一维由九类主要的安全特性外加两类操作特性组成,第二维是系统
组成部件,它涉及与安全需求有关的信息系统部件,并提供一种把安全特性映射到系统部件
的简化手段;第三维是OSI协议层外加扩展的两层,OSI模型是面向通信的,增加两层是为了适
应信息处理。
@@14219702.GIF;DISSP安全框架雏形@@
3.通信系统的安全策略
1节和2节较全面地描述了信息系统的安全需求和结构,具有相当的操作指导意义。但仅
有这些,对于构作一个应用于某组织的、具体的网络应用环境的安全框架或安全系统还是不
够的。
目前,计算机厂商在开发适用于企业范围信息安全的有效策略方面并没有走在前面,这
就意味着用户必须利用现有的控制技术开发并维护一个具有足够安全级别的分布式安全系
统。一个安全系统的构作涉及的因素很多,是一个庞大的系统工程。一个明晰的安全策略必
不可少,它的指导原则如下:
·对安全暴露点实施访问控制;
·保证非法操作对网络的数据完整性和可用性无法侵害;
·提供适当等级的、对传送数据的身份鉴别和完整性维护;
·确保硬件和线路的联接点的物理安全;
·对网络设备实施访问控制;
·控制对网络的配置;
·保持对网络设施的控制权;
·提供有准备的业务恢复。
一个通信系统的安全策略应主要包括以下几个方面的内容:
总纲;
适用领域界定;
安全威胁分析;
企业敏感信息界定;
安全管理、责任落实、职责分明;
安全控制基线;
网络操作系统;
信息安全:包括用户身份识别和认证、文件服务器控制、审计跟踪和安全侵害报告、数
据完整性及计算机病毒;
网络安全:包括通信控制、系统状态控制、拨号呼叫访问控制;
灾难恢复。
三、LAN安全
1.LAN安全威胁
1)LAN环境因素造成的安全威胁
LAN环境因素,主要是指LAN用户缺乏安全操作常识;LAN提供商的安全允诺不能全部兑现
。
2)LAN自身成员面临的安全威胁
LAN的每一组成部件都需要保护,包括服务器、工作站、工作站与LAN的联接部件、LAN
与LAN及外部世界的联接部件、线路及线路接续区等。
3)LAN运行时面临的安全威胁
(1)通信线路上的电磁信号辐射
(2)对通信介质的攻击,包括被动方式攻击(搭线窃听)和主动方式攻击(无线电仿冒)
(3)通过联接上网一个未经授权的工作站而进行的网络攻击。攻击的方式可能有:窃听
网上登录信息和数据;监视LAN上流量及与远程主机的会话,截获合法用户log off指令,继续
与主机会话;冒充一个主机LOC ON,从而窃取其他用户的ID和口令。
(4)在合法工作站上进行非法使用,如窃取其他用户的ID、口令或数据
(5)LAN与其他网络联接时,即使各成员网原能安全运行,联网之后,也可能发生互相侵害
的后果。
(6)网络病毒
4)工作站引发的安全威胁
(1)TSR和通信软件的滥用:在分布式应用中,用户一般在本地微机及主机拥有自己的数
据。将微机作为工作站,LAN或主机系统继承了其不安全性。TSR是用户事先加载,由规定事
件激活的程序。一个截获屏幕的TSR可用于窃取主机上的用户信息。这样的TSR还有许多。
某些通信软件将用户键入字符序列存为一个宏,以利于实现对主机的自动LOGON,这也是很危
险的。
(2)LAN诊断工具的滥用:LAN诊断工具本用于排除LAN故障,通过分析网上数据包来确定
线路噪声。由于LAN不对通信链路加密,故LAN诊断工具可用于窃取用户登录信息。
(3)病毒与微机通信:例如Jerusalem-B病毒可使一个由几千台运行3270仿真程序的微机
组成的网络瘫痪。
2 LAN安全措施
1)通信安全措施
(1)对抗电磁信号侦听:电缆加屏蔽层或用金属管道,使较常规电缆难以搭线窃听;使用
光纤消除电磁辐射;对敏感区域(如电话室、PBX所在地、服务器所在地)进行物理保护。
(2)对抗非法工作站的接入:最有效的方法是使用工作站ID,工作站网卡中存有标识自身
的唯一ID号,LAN操作系统在用户登录时能自动识别并进行认证。
(3)对抗对合法工作站的非法访问:主要通过访问控制机制,这种机制可以逻辑实现或物
理实现。
(4)对通信数据进行加密,包括链路加密和端端加密。
2)LAN安全管理
(1)一般控制原则,如对服务器访问只能通过控制台;工作站间不得自行联接;同一时刻
,一个用户只能登录一台工作站;禁止使用网上流量监视器;工作站自动挂起;会话清除;键盘
封锁;交易跟踪等。
(2)访问控制,如文件应受保护,文件应有多级访问权力;SERVER要求用户识别及认证等
。
(3)口令控制,规定最大长度和最小长度;字符多样化;建立及维护一个软字库,鉴别弱口
令字;经常更换口令等。
(4)数据加密:敏感信息应加密
(5)审计日志:应记录不成功的LOGIN企图,未授权的访问或操作企图,网络挂起,脱离联
接及其他规定的动作。应具备自动审计日志检查功能。审计文件应加密等。
(6)磁盘利用:公用目录应只读,并限制访问。
(7)数据备份:是LAN可用性的保证;
(8)物理安全:如限制通信访问的用户、数据、传输类型、日期和时间;通信线路上的数
据加密等。
四、PC工作站的安全
这里,以荷兰NMB银行的PC安全工作站为例,予以说明。在该系统中,PC机作为IBM SNA主
机系统的工作站。
1.PC机的安全局限
(1)用户易于携带、易于访问、易于更改其设置。
(2)MS-DOS或PC-DOS无访问控制功能
(3)硬件易受侵害;软件也易于携带、拷贝、注入、运行及损害。
2.PC安全工作站的目标
(1)保护硬件以对抗未授权的访问、非法篡改、破坏和窃取;
(2)保护软件和数据以对抗:未授权的访问、非法篡改、破坏和窃取、病毒侵害;
(3)网络通信和主机软硬件也应类似地予以保护;
3.安全型PC工作站的设计
(1)PC硬件的物理安全:一个的可行的方法是限制对PC的物理访问。在PC机的后面加一
个盒子,只有打开这个盒子才能建立所需要的联接。
(2)软件安全:Eracon PC加密卡提供透明的磁盘访问;此卡提供了4K字节的CMOS存储用
于存储密钥资料和进行密钥管理。其中一半的存储区对PC总线是只可写的,只有通过卡上数
据加密处理的密钥输入口才可读出。此卡同时提供了两个通信信道,其中一个支持同步通信
。具体的安全设计细节还有:
A、使用Clipcards提供的访问权授予和KEY存储(为脱机应用而设)、Clipcards读写器
接于加密卡的异步口。
B、对硬盘上全部数据加密,对不同性质的文件区分使用密钥。
C、用户LOGON时,强制进入与主机的安全监控器对话,以对该用户进行身份验证和权力
赋予;磁盘工作密钥从主机传送过来或从Clipcards上读取(OFFLINE);此LOGON外壳控制应用
环境和密钥交换。
D、SNA3270仿真器:利用Eracon加密卡实现与VTAM加解密设备功能一致的对数据帧的加
密。
E、主机安全监控器(SECCON):如果可能,将通过3270仿真器实现与PC安全监控程序的不
间断的会话;监控器之间的一套消息协议用于完成对系统的维护。
五、分布式工作站的安全
分布式系统的工作站较一般意义上的网络工作站功能更加全面,它不仅可以通过与网上
服务器及其他分布式工作站的通信以实现信息共享,而且其自身往往具备较强的数据存储和
处理能力。基于Client/Server体系结构的分布式系统的安全有其特殊性,表现如下:
(1)较主机系统而言,跨局域网和广域网,联接区域不断扩展的工作站环境更易受到侵害
;
(2)由于工作站是分布式的;往往分布于不同建筑、不同地区、甚至不同国家,使安全管
理变得更加复杂;
(3)工作站也是计算机犯罪的有力工具,由于它分布广泛,安全威胁无处不在;
(4)工作站环境往往与Internet及其他半公开的数据网互联,因而易受到更广泛的网络
攻击。
可见,分布式工作站环境的安全依赖于工作站和与之相联的网络的安全。它的安全系统
应不劣于主机系统,即包括用户的身份识别和认证;适当的访问控制;强健的审计机制等。除
此之外,分布式工作站环境还有其自身的特殊安全问题,如对网络服务器的认证,确保通信中
数据的保密性和完整性等。这些问题将在后面讨论。
六、通信中的信息安全
通过以上几部分的讨论,我们已将图1所示的网络组件(包括LAN、网络工作站、分布式
工作站、主机系统)逐一进行了剖析。下面,我们将就它们之间的联接安全进行讨论。
1.加密技术
结合OSI七层协议模型,不难理解加密机制是怎样用于网络的不同层次的。
(1)链路加密:作用于OSI数据模型的数据链路层,信息在每一条物理链路上进行加密和
解密。它的优点是独立于提供商,能保护网上控制信息;缺点是浪费设备,降低传输效率。
(2)端端加密:作用于OSI数据模型的第4到7层。其优点是花费少,效率高;缺点是依赖于
网络协议,安全性不是很高。
(3)应用加密:作用于OSI数据模型的第7层,独立于网络协议;其致命缺点是加密算法和
密钥驻留于应用层,易于失密。
2.拨号呼叫访问的安全
拨号呼叫安全设备主要有两类,open-ended设备和two-ended设备,前者只需要一台设备
,后者要求在线路两端各加一台。
(1)open-ended设备:主要有两类,端口保护设备(PPDs)和安全调制解调器。PPDs是处于
主机端口和拨号线路之间的前端通信处理器。其目的是隐去主机的身份,在将用户请求送至
主机自身的访问控制机制前,对该用户进行预认证。一些PPDs具有回叫功能,大部分PPDs提
供某种形式的攻击示警。安全调制解调器主要是回叫型的,大多数有内嵌口令,用户呼叫调
制解调器并且输入口令,调制解调器验证口令并拆线。调制解调器根据用户口令查到相应电
话号码,然后按此号码回叫用户。
(2)two-ended设备:包括口令令牌、终端认证设备、链路加密设备和消息认证设备。口
令令牌日益受到大家欢迎,因为它在认证线路另一端的用户时不需考虑用户的位置及网络的
联接类型。它比安全调制解调器更加安全,因为它允许用户移动,并且禁止前向呼叫。
口令令牌由两部分组成,运行于主机上与主机操作系统和大多数常用访问控制软件包接
口的软件,及类似于一个接卡箱运算器的硬件设备。此软件和硬件实现相同的密码算法。当
一个用户登录时,主机产生一个随机数给用户,用户将该随机数加密后将结果返回给主机;与
此同时,运行于主机上的软件也作同样的加密运算。主机将这两个结果进行对比,如果一致
,则准予登录。
终端认证设备是指将各个终端唯一编码,以利于主机识别的软件及硬件系统。只有带有
正确的网络接口卡(NIC)标识符的设备才允许登录。
链路加密设备提供用于指导线路的最高程度的安全保障。此类系统中,加密盒置于线路
的两端,这样可确保传送数据的可信性和完整性。唯一的加密密钥可用于终端认证。
消息认证设备用于保证传送消息的完整性。它们通常用于EFT等更加注重消息不被更改
的应用领域。一般采用基于DES的加密算法产生MAC码。
七、安全通信的控制
在第六部分中,我们就通信中采取的具体安全技术进行了较为详细的讨论。但很少涉及
安全通信的控制问题,如网络监控、安全审计、灾难恢复、密钥管理等。这里,我们将详细
讨论Micro-LAN-Mainframe网络环境中的用户身份认证、服务器认证及密钥管理技术。这三
个方面是紧密结合在一起的。
1.基于Smartcards的用户认证技术
用户身份认证是网络安全的一个重要方面,传统的基于口令的用户认证是十分脆弱的。
Smartcards是一类一话一密的认证工具,它的实现基于令牌技术。其基本思想是拥有两个一
致的、基于时间的加密算法,且这两个加密算法是同步的。当用户登录时,Smartcards和远
端系统同时对用户键入的某一个系统提示的数进行运算(这个数时刻变化),如果两边运行结
果相同,则证明用户是合法的。
在这一基本的Smartcards之上,还有一些变种,其实现原理是类似的。
2.kerboros用户认证及保密通信方案
对于分布式系统而言,使用Smartcards,就需要为每一个远地系统准备一个Smartcard,
这是十分繁琐的,MIT设计与开发的kerboros用户认证及保密通信方案实现了对用户的透明
,和对用户正在访问的网络类型的免疫。它同时还可用于节点间的保密通信及数据完整性的
校验。kerboros的核心是可信赖的第三方,即认证服务中心,它拥有每一个网络用户的数据
加密密钥,需要用户认证的网络服务经服务中心注册,且每一个此类服务持有与服务中心通
信的密钥。
对一个用户的认证分两步进行,第一步,kerboros认证工作站上的某用户;第二步,当该
用户要访问远地系统服务器时,kerboros起一个中介人的作用。
当用户首次登录时,工作站向服务器发一个请求,使用的密钥依据用户口令产生。服务
中心在验明用户身份后,产生一个ticket,所使用的密钥只适合于该ticket-granting服务。
此ticket包含用户名、用户IP地址、ticket-granting服务、当前时间、一个随机产生的密
钥等;服务中心然后将此ticket、会话密钥用用户密钥加密后传送给用户;用户将ticket解
密后,取出会话密钥。当用户想联接某网络服务器时,它首先向服务中心发一个请求,该请求
由两部分组成,用户先前收到的ticket和用户的身份、IP地址、联接服务器名及一个时间值
,此信息用第一次传回的会话密钥加密。服务中心对ticket解密后,使用其中的会话密钥对
用户请求信息解密。然后,服务中心向该用户提供一个可与它相联接的服务器通信的会话密
钥及一个ticket,该ticket用于与服务器通信。
kerboros方案基于私钥体制,认证服务中心可能成为网络瓶颈,同时认证过程及密钥管
理都十分复杂。
3.基于公钥体制的用户认证及保密通信方案
在ISO11568银行业密钥管理国际标准中,提出了一种基于公钥体制,依托密钥管理中心
而实现的密钥管理方案。该方案中,通信双方的会话密钥的传递由密钥管理中心完成,通信
双方的身份由中心予以公证。这样就造成了密钥管理中心的超负荷运转,使之成为网上瓶颈
,同时也有利于攻击者利用流量分析确定网络所在地。
一个改进的方案是基于公钥体制,依托密钥认证中心而实现的密钥管理方案。该方案中
,通信双方会话密钥的形成由双方通过交换密钥资料而自动完成,无须中心起中介作用,这样
就减轻了中心的负担,提高了效率。由于篇幅所限,这里不再展开讨论。
八、结论
计算机网络技术的迅速发展要求相应的网络安全保障,一个信息系统安全体系结构的确
立有助于安全型信息系统的建设,一个具体的安全系统的建设是一项系统工程,一个明晰的
安全策略对于安全系统的建设至关重要,Micro-LAN-Mainframe网络环境的信息安全是相对
的,但其丰富的安全技术内涵是值得我们学习和借鉴的。
如何构建高可用的分布式系统
开源软件已经成为许多大型网站的基本组成部分,随着这些网站的逐步壮大,他们的网站架构和一些指导原则也出现在开发者们的面前,给予切实有用的指导和帮助。本文旨在介绍一些核心问题以及通过构建模块来制作大型网站,实现最终目标。这篇文章主要侧重于Web系统,并且也适用于其他分布式系统。 Web分布式系统设计的原则构建并运营一个可伸缩的Web站点或应用程序到底指的是什么?在最初,仅是通过互联网连接用户和访问远程资源。和大多数事情一样,当构建一个Web服务时,需要提前抽出时间进行规划。了解大型网站创建背后的注意事项以及权衡可能会给你带来更加明智的决策,当你在创建小网站时。下面是设计大型Web系统时,需要注意的一些核心原则: 1.可用性 2.性能 3.可靠性 4.可扩展 5.易管理 6.成本上面的这些原则给设计分布式Web架构提供了一定的基础和理论指导。然而,它们也可能彼此相左,例如实现这个目标的代价是牺牲成本。一个简单的例子:选择地址容量,仅通过添加更多的服务器(可伸缩性),这个可能以易管理(你不得不操作额外的服务器)和成本作为代价(服务器价格)。无论你想设计哪种类型的Web应用程序,这些原则都是非常重要的,甚至这些原则之间也会互相羁绊,做好它们之间的权衡也非常重要。基础当涉及到系统架构问题时,这几件事情是必须要考虑清楚的:什么样的模块比较合适?如何把它们组合在一起?如何进行恰当地权衡?在扩大投资之前,它通常需要的并不是一个精明的商业命题,然而,一些深谋远虑的设计可以帮你在未来节省大量的时间和资源。讨论的重点几乎是构建所有大型Web应用程序的核心:服务、冗余、分区和故障处理能力。这里的每个因素都会涉及到选择和妥协,特别是前面所讨论的那些原则。解释这些核心的最佳办法就是举例子。图片托管应用程序有时,你会在线上传图片,而一些大型网站需要托管和传送大量的图片,这对于构建一个具有成本效益、高可用性并具有低延时(快速检索)的架构是一项挑战。在一个图片系统中,用户可以上传图片到一个中央服务器里,通过网络连接或API对这些图片进行请求,就像Flickr或者Picasa。简单点,我们就假设这个应用程序只包含两个核心部分:上传(写)图片和检索图片。图片上传时最好能够做到高效,传输速度也是我们最关心的,当有人向图片发出请求时(例如是一个Web页面或其他应用程序)。这是非常相似的功能,提供Web服务或内容分发网络(一个CDN服务器可以在许多地方存储内容,所以无论是在地理上还是物理上都更加接近用户,从而导致更快的性能)边缘服务器。该系统需要考虑的其他重要方面: 1.图片存储的数量是没有限制的,所以存储应具备可伸缩,另外图片计算也需要考虑 2.下载/请求需要做到低延迟 3.用户上传一张图片,那么图片就应该始终在那里(图片数据的可靠性) 4.系统应该易于维护(易管理) 5.由于图片托管不会有太高的利润空间,所以系统需要具备成本效益图1是个简化的功能图图1图片托管系统的简化结构图在这个例子中,系统必须具备快速、数据存储必须做到可靠和高度可扩展。构建一个小型的应用程序就微不足道了,一台服务器即可实现托管。如果这样,这篇文章就毫无兴趣和吸引力了。假设我们要做的应用程序会逐渐成长成Flickr那么大。服务当我们考虑构建可伸缩的系统时,它应有助于解耦功能,系统的每个部分都可以作为自己的服务并且拥有清晰的接口定义。在实践中,这种系统设计被称作面向服务的体系结构(SOA)。对于此类系统,每个服务都有它自己的独特功能,通过一个抽象接口可以与外面的任何内容进行互动,通常是面向公众的另一个服务 API。把系统分解成一组互补性的服务,在互相解耦这些操作块。这种抽象有助于在服务、基本环境和消费者服务之间建立非常清晰的关系。这种分解可以有效地隔离问题,每个块也可以互相伸缩。这种面向服务的系统设计与面向对象设计非常相似。在我们的例子中,所有上传和检索请求都在同一台服务器上处理。然而,因为系统需要具备可伸缩性,所以把这两个功能打破并集成到自己的服务中是有意义的。快进并假设服务正在大量使用;在这种情况下,很容易看到写图片的时间对读图片时间有多大影响(他们两个功能在彼此竞争共享资源)。根据各自体系,这种影响会是巨大的。即使上传和下载速度相同(这是不可能的,对于大多数的IP网络来说,下载速度:上传速度至少是3:1),通常,文件可以从缓存中读取,而写入,最终是写到磁盘中(也许在最终一致的情况下,可以被多写几次)。即使是从缓存或者磁盘(类似SSD)中读取,数据写入都会比读慢(Pole Position,一个开源DB基准的开源工具和结果)。这种设计的另一个潜在问题是像Apache或者Lighttpd这些Web服务器通常都会有一个并发连接数上限(默认是500,但也可以更多),这可能会花费高流量,写可能会迅速消掉所有。既然读可以异步或利用其他性能优化,比如gzip压缩或分块传输代码,Web服务可以快速切换读取和客户端来服务于更多的请求,超过每秒的最大连接数(Apache的最大连接数设置为500,这种情况并不常见,每秒可以服务几千个读取请求)。另一方面,写通常倾向于保持一个开放的链接进行持续上传,所以,使用家庭网络上传一个1 MB的文件花费的时间可能会超过1秒,所以,这样的服务器只能同时满足500个写请求。图2:读取分离规划这种瓶颈的一个非常好的做法是把读和写进行分离,如图2所示。这样我们就可以对它们单独进行扩展(一直以来读都比写多)但也有助于弄明白每个点的意思。这种分离更易于排除故障和解决规模方面问题,如慢读。这种方法的优点就是我们能够彼此独立解决问题——在同种情况下,无需写入和检索操作。这两种服务仍然利用全球语料库的图像,但是他们可以自由地优化性能和服务方法(例如排队请求或者缓存流行图片——下面会介绍更多)。从维护和成本角度来看,每一个服务都可以根据需要独立进行扩展,但如果把它们进行合并或交织在一起,那么有可能无意中就会对另一个性能产生影响,如上面讨论的情景。当然,如果你有两个不同的端点,上面的例子可能会运行的很好(事实上,这非常类似于几个云存储供应商之间的实现和内容分发网络)。虽然有很多种方法可以解决这些瓶颈,但每个人都会有不同的权衡,所以采用适合你的方法才是最重要的。例如,Flickr解决这个读/写问题是通过分发用户跨越不同的碎片,每个碎片只能处理一组用户,但是随着用户数的增加,更多的碎片也会相应的添加到群集里(请参阅Flickr的扩展介绍)。在第一个例子中,它更容易基于硬件的实际用量进行扩展(在整个系统中的读/写数量),而Flickr是基于其用户群进行扩展(but forces the assumption of equal usage across users so there can be extra capacity)。而前面的那个例子,任何一个中断或者问题都会降低整个系统功能(例如任何人都没办法执行写操作),而Flickr的一个中断只会影响到其所在碎片的用户数。在第一个例子中,它更容易通过整个数据集进行操作——例如,更新写服务,包括新的元数据或者通过所有的图片元数据进行搜索——而 Flickr架构的每个碎片都需要被更新或搜索(或者需要创建一个搜索服务来收集元数据——事实上,他们就是这样做的)。当谈到这些系统时,其实并没有非常正确的答案,但有助于我们回到文章开始处的原则上看问题。确定系统需求(大量的读或写或者两个都进行、级别并发、跨数据查询、范围、种类等等),选择不同的基准、理解系统是如何出错的并且对以后的故障发生情况做些扎实的计划。冗余为了可以正确处理错误,一个Web架构的服务和数据必须具备适当的冗余。例如,如果只有一个副本文件存储在这台单独的服务器上,那么如果这台服务器出现问题或丢失,那么该文件也随即一起丢失。丢失数据并不是什么好事情,避免数据丢失的常用方法就是多创建几个文件或副本或冗余。同样也适用于服务器。如果一个应用程序有个核心功能,应确保有多个副本或版本在同时运行,这样可以避免单节点失败。在系统中创建冗余,当系统发生危机时,如果需要,可以消除单点故障并提供备份或备用功能。例如,这里有两个相同的服务示例在生产环境中运行,如果其中一个发生故障或者降低,那么该系统容错转移至那个健康的副本上。容错转移可以自动发生也可以手动干预。服务冗余的另一重要组成部分是创建一个无共享架构。在这种体系结构中,每个节点都能相互独立运行,并且没有所谓的中央大脑管理状态或协调活动其他节点。这对系统的可扩展帮助很大,因为新节点在没有特殊要求或知识的前提下被添加。然而,最重要的是,这些系统是没有单点故障的,所以失败的弹性就更大。例如在我们的图片服务器应用程序中,所有的图片在另一个硬件上都有冗余副本(理想情况下是在不同的地理位置,避免在数据中心发生一些火灾、地震等自然事故),服务去访问图片将被冗余,所有潜在的服务请求。(参见图3:采用负载均衡是实现这点的最好方法,在下面还会介绍更多方法)图3图片托管应用程序冗余分区数据集有可能非常大,无法安装在一台服务器上。也有可能这样,某操作需要太多的计算资源、性能降低并且有必要增加容量。在这两种情况下,你有两种选择:纵向扩展或横向扩展。纵向扩展意味着在单个服务器上添加更多的资源。所以,对于一个非常大的数据集来说,这可能意味着添加更多(或更大)的硬件设备,来使一台服务器能容下整个数据集。在计算操作下,这可能意味着移动计算到一个更大的服务器上,拥有更快的CPU或更大的内存。在各种情况下,纵向扩展可以通过提升单个资源的处理能力来完成。横向扩展在另一方面是添加更多的节点,在大数据集下,这可能会使用第二服务器来存储部分数据集,对于计算资源来说,这意味着分割操作或跨节点加载。为了充分利用横向扩展,它应作为一种内在的系统架构设计原则,否则修改或拆分操作将会非常麻烦。当谈到横向扩展时,最常见的做法是把服务进行分区或碎片。分区可以被派发,这样每个逻辑组的功能就是独立的。可以通过地理界限或其他标准,如非付费与付费用户来完成分区。这些方案的优点是他们会随着容量的增加提供一个服务或数据存储。在我们的图片服务器案例中,用来存储图片的单个文件服务器可能被多个文件服务器取代,每个里面都会包含一套自己独特的图像。(见图4)这种架构将允许系统来填充每一个文件/图片服务器,当磁盘填满时会添加额外的服务器。这样的设计需要一个命名方案,用来捆绑图片文件名到其相应的服务器上。图像名字可以形成一个一致的哈希方案并映射到整个服务器上;或者给每张图片分配一个增量ID,当客户端对图片发出请求时,图片检索服务只需要检索映射到每个服务器上(例如索引)的ID。图4图片托管应用程序冗余和分区当然,跨越多个服务器对数据或功能进行分区还是有许多挑战的。其中的关键问题是数据本地化。在分布式系统中,数据操作或计算点越接近,系统性能就会越好。因此,它也可能是个潜在问题,当数据分散在多个服务器上时。有时数据不是在本地,那么就要迫使服务器通过网络来获取所需的信息,这个获取的过程就会设计到成本。另一潜在问题是不一致。当这里有多个服务对一个共享资源执行读写操作时,潜在可能会有另一个服务器或数据存储参与进来,作为竞选条件——一些数据需要更新,但是读的优先级高于更新——在这种情况下,数据就是不一致的。例如在图片托管方案中,有可能出现的不一致是:如果一个客户端发送更新狗图片请求,进行重新命名,把Dog改成Gizmo,但同时,另一个客户端正在读这张图片。在这种情况下,标题就是不清楚的。Dog或Gizmo应该被第二个客户端接收。当然,在进行数据分区时会产生一些障碍,但是分区允许把每个问题拆分到管理群里——通过数据、负载、使用模式等。这样对可扩展和易管理都是有帮助的,但也不是没有风险的。这里有很多方式来降低风险和故障处理;然而,为了简便起见,并未在本文中详细说明,如果你有兴趣,可以访问我的博客。总结以上介绍的都是设计分布式系统需要考虑的核心要素。可用性、性能、可靠性、可扩展、易管理、成本这几个原则非常重要,但在实际应用中可能会以牺牲某个原则来实现另外一个原则,在这个过程中就要做好权衡工作,做到因时制宜。在下面的构建分布式系统实战中,我们将会深入介绍如何设计可扩展的数据访问,包括负载均衡、代理、全局缓存、分布式缓存等。英文地址:Dr.Dobb's文:CSDN











