解决速度问题的核心是解决海量数据操作问题和高并发问题。

网站复杂的架构就是从这两个问题演变出来的。

海量数据的解决方案:

1. 缓存和页面静态化

将从数据库获取的数据暂时保存起来,在下次使用的时候无需重新到数据库中获取,这样可以大大降低数据库的压力。

缓存可以通过程序直接保存到内存中(使用Map,尤其是使用ConcurrentHashMap)和使用缓存框架(Ehcache,Memcache,Redis)两种方式。

2. 数据库优化

解决数据量大的问题,是避不开数据库优化的。

①. 表结构优化    ②SQL语句优化   ③分区     ④分表    ⑤索引优化   ⑥使用存储过程代替直接操作等

3. 分离活跃数据

4. 批量读取和延迟修改

5. 读写分离

6. 分布式数据库

7. NoSQL 和 Hadoop

高并发的解决方案

1. 应用和静态资源分离

2. 页面缓存

3. 集群和分布式

集群是每台服务器都具有相同的功能,处理请求时调用哪台服务器都可以,主要是起到分流的作用。

分布式是将不同的业务放到不同的服务器中,处理一个请求可能需要用到多台服务器,这样提高一个请求的处理速度。

4. 反向代理

代理服务器是代我们获取想要的资源,然后将结果返回我们,所要获取的资源是我们主动告诉代理服务器的。

反向代理服务器是我们正常访问一台服务器的时候,服务器自己调用了别的服务器的资源并将结果返回给我们,我们自己并不知道。

5. CDN

《看透springmvc源码分析与实践》读书笔记一相关推荐

  1. 卓有成效的程序员 阅读笔记 第一部分

    第一部分 机制 第二章 加速法则 加载器(Launcher)允许你输入应用程序或文档名称的第一部分来加载它:一个应用程序列表的有用程度与它的长度成反比 花点时间来学习你手边所有隐藏的快捷键 命令提示符 ...

  2. ThoughtWorks(中国)程序员读书雷达

      软件业的特点是变化.若要提高软件开发的技能,就必须跟上技术发展的步伐.埋首醉心于项目开发与实战,固然能够锤炼自己的开发技巧,却难免受限于经验与学识.世界上并不存在速成的终南捷径,但阅读好的技术书籍 ...

  3. 张逸:ThoughtWorks(中国)程序员读书雷达

    2013/06/20 ·  书籍与教程, 开发· 6.6K 阅读·  书籍, 架构设计, 编程, 领导力 原文出处: 简单文本-张逸   欢迎分享原创到伯乐头条 软件业的特点是变化.若要提高软件开发的 ...

  4. 张逸: ThoughtWorks(中国)程序员读书雷达

    原文出处: 简单文本-张逸 软件业的特点是变化.若要提高软件开发的技能,就必须跟上技术发展的步伐.埋首醉心于项目开发与实战,固然能够锤炼自己的开发技巧,却难免受限于经验与学识.世界上并不存在速成的终南 ...

  5. 程序员的共鸣 - 读《卓有成效的程序员》

    最近读了<卓有成效的程序员>,感觉收获颇大.这是一本写给程序员的难得的好书.书中大都是一些浅显的道理,但作者将这些东西加以收集.归纳.总结,并最终成书.作者为了收集各种提高效率的工具和方法 ...

  6. 读《卓有成效的程序员》-----我的一些题内和题外的感想

    读<卓有成效的程序员>-----我的一些题内和题外的感想 本文出自:http://hi.baidu.com/xiaonan33309/blog/item/c708c901a50d940b7 ...

  7. 卓有成效的程序员(影印版)

    卓有成效的程序员(影印版) 一本揭示高效程序员的思考模式,一本告诉你如何缩短你与优秀程序员的差距 定价 : ¥42.00会员价 : ¥31.50(75折) 详情查看:http://www.china- ...

  8. [黑马程序员C++笔记]P72-P83通讯录管理系统

    目录 系统需求 1.菜单功能 2.退出功能 3.添加联系人 (1)​​​​​​​设计联系人结构体 (2) 设计通讯录结构体 ​​​​​​​(3)main函数中创建通讯录 (4)封装添加联系人函数 (5 ...

  9. [黑马程序员C++笔记]P72-P83通讯录管理系统总体概览

    系统需求 通讯录是一个可以记录亲人.好友信息的工具. 本教程主要利用C++来实现一个通讯录管理系统 系统中需要实现的功能如下: 添加联系人:向通讯录中添加新人,信息包括(姓名.性别.年龄.联系电话.家 ...

  10. php末尾友链,与php程序员的笔记网站交换友链的原则

    很抱歉,由于本网站首页友链已满,目前停止交换首页友链,内页仍可交换友链!(2013年2月24日) 随着本站友链的数量不断增多,本人不得不对本站的友链申请的原则进行郑重的申明一下,希望各位申请本站友链的 ...

最新文章

  1. 数据结构——排序算法(含动态图片)
  2. <深入剖析Tomcat>摘抄
  3. frameset 后台管理_易达CMS下载-易达CMS(免费开源网站管理系统)v3.0.0.1103免费版
  4. pb实现简单计算器的思想_人教版初中数学七年级下册 用计算器求算数平方根、用有理数估计算数平方根的大小公开课优质课课件教案视频...
  5. mysql8.0 i ha,centos7 mysql8.0 RPM软件包方式安装
  6. 各国的 电视制式 度量衡 电压
  7. SQLServer共享锁,更新锁,排它锁,死锁,默认隔离级别
  8. 微信公众平台实现天气预报功能
  9. EMMC和Nand傻傻分不清
  10. 手机麦克风权限在哪里开启_手机麦克风权限怎么设置
  11. 7-1 计算存款利息 (10分) 本题目要求计算存款利息
  12. jbpm创建流程图_jbpm - 工作流的基本操作
  13. 六、MySQL之数据定义语言(一)
  14. JavaScript Light BOX相册预览功能
  15. 用python将照片做成数据集_那个20多万“不可描述”照片的数据集,有人用python做了鉴黄模型 | Demo...
  16. pomelo + vscode + typescript搭建可约束可调试的游戏服务端框架
  17. MySQL的使用方法
  18. 七夕-wikipedia
  19. Windows开机自启动jar包
  20. iOS 跳转到 App Store 下载评分页面

热门文章

  1. 关于String函数
  2. 巧妙使用网页在线工具,让您的工作更简单
  3. Stack Overflow:研究发现访问PHP和 Android的流量更可能来自低收入国家
  4. 移动端 像素渲染流水线与GPU Hack
  5. ASP.NET 系统对象 Request(一)
  6. Data Mining Tools
  7. 原码、反码、补码解析,保证一次搞懂
  8. LBE 隐私卫士原理分析
  9. 人和人之间是需要沟通的
  10. Excel组件DCOM配置