《大规模 web服务开发》笔记
大规模服务:
可扩展,负载均衡,保证冗余,低运维成本,开发人数和开发方法的变化
数据处理:
磁盘—>内存—>缓存—>CPU
障碍:
持续增长的服务,”无法在内存中计算“(内存要比磁盘快10^5~10^6倍)
Linux的页面缓存:
先把磁盘内容读入内存
——>建立页面
建立好的页面不会释放而是保存下来
——>页面缓存
除了例外情况,页面缓存会透明地作用在所有I/O上
——>例外的情况为负责磁盘缓存部分(VFS)
VFS(Virtual File System):虚拟文件系统VFS作为一个抽象层,统一各个文件系统不同的函数,使之拥有共同接口,从而使用同样的机制同样的进行缓存,实现页面缓存以提高性能。
LRU(Least Recent Used):放弃最老的内容,留下最新的内容(其实就是个队列)。
sar工具:①追溯过去的统计数据 ②周期性地查看当前数据(详细内容见sar命令小结,麦库bigdata)
CPU扩展比较简单,可以借助于:
增加相同结构的服务器,通过负载均衡器来进行分散;
Web、应用程序服务器、爬虫
I/O负载的扩展十分困难,可借助于:
数据库;
大规模数据
处理大规模数据的重点:
能在内存中完成多少?
将磁盘寻道次数降到最低
可以实现分布式、有效利用局部性
能应对数据量增加的算法和数据结构
例如:线性搜索——>二叉树搜索
O(n)--->O(log n)
数据压缩 信息搜索技术
处理大规模数据中,程序开发的底层基础
算法、压缩和搜索
写程序在处理大规模数据之前:
注意操作系统缓存
以分布式为前提的RDBMS应用
算法和数据结构
以页面缓存为基础的运维的基本规则
操作系统刚启动时不要将服务器投入生产环境
性能测试最好在缓存优化后进行
《大规模 web服务开发》笔记的更多相关文章
- HTML+CSS笔记 CSS笔记集合
HTML+CSS笔记 表格,超链接,图片,表单 涉及内容:表格,超链接,图片,表单 HTML+CSS笔记 CSS入门 涉及内容:简介,优势,语法说明,代码注释,CSS样式位置,不同样式优先级,选择器, ...
- CSS笔记--选择器
CSS笔记--选择器 mate的使用 <meta charset="UTF-8"> <title>Document</title> <me ...
- HTML+CSS笔记 CSS中级 一些小技巧
水平居中 行内元素的水平居中 </a></li> <li><a href="#">2</a></li> &l ...
- HTML+CSS笔记 CSS中级 颜色&长度值
颜色值 在网页中的颜色设置是非常重要,有字体颜色(color).背景颜色(background-color).边框颜色(border)等,设置颜色的方法也有很多种: 1.英文命令颜色 语法: p{co ...
- HTML+CSS笔记 CSS中级 缩写入门
盒子模型代码简写 回忆盒模型时外边距(margin).内边距(padding)和边框(border)设置上下左右四个方向的边距是按照顺时针方向设置的:上右下左. 语法: margin:10px 15p ...
- HTML+CSS笔记 CSS进阶再续
CSS的布局模型 清楚了CSS 盒模型的基本概念. 盒模型类型, 我们就可以深入探讨网页布局的基本模型了.布局模型与盒模型一样都是 CSS 最基本. 最核心的概念. 但布局模型是建立在盒模型基础之上, ...
- HTML+CSS笔记 CSS进阶续集
元素分类 在CSS中,html中的标签元素大体被分为三种不同的类型:块状元素.内联元素(又叫行内元素)和内联块状元素. 常用的块状元素有: <div>.<p>.<h1&g ...
- HTML+CSS笔记 CSS进阶
文字排版 字体 我们可以使用css样式为网页中的文字设置字体.字号.颜色等样式属性. 语法: body{font-family:"宋体";} 这里注意不要设置不常用的字体,因为如果 ...
- HTML+CSS笔记 CSS入门续集
继承 CSS的某些样式是具有继承性的,那么什么是继承呢?继承是一种规则,它允许样式不仅应用于某个特定html标签元素,而且应用于其后代(标签). 语法: p{color:red;} <p> ...
- HTML+CSS笔记 CSS入门
简介: </span>年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的<span>脚本解释程序</span>,作为ABC语言的一种继承. & ...
随机推荐
- hdu 3037 费马小定理+逆元除法取模+Lucas定理
组合数学推推推最后,推得要求C(n+m,m)%p 其中n,m小于10^9,p小于1^5 用Lucas定理求(Lucas定理求nm较大时的组合数) 因为p数据较小可以直接阶乘打表求逆元 求逆元时,由费马 ...
- iOS内购流程一(协议、税务和银行业务)
协议.税务和银行业务,这一选项是当你App使用了In-app purchaes时候,你跟苹果签订协议的,需要签订合同和填写你的银行收款等信息 一.填写法人信息 1.登录iTunes Store,点击协 ...
- Netty源码分析(七):初识ChannelPipeline
ChannelPipeline单看名称就可以知道Channel的管道.本篇将结合它的默认实现类DefaultChannelPipeline来对它做一个简单的介绍. 示例图 上图是官方提供的Channe ...
- Mac PyCharm2018破解
1.下载破解补丁 https://link.jianshu.com/?t=http%3A%2F%2Fidea.lanyus.com%2Fjar%2FJetbrainsCrack-2.7-release ...
- C 语言实例 - 判断正数/负数
C 语言实例 - 判断正数/负数 用户输入一个数字,判断该数字是正数还是负数或是零. 实例 #include <stdio.h> int main() { double number; p ...
- Domination
题目链接 #include <bits/stdc++.h> using namespace std; typedef long long ll; inline ll read(){ , f ...
- Hexo写作系列(3) - 文章标题含有双引号"导致页面渲染失败无法打开
问题 在用Hexo写文章时,如果文章标题含有双引号",也就是说如果在文件头里的title出现双引号,如下: --- title: Hexo - 文章标题含有双引号"导致页面渲染失败 ...
- 如何使用localStorage?
首先使用localStorage的时候,我们需要判断浏览器是否支持localStorage这个属性. if(!window.localStorage){ alert("浏览器支持locals ...
- [Leetcode]003. Longest Substring Without Repeating Characters
https://leetcode.com/problems/longest-substring-without-repeating-characters/ public class Solution ...
- win7设置管理员权限
1.在运行中输入:secpol.msc 2.修改设置权限设置 3.在账户中, 将administrator启用并设置密码 将其他用户取消管理原权限,设置为user权限