1、传统的>
既然说了大型,首先要考虑的就是高用户并发的情况。这就需要结合你实际用户端应用场景,视频都双向传输和简单的低通量的文本交互一定不是一个概念。做大型的系统,还要考虑平时的情况和突发的高占用率情况。
首先我们先对应用做一个分类:
1高带宽消耗累应用
这个方面的代表就是直播相关或网络教学领域。直播系统的大体原理,主播手机采集音视频、编码,然后推送一个视频流给服务器(实际上是一个做了负载均衡的视频服务器矩阵组)。然后负责实时流媒体数据流接收的服务器,会将流媒体数据流推送给分发服务器(现在有现成的CDN,这样开发难度就小了很多。)然后观众申请观看的时候,分发服务器就会将所申请的时时流媒体推荐给客户。
这么粗糙的应用就可能包换用户端权限管理服务器组,业务调度服务器组,不同区域IDC建立的接入服务器组,不同区域IDC建立的分发服务器组,分等级的数据存储服务器组,ai内容审核服务器组(基于分流实时分析,预设内容审核规则),归档视频存储服务器组,短视频评级推荐服务器组,应用兴趣行为分析服务器组。客户在请求交互的时候可能还会有一些缓冲的队列呀,nosql之类的(redis,memcache)。各组服务器的规格和数量都是根据同时并发的情况定的,在程序开发好的时间可以通过自动化的方式模拟高并发,再通过查看分析瓶颈,而对前期的规划做出合适的调整。
有些时间还要实现不经过分发,交互直通以降低延时。pk的连线的时候,太高延时是接受不了的。这个就不继续展开了。
还有网盘类应用也也很多类似,只是延时要求没那么高。传统的视频网站也是基本相同原理。
传统的微博也是类似的分发机制。
2低延时需求型
这方面一般是以网络游戏为主。对于一些点电子竞技类的应用,做到80ms以下的低延时是必须。服务器的核心响应速度和带宽的低延时是重点。这种服务器最好可以独享一条专线,或者在虚拟网络系统中设置一个更高的优先级,数据线优先同行也会尽可能的降低延时。至于服务器组之间的vpc也应该有一个更高的通过优先级,以保证服务器之间的访问延时极地。这种应用服务器,最好要支持核心运算,不过这个要开发的架构支持。
再就是后期用户量大的时候,做更新包下载的时候会采用分发服务器(CDN)。
3高突发的缓冲
这种都是电商网站,平时就是讲全段应用服务器做彼此依赖,后端选择一个大吞吐,大并发的后端框架(京东使用的go语言对高并发和数据挖掘就有很多优势,我也刚开始学习)。这种系统网元架构就简单很多,传统的负载均衡后挂着不同模块的应用服务器组,然后经过缓冲服务器组,之后到达数据服务器组和APIGateway。
日常的应用都是没啥问题,都是因为一些节日或促销,或爆款等发生临时性数据 *** 作的拥堵。解决这种缓冲都方式有很多,比如临时快速读写缓存,消息队列等。甚至开发总线通信队列等待机制,很多解决方案。
现在系统本身的规划和后期都优化都有许多解决方案,现在的瓶颈往往是系统间的交互通信。
服务器种类各云服务商都称呼也不一致,总体说分为轻量应用服务器,负载均衡服务器,超算服务器(CPU和GPU两个方向,后者也常常被成为图形处理服务器。)数据服务器(常见的版本都有),文件服务器(nas和oss),分发服务器,缓冲服务器,数据分析服务器。我项目中使用大大类就这些了,也许有些我没用过和不知道的,希望大家在讨论区补充纠正。
希望对你认知有所拓展。
说起来现在常规大文件传输软件或者系统,应用的文件分发传输技术基本的就是>B/S和C/S混合架构的文件管理系统设计
文件管理系统能够大大降低文件管理工作人员的负担,在实现无纸化文件传输流转的同时,也提高了办公效率。下面对分布式文件管理系统进行了设计与应用,提出了基于B/S模式和C/S模式相混合的应用架构,这对于分布式文件管理设计是一次有益的尝试,同时对其它分布式管理系统设计与应用也具有较好的指导和借鉴意义。
鉴于自动化控制系统在处理多任务信息开发和管理中所表露出来的优越性,本文件管理系统的开发设计也借鉴和应用了分布式管理系统的开发模式。目前,分布式管理系统的主流开发应用模式主要有两种:B/S模式和C/S模式。
11 B/S模式
B/S模式,即浏览器服务器模式,其主要应用模式是将多任务所涉及到的数据信息,统一交由数据库服务器进行管理和发布,而用户只需借助浏览器就能实现对多任务信息的统一访问及数据信息管理。如果文件管理系统采用B/S模式,则无需开发专门的文件管理信息系统,就能够轻松实现对文件信息的管理,而且只要有能够联网的电脑终端,且电脑终端配备了浏览器,就能够实现对文件信息的访问和管理。这种模式极大地减轻了开发人员的设计工作量,但同时也增加了数据库服务器的'负载压力,容易导致整个信息管理系统宕机,一旦数据库服务器宕机,则有可能导致整个文件管理系统失效。
12 C/S模式
C/S模式也称客户端/服务器模式,这种应用模式需要为用户配置专门开发的客户端,只有电脑终端安装了这种专门开发的客户端,才能够实现对系统内数据信息的访问、配置和管理。因此,该模式的最大弊端就是开发设计的工作量大,需要专门技术人员才能够实现对系统内文件信息的有效管理。同时,这种C/S模式将数据库服务器的负载压力平均分摊到了每一个客户终端,因此服务器的压力较小,提高了整个文件管理系统的稳定性和健壮性。
分析发现,B/S模式和C/S模式都有各自的优缺点,因此,考虑将B/S模式和C/S模式这两种分布式系统模式的优势相结合,设计基于B/S和C/S混合模式的文件管理系统。这种基于混合架构的文件管理系统具有如下特征:①文件管理系统的数据结构采用B/S模式,这样每一个客户端只需要借助于浏览器就能够实现对文件管理信息的访问和统一管理,而无需为每一个客户端配置专用的客户端程序,降低了开发设计人员的工作量;②文件管理系统的分布式结构采用C/S模式,将数据库服务器统一管理模式交由若干个应用终端分担,能够极大地减轻数据库服务器的负荷压力,有利于提高整个文件管理系统的稳定性和健壮性;③应用C/S模式可以有效实现在局域网内的联网通信管理能力,同时C/S模式所采用的异步确认机制也能够从根本上提高文件收发管理的实时性和准确性,有助于提高文件管理办公效率。
21 文件管理系统功能
基于B/S模式和C/S模式混合架构的文件管理系统,其管理功能主要包括以下几个方面:
(1)文件管理功能。文件管理主要是对文件收发进行相关信息记录,包括收发责任人、文件大小、传输信道、文件格式、时间戳等,所有数据信息统一在数据库服务器备份,以实现统一管理。
(2)文件收发功能。利用局域网通信组件能够实现自上而下及自下而上的文件收发、转发管理。同时,对文件信息内容进行按需过滤,建立文件检索关键词,以提高文件管理效率,并实现自动化、无纸化办公的目的。
(3)用户管理功能。对使用该文件管理系统的用户进行注册管理,分配统一的登陆账号和密码,确保文件信息的安全性;另一方面,针对不同级别的用户,分别设置不同级别的权限,以实现对文件信息的分类管理和权限制访问管理,提高文件管理效率。
(4)联网安全管理功能。由于文件管理系统不可避免地会涉及到网络文件的收发,因此需要加强对系统的联网安全管理能力。可以通过采用用户账号登录、数据库矩阵机制、文件信息内容加密等措施,提高文件管理系统的安全性。在系统硬件架构上,可采取物理隔离、硬件防火墙等措施为文件管理系统的安全性提供保障。
22 系统架构与实现
基于B/S和C/S混合架构的文件管理系统,从硬件架构上来说,既要凸显C/S模式的优势,同时也要在数据库访问机制上保留B/S模式的优点,图1为基于B/S和C/S混合架构的文件管理系统架构原理图。整个文件管理系统,其硬件上主要从以下几个方面加以实现:
(1)文件服务器采用磁盘阵列。主要存放tiff格式的遥感影像文件及其影像产品的描述文件等,数据库服务器存放遥感印象产品的编目信息,FTP服务和IIS服务部署在同一台服务器上。并且,采取通关防火墙等安全隔离措施,以方便外网多用户通信。
(2)Web程序采用VS2010 C#语言,基于ASPNET 开发。主要实现遥感影像产品编目信息查询、遥感印象产品管理、用户管理、文件分发计划制定、公告发布等功能。 (3)FTP服务提供文件下载服务。采用Windows自带的FTP服务,采用虚拟目录的形式将FTP的文件目录指向文件服务器。
(4)文件分发管理服务软件安装在中心的FTP和IIS服务器上,与IIS服务和FTP服务共用一台服务器。主要定时查询数据库中管理员制定的文件分发计划,解析文件分发计划内容,根据分发计划中的用户名将分发计划中的文件名和编目信息,以及访问FTP的用户名和密码发送到指定用户的文件下载客户端,文件下载客户端收到文件推送信息后根据信息的文件名和路径,以及访问FTP的用户名和密码自动下载文件。
(5)文件下载客户端软件,安装在用户终端上。用以实时接收文件分发管理服务软件推送的文件下载信息,并根据下载信息自动下载文件。
23 系统软件设计
基于B/S和C/S混合架构的文件管理系统,其主要功能是实现文件的收发传输,因此在软件设计上,需主要完成文件收发传输的工作流程设计。
(1)文件传输管理。由文件发送方选择文件类型、文件数量及文件内容,经过系统内部封装,打包发往指定的部门或者客户群,同时出于对文件安全性的考虑,支持增添密码访问功能。当指定用户打开由上游转发而来的文件时,在验证了用户身份和文件访问密码后,可进行文件打包下载,将相关下载信息反馈给文件发送方,并对整个文件传输信息进行记录备案。
(2)用户权限管理。用户必须完成注册,获取系统统一分配的用户名和密码,才能够登陆系统进行使用;并且,针对用户注册时所选择用户类型的不同,分别赋予不同等级的权限,对文件管理系统内的所有文件信息标记不同权限等级访问标签,从而实现对用户和文件的双重分类管理,提高系统的安全性。
;文件服务器、数据库服务器、邮件服务器。文件服务器是指在计算机网络中,以文件数据的存储与共享为主要功能的服务器,负责中央存储和数据文件管理,处于同一网络环境。数据库服务器因为数据文件的重要性及数据的文件都较大,数据库服务器一般是指运行在网络中的一台或多台服务器和数据库管理系统软件,邮件服务器。
文件服务器(Fileserver),又称档案伺服器,是指在计算机网络环境中,所有用户都可访问的文件存储设备,是一种专供其他电脑检索文件和存储的特殊电脑。文件服务器通常比一般的个人电脑拥有更大的存储容量,并具有一些其他的功能,如磁盘镜像、多个网络接口。50 文档说明
除可用的新功能之外,本节还包含运行 SP3 时可能发生的问题。这些问题可能发生在从 SQL Server 2000、SQL Server 2000 SP1 或 SQL Server 2000 SP2 运行 Service Pack 进行升级的情况下。本节未描述 SP3 中提供的所有修补程序。要查看这些修补程序的完整列表,请参见 Microsoft 知识库文章 306908。
本节中的 Analysis Services 和 Meta Data Services 部分不适用于仅 Desktop Engine 安装。
本自述文件中未能及时提供的 SQL Server 2000 Service Pack 3 相关信息,将在 Microsoft 知识库文章 330022 中提供。该文章可以在 Microsoft 产品技术支持服务知识库中找到。
51 数据库引擎和 Desktop Engine 增强功能
下列增强功能适用于安装 Database Components SP3 的 SQL Server 2000 实例。也适用于安装 Desktop Engine SP3 的 Desktop Engine 实例。
511 在 Database Components SP3 中使用中文、日语或朝鲜语字符
在 SP1 中引入
如果在运行 Windows NT 40 的服务器或 Windows 98 上安装了 Database Components SP3 之后再升级到 Windows 2000,Windows 2000 升级过程将替换某些系统文件。在对中文、日语或朝鲜语字符排序时,需要使用这些系统文件。如果在 SQL Server 数据库中使用中文、日语或朝鲜语字符,在升级到 Windows 2000 后,需重新运行 SP3 附带的 Sqlredisexe。有关运行 Sqlredisexe 的更多信息,请参见 42 再发布 SP3 数据访问组件。
说明 如果客户机或服务器上没有含中文、日语或朝鲜语字符的数据库,则无需重新应用 Sqlredisexe。
512 散列组已删除
在 SP1 中引入
散列组 (hash teams) 已删除。由于 SQL Server 2000 中的改进,使用散列组已不能获得它们在 SQL Server 70 中所提供的性能好处。而且,删除散列组使得 SQL Server 2000 更加稳定。
因此,查询优化器不再用散列组生成查询计划。
在极个别的情况下,删除散列组可能会使查询的处理速度减慢。请分析这类查询并确定创建更适合的索引是否能使查询性能恢复到以前的水平。
513 添加的 Affinity Mask 开关
在 SP1 中引入
此 Service Pack 添加了两个 Affinity Mask 开关。
Affinity Mask I/O 开关
使用此 Service Pack,可以指定使用哪些 CPU 来运行用于磁盘 I/O *** 作的线程。这一开关必须与 Affinity Mask 选项结合起来使用。有关更多信息,请参见 Microsoft 产品技术支持服务知识库中的文章 298402。有关搜索知识库的指导,请参见 13 关于 SP3 的其他信息。
Affinity Mask 连接开关
使用此 Service Pack,可以将支持虚拟接口体系结构 (VIA) 的系统配置为将 SQL Server 连接从某些网卡绑定到一个处理器或一组处理器。这一开关必须与 Affinity Mask 选项结合起来使用。有关更多信息,请参见 Microsoft 产品技术支持服务知识库中的文章 299641。
详细内容参见
>
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)