David Malan teaching CS75 lecture 9, Scalability
https://youtu.be/-W9F__D3oY4
Storage
PATA, SATA, SAS (15,000 rpm), SSD,
RAID0 : striping, double throughput / size, no redundancy; RAID1 : mirror; RAID2 : bit-level striping with parity, not used today; RAID3 : bit-level striping with dedicated parity drive, not used today; RAID4 : block-level striping with dedicated parity ; RAID5 : block-level striping with dedicated parity, single drive failure tolerance; RAID6 : block-level striping with double parity, two drive failure tolerance
NAS, a file server, accessed through NFS, SMB etc.
SAN, a virtual disk, accessed through iSCSI, Fiber Channel etc.
Vertical scaling
Horizontal scaling
DNS round-robin load balancing, heavy vs. light requests
load balancer
Software-based LB: ELB, HAProxy, LVS etc.
Hardware-based : F5, Cisco, Citrix etc.
cookie/session affinity (sticky session)
separate session server (e.g. a redis or MySQL server for hash table)
LB inserts cookie content to remember backend-id
this is standard approach actually nowadays, AWS ELB (Elastic Load Balancer) provides this feature as service, http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/elb-sticky-sessions.html, for example, you can specify a cookie name which will drive the distribution of requests.
Caching
DNS cache
MySQL Query Cache
memcached
Database Replication
master / slave : and you can make master write-only, and slaves obviously read-only
master / master - slave set up
Database Partitioning
mit.facebook.com.
LB, cross data center, geolocation distribution
David Malan teaching CS75 lecture 9, Scalability的更多相关文章
- ISOMAP
转载 https://blog.csdn.net/dark_scope/article/details/53229427# 维度打击,机器学习中的降维算法:ISOMAP & MDS 降维是机器 ...
- [C2P3] Andrew Ng - Machine Learning
##Advice for Applying Machine Learning Applying machine learning in practice is not always straightf ...
- Cs231n课堂内容记录-Lecture 3 最优化
Lecture 4 最优化 课程内容记录: (上)https://zhuanlan.zhihu.com/p/21360434?refer=intelligentunit (下)https://zhua ...
- David Silver强化学习Lecture3:动态规划
课件:Lecture 3: Planning by Dynamic Programming 视频:David Silver强化学习第3课 - 动态规划(中文字幕) 动态规划 动态(Dynamic): ...
- David Silver强化学习Lecture2:马尔可夫决策过程
课件:Lecture 2: Markov Decision Processes 视频:David Silver深度强化学习第2课 - 简介 (中文字幕) 马尔可夫过程 马尔可夫决策过程简介 马尔可夫决 ...
- David Silver强化学习Lecture1:强化学习简介
课件:Lecture 1: Introduction to Reinforcement Learning 视频:David Silver深度强化学习第1课 - 简介 (中文字幕) 强化学习的特征 作为 ...
- [Stats385] Lecture 01-02, warm up with some questions
Theories of Deep Learning 借该课程,进入战略要地的局部战斗中,采用红色字体表示值得深究的概念,以及想起的一些需要注意的地方. Lecture 01 Lecture01: De ...
- How to give a math lecture
摘自 http://www.timhsu.net/courses/generic/proof.pdf 或 http://www.timhsu.net/courses/generic/how-to- ...
- Lecture notes of Mathematical analysis
Lecture notes of Mathematical analysis Preliminary theory Teaching purpose: Mathematical analysis is ...
随机推荐
- 配置springMVC时出现的问题
配置springMVC时出现的问题 项目结构如图:
- [转]JS学习之正则表达式
js正则表达式实例 正则表达式可以: •测试字符串的某个模式.例如,可以对一个输入字符串进行测试,看在该字符串是否存在一个电话号码模式或一个信用卡号码模式.这称为数据有效性验证 •替换文本.可以在文档 ...
- 云服务器 ECS Linux CentOS 修改内核引导顺序
由于 CentOS 7 使用 grub2 作为引导程序,所以和 CentOS 6 有所不同,并不是修改 /etc/grub.conf 来修改启动项,需要如下操作: 1. 查看系统内部有多少个内核: c ...
- (转)三层和mvc
先说下两者出现的目的:三层是一种为了Project间解除耦合所提出来的简单的分层方式但MVC其实并不是基于Project的分层方式,而是一种解除展示模板与主要访问控制依赖的设计模式(其实全部都是基于U ...
- Web框架和Django基础
核心知识点 1.web应用类似于一个socket客户端,用来接收请求 2.HTTP:规定了客户端和服务器之间的通信格式. 3.一个HTTP包含两部分,header和body,body是可选,\r\n分 ...
- Database: coursera assignment 1
q.1: Find the titles of all movies directed by Steven Spielberg. select title from moviewhere direct ...
- JDBC超时原理与设置
抄录自网上,因为担心以后找不到,因此抄录之.感谢分享的大神! 英文原版:http://www.cubrid.org/blog/dev-platform/understanding-jdbc-inter ...
- appium-andriod自动化实现注意项
注意项: 1.appium需要全局安装,否则run test case 报错“appium not installed” 2.启动appium命令 node /Applications/Appium. ...
- Ubuntu 17.4下如何安装VMwareTools
解压vmware-tools-distrib 运行vmware-install.pl安装过程中间出现错误,要求选择"ifconfig"工具.由于ifconfig工具过时逐渐被各大厂 ...
- Ubuntu 17.4下如何安装和配置flash player
Ubuntu Linux系统下没有自带的flash player,要自己手动安装.下面post出简单的安装过程. 首先打开终端,输入命令:sudo apt-get install flashplugi ...