网站技术笔记-演化

简介: <div class="markdown_views"><p>先上图 <br><img src="http://img.blog.csdn.net/20150925143830538" alt="这里写图片描述" title=""></p><p>到现在为止都是通过新增组件来获得能力的。进化到这个架构大概需要如下的过程:</p><ol><li>最简单的,上传文件,应用

先上图
这里写图片描述

到现在为止都是通过新增组件来获得能力的。进化到这个架构大概需要如下的过程:

  1. 最简单的,上传文件,应用程序和数据库都在同一台机器上
  2. 把这三大块分离: 应用程序可能需要更快的cpu的电脑,数据库放到内存很大磁盘很快的电脑上去, 建立单独的文件服务器需要很大的磁盘
  3. 用缓存改善性能,分为本地和远程,本地更快,远程更加可扩展。把集中访问的数据放到缓存上去。这样可以减少给数据库的压力
  4. 单服务器并发处理能力有限考虑应用服务器的集群,使用负载均衡调用服务器把请求发到不同的应用服务器上去,提高并发处理性能。这样可能会带来session共享等问题需要解决
  5. 因为数据库将会面临查询瓶颈,因此对数据库进行读写分离。可以使用mysql自带的主从复制功能来实现,应用层可以考虑使用独立的数据库访问模块来完成读写分离。可能会引入主从延迟的问题
  6. 加入CDN(内容分发网络),部署在网络运营商机房,能选择最近网络提供商机房。 反向代理部署在网站中心机房,请求先查询方向代理服务器,如果有要访问的资源,则直接返回。也是缓存的一种体现
    这里写图片描述

  7. 规模再变大,单服务器不够大就要使用分布式文件服务器。 数据库容量也不够,并且单纯的读写分离也满足不了查询性能就要使用业务分库分表的方式来构建分布式数据库服务器

  8. 增加搜索引擎服务器来代替传统数据库查询,增加Nosql服务器来代替关系型数据库
    这里写图片描述

  9. 进行业务拆分。 把整个网站分成多个应用的组合。 应用之间通过超链接,或者消息队列,或者统一的数据库来进行沟通

  10. soa型服务。 因为应用变多,如果都通过数据库来关联,那么会造成连接不够用,或者更多的事务征用。因此把一些公用组件提成soa服务可以更好的支撑

误区:

  1. 为了技术而技术
  2. 迷信大公司的解决方案
  3. 企图用技术解决所有问题,有些问题可以再业务上解决,比如12306放弃秒杀的方式,改为排队和分时段
相关文章
|
5月前
|
Java 测试技术 Android开发
移动应用开发之旅:从概念到现实
【9月更文挑战第7天】在数字化的浪潮中,移动应用已成为我们生活的一部分。本文将引导你了解移动应用开发的核心概念、操作系统的选择以及如何将一个创意转化为现实中可用的应用。我们将一起探索这个过程,并揭示背后的技术细节。无论你是初学者还是有经验的开发者,这篇文章都将为你提供宝贵的见解和实用的知识。
40 2
|
监控 安全 网络协议
架构:第一章:项目架构的演变历史
架构:第一章:项目架构的演变历史
151 0
架构:第一章:项目架构的演变历史
|
缓存 前端开发 NoSQL
笔记整理:技术架构涵盖内容和演变过程总结
单体架构 2. 应用与数据库分离 3. 使用缓存抗量 4. 多应用部署和Nginx反向代理 5. 数据库读写分离 6. 应用分组部署 7. 应用分库设计 8. RPC 分布式部署 9. 应用细分和网关引入 10. 低代码编程和可复用
346 0
笔记整理:技术架构涵盖内容和演变过程总结
|
消息中间件 存储 缓存
架构之美-软件实现分析之道
理解一个实现,是以对模型和接口的理解为前提。 如果想了解一个系统的实现,应从软件结构和关键技术两个方面着手。无论是软件结构,还是关键技术,我们都需要带着自己的问题入手,而问题的出发点就是我们对模型和接口的理解。 了解软件的结构,其实,就是把分层的模型展开,看下一层模型: 要知道这个层次给你提供了怎样的模型 要带着自己的问题去了解这些模型为什么要这么设计 Kafka的实现主要是针对机械硬盘做的优化,现在的SSD硬盘越来越多,成本越来越低,这个立意的出发点已经不像以前那样稳固了。
147 0
架构之美-软件实现分析之道
|
存储 缓存 运维
架构科普
  软件架构指软件系统的顶层结构;框架是面向编程或配置的半成品;组件是从技术维度上的复用;模块是从业务维度上职责的划分;系统是相互协同可运行的实体。   软件开发最本质的挑战有两个:复杂和变更,而软件的价值是保证业务的响应力,与之相对的是开发资源的有限,各种的软件开发方法论,也都是在研究有限的资源下,如何应对着两个挑战,寻找平衡点,实现业务目标。因为是在寻找平衡点,就说明是有取舍的,所以就没有所谓的银弹的存在。
|
5G 网络架构
带你读《果壳中的5G:新网络时代的技术内涵与商业思维》第一章从 0 到 5 的演化与逻辑1.5(一)
带你读《果壳中的5G:新网络时代的技术内涵与商业思维》第一章从 0 到 5 的演化与逻辑1.5
带你读《果壳中的5G:新网络时代的技术内涵与商业思维》第一章从 0 到 5 的演化与逻辑1.5(一)
|
5G 数据安全/隐私保护
带你读《果壳中的5G:新网络时代的技术内涵与商业思维》第一章从 0 到 5 的演化与逻辑1.3
《果壳中的5G:新网络时代的技术内涵与商业思维》第一章从 0 到 5 的演化与逻辑1.3
带你读《果壳中的5G:新网络时代的技术内涵与商业思维》第一章从 0 到 5 的演化与逻辑1.3
带你读《果壳中的5G:新网络时代的技术内涵与商业思维》第一章从 0 到 5 的演化与逻辑1.2
带你读《果壳中的5G:新网络时代的技术内涵与商业思维》第一章从 0 到 5 的演化与逻辑1.2
|
Java 大数据 5G
带你读《果壳中的5G:新网络时代的技术内涵与商业思维》第一章从 0 到 5 的演化与逻辑1.4
《果壳中的5G:新网络时代的技术内涵与商业思维》第一章从 0 到 5 的演化与逻辑1.4