人民网北京6月19日电 今日上午9时,为纪念胡锦涛主席考察人民日报社、做客人民网强国论坛一周年,人民网“加强新兴媒体建设,形成舆论引导新格局”网络媒体论坛在北京隆重举行,下午13时,召开了互联网技术发展趋势分论坛。太极公司的本部系统集成事业部总经理张志刚在论坛发言中说:“网站建设的技术问题很多,是一个复杂的工程。如何入手呢?就是抓住点,梳理线和力求面。太极的品牌体现在四个方面,第一个就是以互动共赢为基础,以完全一体化的技术为支撑,同时提供专业团队先进方法论以及技术的创新,提供一个值得信赖的IT服务国家队,提供给我们的用户高品质的服务。”
以下是张志刚发言内容:
大家下午好,因为我的工作是以集成为主,我想以集成这边取得的信息技术平台为主题进行交流。大家可以看一下这张片子,是网民的第一感受,我们作为技术工作人员而言,每天我们都是在机房里面辛苦的操作计算机,做一些设备的尝试,非常的辛苦。我们辛苦的目标是什么,我们辛苦的目标就是满足我们自己的服务对象——网民的感受。他的第一感受是什么?就是要快速响应,同时能提供一个丰富的网站内容。我们从这个简单的片上可以感受到技术工作会很辛苦,很辛苦的原因所在是我们所服务的对象是需要得到一个快速的需求。
我的提纲是分这几个方面,第一个是关于网站的技术特点分析,第二是关于技术平台的关键对象,第三是关于网站技术平台的设计需求,第四是网站设计的思路,第五是关于网站的平台设计方案,然后做一个小结。
在讲到设计方案的时候,按照我们一般的常规经验,我们根据用户的需求是出方案就可以了,但是从我实际的工作感受来讲的话,一个设计方案的提出和最终满足的需求,他必须要有一个保障,我觉得这个保障是必须有一个很好的组织团队。一个好的设计方案并不是一个人能够简单的根据自己的实际经验提出来的。必须有一个好的组织团队,才能保证提出一个适合整体的网站架构的技术方案。
互联网的技术特点分析
首先我们来简单看一下互联网技术的特点,我们模拟一下,现在要提出一个设计方案,从我实际的工作角度讲,作为一个项目经理、一个项目团队的领导者,会安排我们的设计者、工程师出方案,根据用户提出的需求,简单的出一个方案就可以了。但是从我们实际的工作经验上来讲的话,一个好的方案的出台其实还需要组织一个好的设计班子。比如我们要出一个方案时,作为项目经理首先就应该组织一个好的班子,这个好的班子应该怎么选择呢?首先你得知道这个班子的成员对这个技术的理解,对班子的成员一定要有技术上的分析。在我们的项目过程当中,一般作为项目经理会让我们的厂商或者让我们的相关技术成员出方案,但是实际上他没有观察到一点,就是这个人适不适合出这个方案?一般来说我们让他出方案就可以了,但是他能不能完成这个工作,首先我们要做一个选择。
我们首先要选择这个班子的成员是不是对我们出现在这个方案所对应的技术有相应的了解。从我们现在互联网站技术平台这个角度来讲的话,选择设计这个人的时候,首先他对网站的相关协议要有一个了解。基于这个网站来说,我们基本上是通过Http的协议和HTML来做核心元素的。作为Http的核心是有一个Web客户端和Web服务器。是一个什么特点呢?是一个无状态的协议。就是说这个协议本身是他的起源不是记录每一个历史信息的,他是一个状态,同时他要求有一个快速的响应。他是依赖于TCP协议的,同时在本地作为客户端和服务器都要实现CT协议和TCP之间的连接。这个响应时间从一定的角度来分析的话,响应时间我们称之为往返时间,叫做RTT,是一个评估网站很关键的因素。
另外在客户端访问网站的过程当中,我们还要考虑到DNS相关的查询访问速度,对整个网站的访问速度的影响。
从流量的角度我们可以分析一下,就是说我们网站的整个访问模式是一种客户/服务器的模式,基于客户的请求给出一个响应。他的流量是不对称的,是有层级的。集中的是从客户端请求完服务器以后,大概是从服务器响应到客户端的。服务器到客户端的流量是一个主要流量,作为一个服务器他就是一个数字源。他有一个很大的特点,就是大并发,大并发提出了对流量的响应能力,能量的汇聚点是服务器这边。我们要思考的是流量方向汇聚点的方向在哪,提供一个可靠的速度。
从数据源和数据速度角度分析的话我们可以看到,刚才提高的他的数据源主要是服务器,数据的速度主要是客户端,客户端进行响应。所以我们要考虑设计过程当中的分级和分层,同时对数据源进行设计。
刚才我们对网站的技术特点进行了一个简单的回顾,目的是什么呢,就是我们在选择我们整个设计团队的成员的时候,必须让这个团队基于IT特点有一个共识,在这个共识的基础上我们进行相关的方案设计。组建这个团队方案设计的过程当中我们需要考虑哪几个方面的问题呢?第一是考虑网站的架构设计,不仅数据库设计和安全体系的设计,另外考虑存储的设计等。一般而言,在我们组建这个团队设计方案的时候,我们的设计人一般会形成一个思维模式,就是先拿设备然后组建一个网络,但实际上网络架构本身的合理性其实是非常关键的因素。就是说我们在设计网络的时候,不仅是要考虑把这个网络打通,而且要解决承载适合业务需求的构架。
因为网络架构是网络技术和设备使用的一些基础,他反映了其他数据对象的交互权和分析。我们的工程师的习惯就是先搞网站,但是实际上当业务发展的时候,这种结构不是最好的。设计我们平台的时候,首先应该把我们的架构支撑的相对合理。这个架构是我们的网络技术和设备使用的一个基础,同时是其他的设计对象,比如我们说的安全、高效地数据建设等,是这些其他设计对象的交互、权衡。另外一点就是考虑负载均衡技术的设计,他的目标是业务访问数据请求负载的分担和业务响应数据流的分流。第一个是对业务访问数据请求进行压力分担,第二个是实现访问数据流的分流。第三就是关于数据库设计,数据库设计我们要关注他的目标是什么?就是安全、高效地存取关键数据记录。
安全体系设计当中,我们的目标是什么呢?要考虑与网络架构关联设计,他依赖于网络架构的合理性,并解决分级后的安全保护技术和性能、管理的权衡。就是说作为安全系统设计的相关工程师,他首先一定要对网络有所了解,要和网络设计搭配着一起来进行,同时考虑分级后的性能、管理的权衡,因为我们的性能是有一个矛盾的,我们要考虑他的权衡。
另外存储系统设计的目标是设计一个统一的数据源存储的方式,并给予存储网络和数据生命周期进行开发和管理。多级缓存设计的目标是基于数据源分层和分级的思路,缓解访问压力,并实现分层的客户/服务器的模式。就是我们把多级缓存设计作为我们网络设计平台的基础,刚才在分析当中提到了,就是我们怎么缓解压力,我们要知道我们系统分析当中的焦点和问题在哪,多级缓存设计应该充分的考虑。
刚才我们从网站的关注对象,就是说我们组建一个团队,要设计一个方案,我们提交这个方案的时候,核心要讨论的几个关键技术问题是什么。首先我们要依照这几个关键问题考虑问题。
我们有了一个相关的设计对象以后,我们对这个设计对象的需求,从哪几个角度考虑,我想从网络主机数据库以及安全和存储几个方面做说明。对于网络需求而言,我们要考虑网站的出口级及关键互联链路的容量,另外要考虑并发连接数和高峰期的压力承载。
对于主机而言我们要关注多主机的开发承载合力,以及主机集群以及存储的连接链路效率。
对于数据库需求来说的话,我们要关注基于开发需求,以及结合业务访问特点的数据库设计。就是说数据库相关的设计人员,他不能够简单的懂数据库就可以了,要对业务系统开发有一个了解,就是说开发人员和数据库的人员进行结合。同时结合业务的访问特点进行数据库的设计,而不是单一的完成一个数据库的设计过程。
另外需求设计要关注什么呢?要关注分区域安全等级和区域边界的安全防护,同时安全服务和安全管理策略的结合。也就是说安全不是作为一项建设就完成了,他还要考虑一个长远的安全服务的管理策略的结合问题。
存储需求要关注什么?要关注统一存储网络的设计和管理,另外要考虑存储的分级和数据分等级的保护问题。
网站技术平台设计围绕那几个思路考虑?
下面我们来看一下网站的技术平台设计的思路。我们设计人员要围绕哪几个思路考虑我们整体方案的设计?首先应该考虑自顶向下的设计思路,另外要考虑运用系统方法,同时要考虑安全的全系统法则,另外要围绕提高系统的响应能力为核心,还有就是拓扑结构、流量和功能模型的结合。为什么要说自顶向下设计呢?网络或者基础平台的设计不是随意的产生的,他有一个需求,就是我们必须以用户和业务需求分析、设计为前提,网络的设计人员或者说系统的设计人员,我们不能孤立的只是懂网络,必须对业务有所了解。并依据业务访问的效果来验证网络、安全、存储设计的合理性。就是说我们要和业务人员交流,最终验证网络、安全、存储设计的合理性是业务人员说了算的。作为技术平台设计者来说,我们不能够考虑我们的输入什么,也不能够考虑我们的输出是什么,我们要考虑从业务输出角度先开始进行平台设计。另外考虑系统安全方法,系统方法,体现单一功能系统设计的内部关系,也关注其与其他功能系统的外部关系,并依据总体与局部的特点进行平衡。我们的设计人员往往比较局限,他没有考虑这个系统和其他系统之间的关系,也没有考虑在总体的结构当中怎么进行平衡。我们经常面临的问题就是某一个系统的技术人员和其他的人员争执,是因为他们没有一个整体的系统思路考虑问题。
所以作为提交一个相关的全系统的整体设计方案的团队而言必须有一个法则,就是我们必须站在一个整体的系统角度考虑问题,而不是站在自身的角度考虑问题。应该说系统方法是整个设计当中必须遵循的思路。另外一个就是安全全系统法则的含义是什么?安全的系统设计需要与各个系统功能结合考虑,并伴随系统成熟的整个过程进行控制和操作,要找到安全与性能合理的平衡点。任何系统我们都要考虑安全问题,不是说我们单建一个安全系统就完了。所以安全系统的建设是围绕着其他系统的成功过程建设的。作为建设人员来说,要和其他的系统安全过程一起完善,一起成长,一起成熟,提交一个整体的方案。
我认为安全全系统法则也是在设计过程当中必须遵循的法则。
另外,围绕提高系统的响应能力,网站对于网民的第一体验是页面内容和响应速度,要围绕这个焦点,不断提升系统各个环节的响应速度,并通过测试和优化进行完善。我们搭建系统的时候,往往是视角层内我们只是看自己,把我的系统环境搭好就完了。但是实际上我们要知道我们的目标是什么,我们的目标是网民的使用和感受,所以我们应该再从外往里看一下,我们的系统当中,网民使用的响应速度是怎样的,我们利用优化完善这个过程。所以围绕系统的响应能力作为关注点,也是我们设计当中很关键的思路。
另外一点就是结合拓扑结构、流量、功能模型结合,依据网站的流量特点和特定区域的功能模型构建合理的拓扑结构和应用架构。这是我自己感觉到我们的设计者经常会忽视的一点,我们没有把我们的拓扑结构、流量特征和功能模型进行结合,只是单一的看客户,他不去看相关的整个访问流量。
设计过程当我们要关注哪几个焦点?
我们刚才谈到的一个相关的关键点,下面我们来看一下技术平台设计方案的案例。我们从六个方面给大家做一个介绍,第一个方面是关于网络架构的设计,第二方面关于负载均衡设计,第三关于安全体系的设计,第四关于存储系统设计,第五关于数据库的设计,第六方面是多级缓存设计。这是我刚才提高的,在设计过程当中我们首先关注哪几个焦点,我认为这几个焦点如果我们在设计过程当中都能够考虑到,而且能够很好的实现的话,我觉得这个方案还是不错的。应该是可以满足要求。
首先我们看一下网络架构的设计,我们不是简单的联网,我们是要有一个架构的思想在里面,这个架构的思想来源于几个方面,刚才我提到的网络功能的模型,以及客户服务器的模型,以及一个模型的重合点。我们知道在我们的设计当中提到的有核心层、分布层、访问层,每个层有不同的作用,这是关于网络模型当中我们经常使用到的一个三层模型。
对于客户服务器模型,对于网络设计人员有没有考虑到我们利用这个特点进行客户服务的模型呢?同时考虑到数据的访问方向,以及体现安全的一个区域层次。我们在设计网络的时候,首先我们要看一下在这个过程当中哪一个点是我们的焦点,这个焦点就是我们网络架构设计实现过程当中的一个关键点。
在网络设计架构过程当中,每一个单元都要适应,网络架构当中的每一个单元都要考虑这个原则。举一个例子,在我们的网站设计当中,我们把他分成这几个网络区域,第一个是关于外网接入区域,第二是网站发布区域,第三是网站应用、数据库区域,第四是网站采编区域。首先是从应用的角度考虑的,另外是通过我们每一个相应的区域所要完成的一个功能,这里就不详细说了。
就是每一个区域都要按照我刚才所提到的特点,把网络架构和我们的应用模型结合分析,有一个区域,有一个特点来构建我们的网络架构。
第二是关于负载均衡设计,负载均衡设计当中,我们刚才在设计网站的相关特点分析当中我们提到了,如何分担相关的数据源的压力,把一个数据源分担成多个数据源,其实是体现了一个负载均衡设计。所以负载均衡设计这一块的话,主要是分担一个数据源的压力,分担成几个数据源,比如一个服务器的压力,承载在多个服务器上。另外要考虑到通过负载均衡技术的设计来提高我们的响应速度。
这是关于负载均衡设计过程当中所用到的策略算法,比如他的一些算法,这些算法各有各的特点。我们在自己的实际的设计使用当中,要用哪一种算法我觉得不是我们网络设计人员说了算的,是应用人员说了算的。他的应用特点是什么我们要仔细的分析,根据他的应用特点我们选择相应的设计,同时要不断的优化。
这是关于负载均衡设计的建议,侧路使用的是链路负载均衡,内部是服务器负载均衡,这是一个负载均衡器的设计。
关于安全系统的设计的话,刚才提到安全系统是一个全新的法则,我们在设计当中分析很多的因素,包括终端层安全应用层安全,系统层安全,网络层安全,物理层安全等,现在的话,安全系统设计上我们考虑的是运营和审计的安全。在运营和审计过程当中,管理安全要有一个基线配置,就是我们的基线在哪,同时我们要自己做一个测试,另外对我们的系统要进行评估,同时安全控制评估要给出一个相应的报告。另外在整个运营过程当中要完善监控体系,来体现安全设计,也就是安全警报和忠告,对于整个事件要有响应机制,另外就是不断的完善我们的策略。
这是关于安全系统设置的一个统计,刚才说安全是依赖于网络架构,不是单纯的推动管理型,他和我们的架构能很好的匹配和融合,同时强调每一个区域的安全层次,安全的等级以及相关的产品在使用过程当中发挥的效果。对于存储系统设计来说的话,我们的设计工程师经常出现的问题是我拿一个设备来,他的容量是多少,他能联通,但是事实上存储系统设计当中也是要考虑基于存储网络的一个特点,比如说我们把存储网络和我们的IP网络进行比对,他也有自己的层次,比如应用层、文件层、存储层等。在我们构建一个存储架构的基础之上,我们在进行设计的时候我们的思路非常的清楚,比如说我们要对业务系统、业务数据库系统、主机系统、总线、文件和总块等都要考虑,实现我们整个存储系统的设计。这是对于存储系统的案例,对于NAS存储结构,SAN存储结构等都有各自的特点。
下面的注意事项包括我们基于在存储网络设计当中,最核心的就是要知道I/0通道,就是我们整个存储的I/O通道,他的特点,比如我们要提高他的可靠性怎么办,在这个过程当中,比如我们可以通过操作系统、HBA卡、存储等提高他的通道。
数据库设计我们要提出几个方面,第一数据库的选择要基于应用平台,数据库选择的时候,我们不是随便拿一个商用的数据库软件过来就可以了,一定要看你的应用架构,就是你的应用到底是什么,你是JAVA的还是.NET的架构,我们都要看一下,我们的历史数据以及以后的数据增长规模,对数据库的平台选择会有很大的影响。同时我们还要看一下数据库的高性能问题,利用高速缓存,分散I/O,以及SQL优化,其实这是最难最关键的一点,我们的设计过程当中经常忽视这一点,数据库搭好的,联上了,但是速度为什么没有提高?实际上跟SQL的优化非常的重要,他是非常重要的环节。另外在数据库的设计当中,我们的可靠性要提高,我们可以通过CLUSTER集群的方式等来提高。
第六点是多级缓存设计,我们利用外部CDN缓存,另外要考虑硬性的缓存,还要考虑发布区的缓存设计,这是我们经常使用到的,另外就是数据库的缓存设计也是我们在数据库设计当中比较关注的,同时存储设备的缓存设计是存储厂商在他的产品设计和制造过程当中实现的。
网站建设的技术问题应该如何入手?
这是关于整个设计方案的一个案例,我做一个小结。网站建设的技术问题很多,是一个复杂的工程。
我们如何入手,我想就是可以给大家提示一下,就是抓住点,梳理线和力求面。
抓住点的含义是什么 ?就是分析系统当中存在的关键点。就是刚才我们提到的五个关键点,也是我们在设计过程当中要考虑的,并围绕这个关键点展开系统的设计,这些点的分析,不仅考虑性能和功能,而且要深入分析和寻找安全性和高峰压力下的异常风险。
梳理线的含义就是网站系统从出口网络设备到安全设备、负载均衡、发布系统等,他的特点是布成一条线,刚才我们讲的就体现了这条线,但是我们是双性的。这条线直接承载着网民的需求,是一个数据流的关键性,需要从这条线的整体承载能力角度进行分析和评估。我们的设计员经常是看到了某一个点,比如他负责一个设备的相关性能,他没有看这条线的整体来看,没有进行整体的评估,而且相互的访问关系不清楚,这是关于线,就是要梳理一下线,要把线梳理清楚。
另外力求面,他的含义是网站建设当中设计的技术层面是很多的,需要从网络、主机、存储、备份、安全、业务系统等多个技术层面考虑整个网站系统的设计和建设。有系统的关键点的控制,有系统关键数据流的梳理,也有系统工程的全面的分析和设计,网站设计和建设才能既有全局也有局部、思路清晰,要点明确。我们按照关键点和业务访问的特点梳理成一条线,然后再分析这个线当中,我们整体的承载能力,最后力求把这条线拓展开,形成一个面,这样的话我们的整个网站建设,设计方案就全面了,这是一个小结。
太极近几年依靠专业的服务团队,基于先进的方法和雄厚的技术实力,以及不断完善的一体化IT服务体系,力争成为“值得信赖的IT服务国家队”,近年来在媒体行业取得了相关的成绩,包括中央政府门户网站建设项目,人民网技术平台建设项目,中国军网网站建设项目,中国国防部网站建设项目,以及新华网社区系统建设项目,中国经济网网站建设项目,以及新华网香港站点的建设项目。这是我们的太极公司承载的一方面。
这是太极的品牌,他体现在四个方面,第一个就是以互动共赢为基础,以完全一体化的技术为支撑,同时提供专业团队先进方法论以及技术的创新,提供一个值得信赖的IT服务国家队,提供给我们的用户高品质的服务。