博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
「架构技术专题」作为java程序员的你还不知道网站架构的演化(2)?
阅读量:6848 次
发布时间:2019-06-26

本文共 881 字,大约阅读时间需要 2 分钟。

说道大型网站,就的先说大型网站的特点:高并发,大流量,高可用,海量数据等。下面就说说大型网站的架构演化过程,通过一步步的演化,我们就可以清晰直观地知道,究竟为什么要这么做?

6、使用反向代理和CDN加上网站相应

提高网站的访问速度,主要手段有使用CDN和反向代理。

CDN和反向代理的基本原理都是缓存,区别在于CDN部署在网络提供商的机房,而反向代理是部署在网站的中心机房,当用户请求到达中心机房后,首先访问的反向代理,如果反向代理缓存着用户请求的资源,则直接返回给用户。

7、使用分布式文件系统和分布式数据库系统

任何强大的单一服务器都满足不了大型网站持续增长的业务需求。

分布式数据库时网站数据库拆分的最后手段,只用在单表数据规模非常大的时候才使用。不到不得已时,网站更常用的数据库拆分手段是业务拆分,将不同业务的数据部署在不同的物理服务器上。

8、使用NoSQL和搜索引擎

搜素引擎也基本已经形成现在大型网站必须提供的功能了,网站需要采用一些非关系数据库技术如NoSQL和非数据库查询技术如搜索引擎。

9、业务拆分

大型网站为了应对日益复杂的业务场景,通过使用分而治之的手段将真个网站业务拆分成不同的产品线。

具体到技术上,也会根据产品线话费,将一个网站拆分成许多不同的应用,每个应用独立部署维护。应用之间可以通过超链接建立管理,也可以通过消息队列进行数据分发,当然最多的还是通过访问同一个数据存储系统来构成一个关联的完整系统。

10、分 布式服务

由于每一个应用系统都需要执行许多相同的业务操作,比如用户管理,session管理,那么可以将这些公用的业务提取出来,独立部署。

本公众号已开设如下专题,欢迎扫码或者长按以下二维码,查看相关专题!

【mysql优化专题】【HTTP协议】

【架构技术专题】【多线程/池专题】

【dubbo专题】【dubbo源码专题】

【JVM调优专题】【HTTP协议专题】

【设计模式专题】【高并发专题】

【架构技术专题】【netty专题】

【数据结构专题】【redis专题】

【spring源码】【springboot专题】

转载地址:http://rilul.baihongyu.com/

你可能感兴趣的文章
log4j的参数配置(转)
查看>>
[C++][基础]1_变量、常量和基本类型
查看>>
Android Service与Runnable整合并用
查看>>
Php综合手册
查看>>
[轉]javascript 的 location 各種用法
查看>>
测地膨胀和膨胀重建—lhMorpRDilate
查看>>
PHP开发Android应用程序(转)
查看>>
Knockout.js随手记(8)
查看>>
mysql 安装过程中的错误:my-template.ini could not be processed and written to XXX\my.ini.Error code-1...
查看>>
计算A/3,不用除法
查看>>
ERStudio的使用
查看>>
git 本地与服务器的同步
查看>>
css鼠标移动到文字上怎样变化背景颜色
查看>>
HBase 实战(1)--HBase的数据导入方式
查看>>
浅谈WEB页面提速(前端向)
查看>>
05 语句处理
查看>>
POJ 3177 Redundant Paths POJ 3352 Road Construction(双连接)
查看>>
ERROR: Java 1.7 or later is required to run Apache Drill.
查看>>
初入android驱动开发之字符设备(一)
查看>>
外网上传到NAS速度很慢是什么情况?上行1M都不到,但是测试有4M
查看>>