乐趣区

关于服务器:理论研究漫谈传统IT基础设施04服务器下

本文欢送转载,转载请注明出处和作者。

最初,从部署利用的维度,对服务器进行一下探讨。

何谓服务器

所谓服务器,其实就是硬件配置比拟好(CPU、内存等),关键部件冗余配置(电源、网卡等),装置了可能开机自启动及对外服务的应用程序,可能 7 *24 小时全天候不关机且能稳固运行不死机的电脑。

说白了,当你的笔记本装置了 windows 零碎,而后右键属性将文件夹设置共享,并且设置好拜访权限。局域网内的受权用户可能“\ 你的笔记本 IP 地址”,就能拜访你的共享目录。那么你的笔记本电脑,在某种意义上,就是文件服务器了。

你的笔记本电脑,装置了个播放器软件,可能播放小电影了,某种意义上,也是个媒体服务器了。

如何用服务器构建业务零碎

在以往,特地是 WEB1.0 的时代,也就是动态网页的时代。上网就是为了关上网站,而网站基本上都是相似新闻门户类的网站。信息是单向流传的,也就是你只能下来网站浏览信息,他们给你看啥你就看啥,他们不给你看啥,你就没得看。并且看归看,既不能评论,也不能转发,所以用户与网站齐全是零交互的。

动态网站

这种状况下,只须要找台服务器,装置上 Windows/Linux 操作系统,并且进入操作系统之后,Windows 装置自带的 IIS 性能,Linux 装置个 Apache 的软件(动态网站软件),而后编写一些 html 文件,放到指定目录外面,网站就能够供他人拜访了。

(当然这里只谈服务器,网络什么私网地址 NAT 映射至公网地址等货色暂且不表)

这个时候,业务零碎就单纯是单台服务器 + 动态网站应用软件(IIS/Apache)。

记得那个年代有很多网页开发的书籍,就叫做《网页制作三剑客》,次要是讲述应用 Macromedia 公司开发进去的,Dreamweaver,Fireworks,Flash 三个软件,来进行网站开发。Dreamweaver 能够做页面布局与网页元素的排列,Fireworks 图像、矢量图的编辑,Flash 预计就不必多作介绍了,能够做那个年代很火的动画制作。

然而那时候,这些网站也会称本人为动静网站,然而这里的“动静”,是指例如页面的广告位的图片会主动轮换,页面的 Banner 会有 Flash 插入的动画,会有个简略的动画播放。而不是当初的“动静网站”,指的是与用户有交互,例如用户有账户,能够登录、回帖、评论、签到、秒杀等。

动静网站

到了 WEB2.0 时代,单向传输信息曾经不能满足人们的诉求了。网民上网要求可能与网站交互,单纯的动态页面就不够用了。

这个时候,服务器首先还是要装置动态网站的软件(IIS/Apache),而后既然要存储用户的账号、明码、身份信息、评论等内容,当然要找个中央存取(存入与读取),所以就要装置数据库软件了(支流 mysql、Oracle、SQL Server)。动态网站的软件是怎么与数据库连接起来的呢。

动态网站软件用的是 html 语言编写的 html 的文件,而数据库软件则是用的 SQL 命令进行存取的货色,相当于一个讲中文,一个讲英文,所以这两个货色是通信不了的。

那么怎样才能让一个讲中文的中国人与一个讲英文外国人失常沟通呢?那当然就是找个翻译当中间人啦。

计算机亦然,所以就呈现了 PHP、JSP、ASP 等动静网页语言,相当于能够将前端 html 的申请翻译成 SQL,而后从数据库外面读取数据,翻译为 html 的语言,而后再返回给前端。

这里就不能不介绍经典的 LAMP 组合了,Linux+Apache+Mysql+PHP,因为 4 个软件都是开源的,收费、轻量、容易部署,因而很多集体利用(如博客),企业守业初期,LAMP 都是用作建站的首选架构。

这个时候,能够在单台机器(Linux/Windows)下面装置好 Apache+Mysql+PHP,而后将写好的网站内容放上指定目录,把几个服务都起起来,并且互相买通即可。此时业务零碎,就是 1 台服务器。

基本功能拆分

用户规模日渐增大,单台机器的性能有余了,此阶段最简略的做法就是拆分机器。2 台(1 台 WEB 服务器–装置 Apache 与 PHP,1 台数据库服务器–装置 mysql),就可能很好地晋升问题。而一个动静网站(一个最小化的残缺业务零碎),就是 1 台 WEB 服务器与 1 台数据库服务器就构建起来了。

这就是之前说的服务器为什么依照性能维度划分,分为 WEB 服务器与数据库服务器的起因了。有点像化学外面,“原子(动静网站)是化学变化(业务零碎)外面的最小粒子,由原子核(WEB 服务器)与电子(数据库服务器)组成”一样。

继续增加性能

随着用户量的增长,原有的设施,无论是性能(纵向),还是性能(横向),很可能都无奈持续满足业务零碎的倒退要求。

这个时候,纵向须要持续减少 WEB 与数据库服务器。

横向,就要依据性能需要减少形形色色的其余类型服务器了,并且这些性能服务器通常只为了解决一个类型的问题:

例如可能把网站的动态图片集中寄存到 1 台服务器,html 下面的图片地址间接指向这台服务器的图片,不必从数据库外面提取,放慢页面加载速度(缓存服务器)。

或者将用户上传的文件寄存到 1 台服务器,供大家共享上下载。(文件服务器)

或者将所有打印机驱动与打印机装置到 1 台服务器,所有用户都通过连贯这台服务器来与打印机通信,打印。(打印服务器)

因为这些性能大多都只为了解决某一个需要 / 问题,而且基本上都在一条平行线上,互不穿插 / 重叠,没有交加,不好对它们分门别类。

因而个别就把他们归类为除 WEB 与数据库服务器之外的第三类:应用服务器(其实文言说,就是其余性能服务器)。

说完这一节,传统 IT 基础设施服务器局部的实践就讲完了,前面就开始讲网络局部的实践。

更多精彩内容,能够关注我的 微信公众号 Waiting 的运维日常

本篇文章由一文多发平台 ArtiPub 主动公布

退出移动版