Azure进阶攻略 | 应用流畅运行杜绝超载,自有一套好方法
世界上很多东西,无论交通工具、房屋建筑,甚至计算机程序,在容量方面都存在设计上的理论最大值。
比如火车,正常情况下是这样的。舒适地坐着,安静地读一本书,时不时抬头若有所思地远眺车窗外风景,满满的文艺范儿:
但如果是这样,是否舒适暂且不说,重要的是,这样很不安全好吗……
计算机程序也是如此。很多程序正常情况下往往会在诸多方面存在容量上的最大值,比如可以使用的 CPU 内核数,所生成文件中可以包含的内容行数或者容量字节数,甚至是可以同时接受的网络连接数量都有上限。
这种容量「上限」主要是为了确保程序能够在合理的范围内流畅运行,满足用户的预期需求。如果不进行限制,往往会造成很多不必要的麻烦。
举个栗子:某直播软件为了向用户提供视频直播服务,每个用户需要预留 500kbps(0.5mbps)的带宽,而他们使用的服务器,每台服务器的网络带宽最高只有 1000mbps。一个简单的数学运算就可以告诉我们,理论情况下,单台服务器最多只能同时为 1000 ÷ 0.5 = 2000 个用户提供服务。如果不进行限制,放任更多用户连接同一台服务器,每个人的观看体验都无法保障。
那么Azure Web应用的连接数限制是多少,你知道吗
通过 Azure Web 应用服务托管网站或应用程序的童鞋需要注意,Azure Web 应用服务也有类似的限制,不过注意啦限制的不是带宽,而是对外连接数。
取决于 Web 应用服务所用实例的规模,在对外连接数方面存在下列限制:
当超过最大对外连接数时,Azure Web 应用将会产生套接字异常。同时要注意的是,这个限制是针对单个Web 应用实例而言的。也就是说,如果通过同一个 Web 应用实例托管了多个应用,那么所有应用的对外连接总数将受制于上述限制。了解详情,请点击这里。
那么,到达上限之后该怎么办?
这里小编告诉大家一个简单的办法哦!如果小实例超限,可以升级为中实例或者大实例;如果中实例超限,可以直接升级为大实例。这个操作可以在 Azure 管理后台进行,按照具体需求选择要使用的实例规模就行了。
这种对系统本身的容量进行「扩大」的做法叫做Scale-Up(向上缩放),可以简单理解为给运行 Web 应用的服务器添置了更多 CPU、内存、硬盘之类的资源。
那么,如果本身就已经在用最大规模的实例,可连接数还是频繁超限,又该怎么办?
这时可以进行 Scale-Out(向外缩放),可以简单理解为添加更多台服务器,通过多台服务器同时承载我们的 Web 应用。这个操作也可以在 Azure 管理后台进行,我们可以根据需要选择要使用几个实例来运行 Web 应用,最多可以选择 20 个。
无论 Scale-Up 或 Scale-Out,改动会在几秒钟内应用给 Web 应用中承载的所有应用。
最后需要注意的是,上述限制和缩放方法仅适用于 Azure Web 应用服务中基本、标准,以及高级级别的实例,因为只有这些实例是通过专属虚拟机运行的,可以根据需要进行缩放。Azure Web 应用中的免费和共享级别实例会通过共享虚拟机运行,无法自行缩放,且会受到更多限制(因为这两个级别主要针对测试和简单的需求,并不推荐在生产环境中使用)。
对于 Azure Web 应用服务的缩放,还有其他方面的问题需要考虑,详情请戳【这里】了解。了解更详细的缩放应用服务计划,请点击这里。
Azure进阶攻略 | 应用流畅运行杜绝超载,自有一套好方法的更多相关文章
- Azure进阶攻略丨Azure网络通不通,PsPing&PaPing告诉你答案
很多时候,为了解决一些问题,要查各种文档,很麻烦你造吗!做「伸手党」又容易被鄙视,这时候就需要用到[Azure 进阶攻略]啦!特此,我们推出关于 Azure 常用操作指南的系列文章,每篇涉及一个 Az ...
- Azure进阶攻略丨共享访问签名是个什么东东?
Azure 进阶攻略]一经推出便受到了广大粉丝的热情追捧,大家纷纷表示涨了姿势,并希望能了解更多的攻略~根据大家的投票结果,本期,小编将为大家讲解“如何生成 Shared Access Signatu ...
- Azure进阶攻略丨如何驾驭罢工的Linux虚机网卡?
很多人的生活中,流传着一个屡试不爽,据说可以解决任何问题的百宝锦囊: 所以经常可以听到类似这样的对话: -我的电脑咋上不去网了? -重启一下电脑. -还是不行呢! -重启一下路由器. -怎么还不行-_ ...
- Azure进阶攻略 | 该如何唤醒你?因内核超时而沉睡的Linux虚拟机!
周五下午,当你收拾好东西准备下班,奔赴 Happy Hour 时,突然接到开发团队的电话: 对方:伙计救命啊,我在搭建开发环境,但 Azure 上的 Linux 虚拟机无法启动! 你(心里想着:你要加 ...
- Azure进阶攻略 | 你的程序也能察言观色?这个真的可以有!
前段时间有个网站曾经火爆微博和朋友圈:颜龄机器人.只要随便上传一张包含人面孔的照片,这个网站就可以分析图片,并判断照片中人物的年龄.化妆.美颜 P 图.帽子墨镜之类的配饰,几乎都没法影响这个网站的检测 ...
- Azure进阶攻略 | 数据库上云:零停机、自动化
小明最近挺忙,刚刚在外地找了个新工作,正在忙着搬家.多年积攒的家当很多,根本不能潇洒地「说走就走」,于是他联系了搬家公司.专业的就是不一样,不费什么事,就把所有东西打包.运输.拆包到位了.抵达新城市的 ...
- Azure 进阶攻略 | 电脑跑分你会,但虚拟机存储性能跑分的正确姿势你造吗?
想学生时代,小编最爱做的就是研究电脑硬件,然后给自己.朋友和童鞋装机.装好后呢?当然要第一时间跑分了!各种跑分软件运行一遍,不断优化,不断测试.终于得到一个满意成绩,截图分享到网上显摆一下.当年为啥就 ...
- Azure进阶攻略 | VS2015和Azure,想要在一起其实很容易
下雨天,巧克力和音乐很配…… 大冬天,男神和捧在手里的奶茶很配…… 「驴牌」的包包,和女神的全部衣服都配…… 对于「王首富」,容易实现的小目标和一个亿是绝配…… …… 醒醒吧!!这些事情和每天只会写代 ...
- Azure 进阶攻略 | 上云后的系统,「门禁」制度又该如何实现?
各位办公室白领们,不妨回想一下自己每天去公司上班时的一些细节. 为避免「闲杂人等」进入工作场所,我们需要证明自己是这家公司的员工才能进入,对吧!所有员工,无论所属部门或职位,都必须先证明自己身份,例如 ...
随机推荐
- kuangbin专题十六 KMP&&扩展KMP POJ2752 Seek the Name, Seek the Fame
The little cat is so famous, that many couples tramp over hill and dale to Byteland, and asked the l ...
- poj3728之离线LCA+dp思想/RMQ+LCA(非常好的题目)
题意很简单 给一个树(n < 5w) 每个点有个权值,代表商品价格 若干个询问(5w) 对每个询问,问的是从u点走到v点(简单路径),商人在这个路径中的某点买入商品,然后在某点再卖出商品, ...
- JavaScript trim 实现去除字符串首尾指定字符的简单方法
String.prototype.trim = function (char, type) { if (char) { if (type == 'left') { return this.replac ...
- vue 子组件调用父组件的函数
子组件调用父组件的函数,使用$emit(eventName,[...args]),触发当前实例上的事件.附加参数都会传给监听器回调. 子组件 <template> <div> ...
- ios中页面底部输入框,position:fixed元素的问题
在安卓上点击页面底部的输入框,软键盘弹出,页面移动上移.ios上,软件盘弹出,输入框看不到了.让他弹出时让滚动条在最低部 var u = navigator.userAgent, app = navi ...
- readline的用法
with open(r'C:\Users\admin\pycdtest\wanyue\llduizhang_20180207\33_1517970821000304388_119061116',enc ...
- python set_index与reset_index的妙用
- TCP连接的ISN、连接建立超时及TCP的长短连接
问题现象: 一.TCP连接的ISN 之前我们说过初始建立TCP连接的时候的系列号(ISN)是随机选择的,那么这个系列号为什么不采用一个固定的值呢?主要有两方面的原因 防止同一个连接的不 ...
- Java基础05-运算符
1.赋值运算符:= 2.算术运算符: (1)一元运算符: i++;先使用后自身加1 int i=1;int b=i+1; b=1 i=2 ++i;先对自身加1后使用 int j=1;int b=+ ...
- Python LoggerAdpater类
Logger子类: import logging # create loggermodule_logger = logging.getLogger('spam_application.auxiliar ...