无脑无负担网站架构-- Application Request Route的一些应用
首先作为一个.net 程序员,多数情况你懒的整什么架构啊、框架啊、还有那命令行的linux,别说linux也有桌面,那个桌面用起来更让人抓狂,一直不明白居然有人说喜欢上linux的命令行,装B还是SB呢?好把不管是生活所迫还是兴趣爱好,或者什么别的动机,今天兄弟讲的结构绝对搞起来轻松用起来方便(当然装win2008好象不比装linux轻松多少,希望你那有个网管帮忙搞定)。
先上图
反向代理服务器的安装配置
1.首先是安装一台Win2008 带IIS7 的服务器,上面按装ARR(Application Request Route)
2.在IIS7上建立个站点,因为要所有请求需要通过这个站点转发的.
3.配置反向代理,把应用服务器都加进去(这些应用服务器上应该布置同一套程序)
应用服务器的配置
有几点需要注意,cookie由于是客户端的所以可以放心使用,Session最好别用虽然你可以配置成数据库或Session服务器但是还是碰到过不少状况。
因为在多台服务器中运行,需要进程或线程同控制时考虑使用数据库做锁定,或者专门提供一台服务起包装相应的服务并对外提供接口。
文件与图片服务器
使用windows共享盘的方式在应用服务器上建立同样的盘符映射。
其他服务器配置
缓存服务器使用windows系统,按装mamcached,数据库sql2005 企业版以上都可以有热备份功能,需要在完整日志下运行
关于不海量图片的存储
1.上的结构可以通过增加共享盘来扩充容量,但是有限,好在图片不是很多.
2.采用ARR,使用Query String Hash方式将文件读写平滩到多台文件服务器上,具体作法是
上传图片时由客户端生产一个数字编号,一般是长整时间戳,上传地址看起来是这样的 xxx/xxx/postimg.ashx?rqid=141341234
由于采用query string hash那么只要你访问时带上rqid如 xx/adasd/xx.jpg?rqid=141341234 就可以保证反向代理把请求路由到保存图片的服务器了.
千万注意ARR的hash算法是一致性hash算法,你图片服务器发生增减后同样的rqid可能会被路由到不同的图片服务器上,切记你要一次规划好未来X年左右的存储量需求来一次性添加对应台数的服务器,同时每次上传文件时在数据库记录(RqId,Server,FileName,AddTime,refId)以免出现意外时找不到图片在那台服务器.
3.自己实现反向代理,参考上面的第2种方式,使用asp.net的地址重模块,根据文件时间戳将文件平滩到不同的服务器,当然需要采用集成模式来将jpg这样的地址重写,具体过程是这样的
首先安排了3台服务器运行了x年后来又加了5台服务器运行y年,后来又...(还有后来的话那么请直接采用分布式文件系统把,这里不适合你了)
我们需要根据时间戳(那个rqid)将x这些年的请求分配给那3台服务器,而针对这3台幅器的具体分配还是采用hash算法,后面处理类似,当然这样的过程经历两次应该就到你这个系统的使用寿命了,如果还要扩充,那还不如学习并使用HDFS,TFS这样的架构把(对了你转做网管了吗)
4.准备img1.xxx.com img2.xxx.com 多台对外的ip并帮定上面的域名把(好在二级域名不要钱IPv6早点普及把),代码里写把。
无脑无负担网站架构-- Application Request Route的一些应用的更多相关文章
- IIS负载均衡-Application Request Route详解第二篇:创建与配置Server Farm(转载)
IIS负载均衡-Application Request Route详解第二篇:创建与配置Server Farm 自从本系列发布之后,收到了很多的朋友的回复!非常感谢,同时很多朋友问到了一些问题,有些问 ...
- IIS负载均衡-Application Request Route详解第一篇: ARR介绍(转载)
IIS负载均衡-Application Request Route详解第一篇: ARR介绍 说到负载均衡,相信大家已经不再陌生了,本系列主要介绍在IIS中可以采用的负载均衡的软件:微软的Applica ...
- IIS负载均衡-Application Request Route详解第一篇: ARR介绍
IIS负载均衡-Application Request Route详解第一篇: ARR介绍 说到负载均衡,相信大家已经不再陌生了,本系列主要介绍在IIS中可以采用的负载均衡的软件:微软的Applica ...
- IIS负载均衡-Application Request Route详解第四篇:使用ARR实现三层部署架构(转载)
IIS负载均衡-Application Request Route详解第四篇:使用ARR实现三层部署架构 系列文章链接: IIS负载均衡-Application Request Route详解第一篇: ...
- NLB+Application Request Route 网路负载均衡
NLB网路负载均衡管理器详解 序言 在上一篇配置iis负载均衡中我们使用啦微软的ARR,我在那篇文章也中提到了网站的高可用性,但是ARR只能做请求入口的消息分发服务,这样如果我们的消息分发服务器给 ...
- Application Request Route实现IIS Server Farms集群负载详解
序言 随着公司业务的发展,后台业务就变的越来越多,然而服务器的故障又像月经一样,时不时的汹涌而至,让我们防不胜防.那么后台的高可用,以及服务器的处理能力就要做一个横向扩展的方案,以使后台业务持续的稳定 ...
- Windows下应用级别的IIS负载均衡方案 Application Request Route
转载于:https://blog.csdn.net/2000killer/article/details/51228625 序言 随着公司业务的发展,后台业务就变的越来越多,然而服务器的故障又像月经一 ...
- [转帖]Application Request Route实现IIS Server Farms集群负载详解
Application Request Route实现IIS Server Farms集群负载详解 https://www.cnblogs.com/knowledgesea/p/5099893.ht ...
- IIS ARR(Application Request Route)与反向代理(Reverse Proxy)
为何要用反向代理? 这里说说我的场景, 我在服务器上假设了SVN(Visual SVN)用的端口是:8080, 而我想通过输入svn.niusys.com就可以访问我的SVN服务器,也就是要通过80端 ...
随机推荐
- 基于typescript 强大的 nestjs 框架试用
nestjs 一个nodejs 的graphql 框架 安装 npm i -g @nestjs/cli 初始化项目 nest new dalong 运行demo 使用yarn yarn start 添 ...
- Trie树学习1
Trie树.也称为字典数,前缀树,每一个单词的每一个字母依照顺序相应一个节点.有重合的前缀就共享节点. 理想情况下(满的情况).假若全部的单词都是N长,则树共同拥有N层,每层都是26个子节点. 在程序 ...
- Linux和Docker常用命令
一.常用Linux 命令 ls -a(同时列出隐含文件), -l(输出一个比较完整的格式,除每个文件名外,增加显示文件 类型.权限.硬链接数.所有者名.组名.大小(byte).及时间信息-----简化 ...
- Pacemaker+Corosync搭建PostgreSQL集群
https://my.oschina.net/aven92/blog/518928 · PostgreSQL中国社区: http://postgres.cn/index.php/home · Post ...
- panabit web认证界面个性化
原理:利用js代码在前端页面进行个性化 1.禁止信息提示 url:http://192.168.0.246:8010/restrict.htm 文件:restrict.png restrict.ht ...
- 移动端开发之px,em和rem详解
px:表示的是绝对的像素值,1px就是1像素大小 em:关于em,网上有资料说是关于父元素的,但是其实个人感觉这种说法是不对的,其实em的大小是根据自身的font-size确定的,而只是正常的情况下子 ...
- HDU 1358 Period (kmp判断循环子串)
Period Time Limit : 2000/1000ms (Java/Other) Memory Limit : 65536/32768K (Java/Other) Total Submis ...
- mysql 5.6.15升级到5.6.43
今天闲来无事,观察测试环境的zabbix服务器,发现内存泄漏严重,于是重启了,想起了前几天写的帖子发生了严重的内存泄漏可以把mysql升级到最新的小版本 于是乎就试着升级 old version:5. ...
- JavaScript之深拷贝&浅拷贝
深拷贝&浅拷贝,说起来都明白,但是说不出所以然.今天就系统的整理下思绪,一点点的将其分析出所以然 废话不多说 浅拷贝 简单的说就是一个值引用,学生时代接触过编程的人都应该了解过指针,浅拷贝可以 ...
- Python开发一个WEB聊天室
项目实战:开发一个WEB聊天室 功能需求: 用户可以与好友一对一聊天 可以搜索.添加某人为好友 用户可以搜索和添加群 每个群有管理员可以审批用户的加群请求,群管理员可以用多个,群管理员可以删除.添加. ...