【Web探索之旅】第三部分第一课:服务器
内容简介
1、第三部分第一课:服务器
2、第三部分第二课预告:IP地址和域名
第三部分第一课:服务器
大家好,欢迎来到【Web探索之旅】的第三部分。这一部分有不少原理,还是很重要的。
这一部分我们会着眼于一个Web site(网站)是如何工作的,我们会更深入地了解Web背后的网络。这里的网络是network,泛指Web中的各台机器之间互相“交流”。
还记得我们之前将Web形象地比喻成什么吗?
对了,就是一个很大的蜘蛛网。对于有蜘蛛恐惧的朋友我只能献上我诚挚的歉意,看到我真挚的表情了吗。
万维网(Web)就很像一个蜘蛛网,网上的每个节点代表一台机器,而连接它们的丝线,就是network。
我们上几课也介绍了,这些机器中,有的是客户机,有的是服务器。那么我们的Web就是类似这样的:
客户机就是我们用户的电脑,手机,平板之类。服务器就是那些生成或储存网站的电脑,它们会把网站传送给各个客户机。
对于客户机,我们已经比较熟悉了,不是吗?因为我们每天使用我们的电脑,手机,平板等上网的时候,我们的这些设备就相当于一个个的客户机。
那么服务器长啥样呢?颜值如何?高矮胖瘦,是不是白富美,高富帅?(小编你的药不能停啊...)
我们就来一窥堂奥吧。
数据中心(Data center)
数据中心,顾名思义,就是存放数据的地方。但是这个与我们之前所介绍的数据库又不一样。数据库更像是抽象的概念,而数据中心则是有实体的。
数据中心大概是长这样的:
是不是看起来很神秘,想要进去窥探一番呢?
数据中心其实一般就是服务器的“家”啦,这里“生活”着很多台服务器,有时候甚至有成百上千台。它们都很整齐地挤在这个大屋子里。
全世界有非常多像这样的数据中心,这些数据中心里的服务器辛勤劳动,7天24小时不停机的为全球各地的客户传送各种网页。真真是极好的。
一般小公司的数据中心可能没那么大,也许只有十几台服务器,可能只占地几平方米,也比较简陋,兴许都不会单独分一个房间,可能在仓库里也说不定。
但是大公司比如Google,Facebook,微软,它们的数据中心可是分布于世界各地,每一个几乎都有非常多的服务器同时工作,而且一般都是很高大上的。
要进大型数据中心可不是件容易事,这些房间都是高度戒备的。要进去需要穿好特制服装,比如防辐射的衣帽,鞋子也有讲究,还需要佩戴一些数码监控设备。
数据中心需要配备空调,因为这些服务器如此勤奋地工作,产生很多热量,如果没有空调制冷,那么这些服务器会过热烧坏。一般理想的温湿度是20-25摄氏度(68-75 华氏)和湿度40-55%。
大型数据中心消耗的电是和一个小城镇工业业务规模一样多的,不可思议吧。
数据中心很重要,假如服务器坏了,那么类似携程那样的悲剧岂不是又要上演了么。假如微软的服务器集体坏掉,网站进不去,那损失可大了。
正是因为数据中心如此重要,其中的配备除了空调以外,一般还有:
供电:备份电源由一个或多个不间断电源供应,柴油机或燃气发电机组成,或者有大型电池。即使断电,还可以用备份电源维持服务器一定时间的工作。
消防系统:烟检测器都会被安装,它可以在有火焰之前检测到焖烧产生的烟的源点,而发出警报。这允许调查,中断电源,并使得能够在火灾变大之前,让人使用灭火器灭火。一个自动喷水灭火系统常常被用来控制火势发展为大范围的火灾。
保安:视频监视和永久保安员常常被用于大型的数据中心或者包含机密信息的数据中心。
服务器机柜
在数据中心里,我们可以看到一排排的像柜子一样的装备。每个“柜子”里面整齐地“居住”着一台台服务器,这些被称为“服务器机柜”。
我们把之前的数据中心的画面放大一些,拉近一点,可以看到服务器机柜上的服务器是长这样的:
可以看到,每台服务器的背后都连接了一些网线。
服务器可不是一般的电脑,它们通常是没有屏幕的,因为不需要屏幕,它们的工作主要就是生成网页,与数据库交互,发送网页给客户机。每台服务器的配置不尽相同,但是一般都要比平时的家用电脑高很多,比如有的服务器的内存就可以达到80GB,CPU也很强力,想想其处理能力也是醉了。
服务器维护工程师
数据中心里的服务器需要长期维护,所以维护工程师就出马了。一般企业中的System Administrator也会做服务器的维护工作。
维护服务器是很累人的,因为数据中心辐射强,气温低,压力大,时刻要小心。
服务器一般都是没有屏幕的,如果出现故障,有时候就需要维护工程师连接服务器和自己的电脑,在电脑屏幕上可视化地进行诊断工作。类似下图:
海底光缆
我们知道服务器和服务器之间,服务器和客户机之间,整个Web网络,都需要很多的网线来连接,这些网线有大有小,最粗壮的大概要数海底光缆(Submarine Optical Fiber Cable)了吧。
这些线路被铺设在海底,连接各个国家和各个大洲。用绝缘外皮包裹的导线束铺设在海底,海水可防止外界光磁波的干扰,所以海缆的信噪比较高;海底光缆通信中感受不到时间延迟。
下图为三芯海底光缆:
海底光缆的设计寿命为持续工作25年,而人造卫星一般在10到15年内就会燃料用尽。
全球99%的网络都是走海底光缆。
世界各国的网络可以看成是一个大型局域网,海底和陆上光缆将它们连接成为互联网,光缆是Internet 的“中枢神经”,而美国几乎是Internet 的“大脑”。
美国作为Internet 的发源地,存放着很多的Web和IM(如MSN)等服务器,全球解析域名(例如 baidu.com, google.com等)的13个根服务器就有10个在美国,登录多数 .com 、.net 网站或发电子邮件,数据几乎都要到美国绕一圈才能到达目的地。
全世界第一条海底电缆是1850年在英国和法国之间铺设,小小得意一下,因为小编住在法国南部。
总结
服务器生成网页,储存网页,并将其分发到各个客户端上。服务器一般都位于被称为数据中心的房间里。
服务器之间以网线相连,很多数据都是通过海底光缆传输的。
第三部分第二课预告
今天的课就到这里,一起加油吧!
下一课我们学习:IP地址和域名
程序员联盟 微信公众号
*您若觉得本文不错,请点击画面右上角《···》按钮分享
*新朋友请关注「程序员联盟」微信搜公众号 ProgrammerLeague
程序员联盟官网:
小编微信号: frogoscar
小编邮箱: enmingx@gmail.com
小编QQ号: 379641629
程序员联盟QQ群:413981577
程序员联盟微信群:先加我微信
头条网自媒体“程序员联盟”:
http://www.toutiao.com/m3750422747/
小编的51CTO博客,CSDN博客,博客园,新浪博客和开源中国博客
http://4526621.blog.51cto.com
http://blog.csdn.net/frogoscar
http://www.cnblogs.com/frogoscar
http://blog.sina.com.cn/frogoscar
http://my.oschina.net/frogoscar/blog
【打赏小编】
觉得文章对您有帮助,请纪念小编的辛勤劳动,扫描二维码打赏小编,谢谢!
支付宝
Paypal
【Web探索之旅】第三部分第一课:服务器的更多相关文章
- 【Web探索之旅】第二部分第一课:客户端语言
内容简介 1.第二部分第一课:客户端语言 2.第二部分第二课预告:服务器语言 第二部分:Web编程语言和工具 大家好.上一个部分我们学习了Web的一些基本概念: 什么是Web? Internet和We ...
- 【C语言探索之旅】 第二部分第一课:模块化编程
内容简介 1.课程大纲 2.第二部分第一课: 模块化编程 3.第二部分第二课预告: 进击的指针,C语言王牌 课程大纲 我们的课程分为四大部分,每一个部分结束后都会有练习题,并会公布答案.还会带大家用C ...
- 【C语言探索之旅】 开宗明义及第一课:什么是编程?
内容简介 1.课程大纲 2.第一部分第一课:什么是编程? 3.第一部分第二课预告:工欲善其事,必先利其器 课程大纲 不知道为什么,一直对C语言有一种很深厚的“情怀”(类似老罗对锤子手机的那种),说 ...
- 【C++探索之旅】第二部分第一课:面向对象初探,string的惊天内幕
内容简单介绍 1.第二部分第一课:面向对象初探.string的惊天内幕 2.第二部分第二课预告:掀起了"类"的盖头来(一) 面向对象初探,string的惊天内幕 上一课<[C ...
- 【Linux探索之旅】第二部分第一课:终端Terminal,好戏上场
内容简介 1.第二部分第一课:终端Terminal,好戏上场 2.第二部分第二课预告:命令行,世界尽在掌握 终端Terminal,好戏上场 随着第一部分的结束,我们进入了第二部分(小编你这好像是废话. ...
- 【Web探索之旅】第二部分第二课:服务器语言
内容简介 1.第二部分第二课:服务器语言 2.第二部分第三课预告:框架和内容管理系统 第二部分第二课:服务器语言 介绍了Web的客户端,我们来谈谈Web的服务器端. 既然客户端有客户端的编程语言(HT ...
- 【Linux探索之旅】第二部分第二课:命令行,世界尽在掌握
内容简介 1.第二部分第二课:命令行,世界尽在掌握 2.第二部分第三课预告:文件和目录,组织不会亏待你 命令行,世界尽在掌握 今天的标题是不是有点霸气侧漏呢? 读者:“小编,你为什么每次都要起这么非主 ...
- 【Web探索之旅】第三部分第一课:server
wx_fmt=jpeg" alt="0? wx_fmt=jpeg" style="height:auto"> 内容简单介绍 .第三部分第一课:s ...
- 【Web探索之旅】第一部分:什么是Web?
内容简介 1.Web探索之旅:开宗明义 2.第一部分第一课:什么是Web? 3.第一部分第二课:Web,服务和云 4.第一部分第三课:Web的诞生史 Web探索之旅:开宗明义 大家好. 我们这个系列课 ...
随机推荐
- HashTable的数组和连接两种实现方法(Java版本号)
1.散列表的接口类 package cn.usst.hashtable; /** * 散列表的接口类 * @author G-Xia * */ public interface HashTable { ...
- JAVA线程相互排斥问题
public class TraditionalThreadSynchonized { public static void main(String[] args) { final OutPuter ...
- java Process在windows的使用汇总(转)
最常用的是ant(java工程中流行),maven,及通用的exec(只要有shell脚本如.sh,.bat,.exe,.cmd等).而其实前两者不容易出错,后者却遇到了以下问题:Caused by: ...
- hdu3605(最大流+状态压缩)
传送门:Escape 题意:给出每个人适合住的星球信息和该星球能住多少人 ,第一行给出n m 代表有 n 个人 m 个星球,然后接下来n行每行m个数字 1代表适合第 i 个星球 0 代表不适合第 i ...
- 跨平台网络通信与server编程框架库(acl库)介绍
一.描写叙述 acl project是一个跨平台(支持LINUX,WIN32,Solaris,MacOS,FreeBSD)的网络通信库及server编程框架,同一时候提供很多其它的有用功能库.通过该库 ...
- -bash: ./job.sh: /bin/sh^M: bad interpreter: 没有那个文件或目录
昨天在windows下用写字板写了个shell脚本,使用winscp上传到linux上运行的时候发现运行不了,提示-bash: ./job.sh: /bin/sh^M: bad interpreter ...
- Ubuntu 32下Android NDK+NEON的配置过程及简单使用举例
1. 利用VMware在Windows7 64位下安装Ubuntu13.10 32位虚拟机: 2. 从 https://developer.android.com/tools/sdk/ndk/in ...
- BytesWritable 存储问题
public static void main(String args[]){ BytesWritable cv = new BytesWritable(); String str1 = " ...
- 【译】ASP.NET MVC 5 教程 - 5:使用 SQL 服务器 LocalDB 创建连接字符串
原文:[译]ASP.NET MVC 5 教程 - 5:使用 SQL 服务器 LocalDB 创建连接字符串 在上一节中,我们创建了MovieDBContext 类来连接数据库.处理Movie 对象和数 ...
- Java反射机制小例子
package com.wjy.main; import java.io.Console; import java.lang.reflect.Constructor; import java.lang ...