第四周作业

用户头像
熊桂平
关注
发布于: 2020 年 10 月 19 日



一个典型的大型互联网应用系统需要应用到的技术有以下几大类

1.前端技术

1.1前端开发

Html、Css、JavaScript开发语言与技术,主要作用是内容渲染为用户提供交互服务。

1.2浏览器优化

浏览器缓存、内容压缩,主要作用是优化加载速度,提供高性能支持

1.3CDN

CDN是内容分发网络,通过网络优先选择最快的资源服务器,性能服务。

2.服务器技术

2.1服务器(实体/虚拟/云)

  • 服务器是计算机的一种,它比普通计算机运行更快、负载更高、价格更贵。服务器在网络中为其它客户机(如PC机、智能手机、ATM等终端甚至是火车系统等大型设备)提供计算或者应用服务。

  • 虚拟服务器,是一种在单一主机或主机群上,实现多网域服务的方法,可以运行多个网站或服务的技术、

  • 云计算被认为是继个人PC及互联网以来,第三次的IT浪潮,将会改变人们获取、处理和保存信息的方式。云计算利用高速互联网的传输能力,将数据的处理过程从个人计算机或服务器转移到大型的云计算中心,并将计算能力、存储能力以服务的方式为用户提供,用户能够像使用电力、自来水等公用设施一样使用计算能力,并按使用量进行计费。

2.2网络服务

dns服务(bind/第三方平台等)、web服务(nginx/apache)

2.3负载均衡

负载均衡建立在现有网络结构之上,它提供了一种廉价有效透明的方法扩展网络设备和服务器的带宽、增加吞吐量、加强网络数据处理能力、提高网络的灵活性和可用性。

2.4集群技术

技术是一种较新的技术,通过集群技术,可以在付出较低成本的情况下获得在性能、可靠性、灵活性方面的相对较高的收益,其任务调度则是集群系统中的核心技术。

2.5分布式缓存

分布式缓存是为了解决数据库服务器和Web服务器之间的瓶颈,如果一个网站流量很大这个瓶颈将会非常明显,每次数据库查询耗费的时间将不容乐观。对于更新速度不是很快的站点,可以采用静态化来避免过多的数据查询 。

2.6消息队列服务

消息队列服务有ActiveMQ、RabbitMQ、ZeroMQ、Kafka、MetaMQ、RocketMQ等。

2.7弹性扩展

  • 垂直伸缩:通过升级硬件和网络吞吐能力可以实现垂直伸缩

  • 水平伸缩:水平伸缩是指通过增加服务器提升计算能力的一类架构方法。

2.8备份服务

容灾备份系统时会涉及到多种技术,如:SAN或NAS技术、远程镜像技术、基于IP的SAN的互连技术、快照技术等。这里重点介绍远程镜像、快照和互连技术。

3.后端技术

3.1编程语言

WEB编程语言,分为WEB静态语言和WEB动态语言,WEB静态语言就是通常所见到的超文本标记语言 (标准通用标记语言下的一个应用),WEB动态语言主要是ASP,PHP,JAVASCRIPT,JAVA,CGI等计算机脚本语言编写出来的执行灵活的互联网网页程序。

3.2架构模式

架构模式,也叫架构风格,一个架构模式描述软件系统里的基本的结构组织或纲要。架构模式提供一些呈先定义好的子系统,指定它们的责任,并给出把它们组织在一起的法则和指南。一个架构模式常常可以分解成很多个设计模式的联合使用。互联网架构模式就是试图去描述那些为解决互联网系统高性能、高可用、易扩展、可伸缩、安全等目标,被很多互联网应用重复使用的一些解决方案,这些解决方案是互联网

软件系统的重要组成部分。

3.2.1分层

分层是企业应用系统中最常见的一种架构模式,将系统在横向维度上切分成几个部分,

每个部分负责一部分相对比较单一的职责,然后通过上层对下层依赖和调用组成一个完

整的系统。

3.2.2分割

系统越大,功能越复杂,服务和数据处理的种类也越多,将这些不同的功能和服务分割

开来,包装成高内聚低耦合的模块单元,一方面有助于软件的开发和维护;另一方面,

便于不同模块的分布式部署,提高网站的并发处理能力和功能扩展能力。

3.2.3分布式

对于大型网站,分层和分割的一个主要目的是为了切分后的模块便于分布式部署,即将

不同模块部署在不同的服务器上,通过远程调用协同工作。

3.2.4缓存

缓存就是将数据存放在距离计算最近的位置以加快处理速度。缓存是改善软件性能的第一手段,在复杂的软件设计中,缓存几乎无处不在。大型网站架构设计在很多方面都使用了缓存设计。

3.2.5异步

计算机软件发展的一个重要目标和驱动力是降低软件耦合性。事物之间越少直接关系,那么就越少被彼此影响,越可以独立发展。大型网站架构中,系统解耦合的手段除了前面提到的分层、分割、分布等手段,还有一个重要手段是异步,就是将一个业务操作分成多个阶段,每个阶段之间通过共享数据而不是直接调用的方法进行协作。

3.3服务层架构

  • 微服务框架:微服务架构是一项在云中部署应用和服务的新技术,微服务可以在“自己的程序”中运行,并通过“轻量级设备与HTTP型API进行沟通”。

  • 分布式消息队列:消息队列中间件是分布式系统中重要的组件,主要解决应用耦合、异步消息、流量削锋等问题。实现高性能、高可用、可伸缩和最终一致性架构。

  • 分布式缓存

  • 分布式一致性(锁)服务

4.存储技术

5.安全技术



用户头像

熊桂平

关注

还未添加个人签名 2020.09.14 加入

还未添加个人简介

评论

发布
暂无评论
第四周作业