推荐书籍有关服务器性能或者选购的

推荐书籍有关服务器性能或者选购的,第1张

真正意义上的服务器(数据服务器)硬件上至少应具备下面的特点:

一、较高的多任务处理能力。

我们的个人机一般CPU用的是单块,而服务器常常是双CPU,甚至4CPU,它能处理的并发线程数是个人机的一倍至几倍。而且,服务器的CPU一般比我们普通的个人机的要好。

我们的台式机用于一个人操作,上上网,玩玩游戏,打点文章,和其它。一般情况下,无论你怎么玩,同时开多少程序,同时活动的进程(电脑同时在处理的事情)不会超过二、三十个。而一台服务器当有上百、上千个人同时向服务器提出某些工作请求时,服务器就要有几百上千个线程。就网站服务器来说,如果你的网站同时访问量达到千人时,你的服务器可能产生的并发线程至少有几百,这时,如果是一般的家用台式机,基本上就慢如蜗牛(感觉象死机)。

当然,一般我们的网站能达到同时千人在线的不多,呵呵。如果你的网站能到平均二百人同时在线就非常吓人了,但是,这也不是一肌的家用电脑能受得了的(线程数在50以上)。如果你的网站只是准备玩玩,设计目标只是百人以下同时在线(这时并发线程应该在30以内),比较好的个人机还是能受得了的。

PS:对于网上一些超级大站,如中央电视台等等大网站他们是使用服务器组来对付千人以上同时在线的情况的,也就是说,用多台机采用集群等办法来对付。

二、稳定和巨量的内存。

1、服务器这东西首先必须保证的是稳定!因此最好要使用带ECC("错误检查和纠正")功能的内存。这种内存常常比我们常规内存慢,但是稳定度要高很多,也就是说,数据在内存中因硬件原因出错的可能性要小很多很多。

对于我们平常用的台式机来说,实际上在我们使用中内存很偶然地是会出错的,比如你家的机器在一个月内不明不白的死了两回机,你会根本不在意,因为偶然的死机对我们来说是司空见惯了,你也许会认为是软件的原因。我可以告诉你的是,基本上我们的普通电脑没有那台能不关机正常的使用一个月的,就算你使用的软件没有任何不应有的问题。问题在于我们的内存在一个月中亿万次的读写过程中总有几回不小心出了错。

而带有ECC功能的内存就能保证这个故障率在几个月甚至一二年中不出现一次。

当然,这是理论上的,如果你不在意你的网站偶然性的死两回,不在意用户的数据很偶尔的出点小错,用一般的内存问题也不大,呵呵。

2、内存在服务器上的原则也上越快越大越好,同时几百、上千人访问你的机器,机器为了应对他们消耗的内存当然也少不了!在当前,你至少也得二个G吧。

三、硬件冗余性。

打个比方,我们知道,我们一个人,如果左手断了,我们还可以用右手做事。我们身体上的很多部分都是这样。而我们普通的台式机就不同了,其本上稍重要一点的部件只要损坏,机器就无法开动了!

服务器则不然,部门级以上的服务器一般都拥有冗余能务,最典型的是:

1、配有多套电源供电系统,并外接两个(甚至多个)电源。也就是说,一台机器有两个电源插头,你可以将两个插头插向两个不同供电提供者的电源。当一个供电者出了问题,服务器可以正常工作。多套电源供电系统也保证了当服务器的一套电源供电部件中某个坏了,服务器还可以使用另一套正常工作。

2、配有多个CPU,其中的一个CPU坏了,多数情况下另一个还可以坚持工作。

3、硬盘镜像热备(这可能是最重要的了)。服务器上的数据对于很多应用来说,如果完蛋了损失可能是巨大的!硬盘镜像热备保证了你的服务器在某个硬盘损坏时你的数据不受任何影响,而且服务器还能正常工作。(当然,你得尽快买来新硬盘,否则,做热备的第二块也坏了那就真完完了)。

4、高速硬盘。一般服务器使用SCSI硬盘,这种硬盘的转速要几倍甚至几十倍于普通硬盘。这样才能应付快速的数据读写。而且在当前,硬盘镜像热备也一般依靠SCSI总线来完成。

四、拥有所有上面特点的服务器在当前的价位至少是2万以上(这几年便宜了很多哦,我们单位2003年购的一台这样的机器花了近7万)。具体价格很难说,一般网上查不到准确报价。如果你有兴趣,给你一个小窍门,打DELL的免费热线,就说你要买服务器,一般能搞到准确的价格(当然,你不要说实话)。

PS:在当前也有一些低档服务器根本没有上面的功能(或者只有上面的一两个),也叫服务器。那玩真不好怎么说了,呵呵。

起步

你应该为自己创造一个学习linux的环境--在电脑上装一个linux或unix

问题1:版本的选择

北美用redhat,欧洲用SuSE,桌面mandrake较多,而debian是技术最先进的linux

开发人员中用debian的最多,其次是redhat,从全球linux各应用领域市场份额来看

无疑redhat是最多的,此外还有很多出名的发行版本,不再列举。

对于初学linux的人来说,我建议是使用redhat,原因如下:

1)现在很多书都是以redhat为例讲的,为了与书本协调一致

2)周围的人都用redhat,交流比较方便

3)redhat应用范围广,有典型性和代表性

4)它易于使用和安装,我们没有必要把时间浪费在“装系统”上

而应集中精力学习最有用的东西。

//注:现在觉得RH很死板,AS,ES等用在服务器上或许不错,

Personal desktop用mandrake,debian,suse都不错,笔者现在用Mandrake,因为她长得漂亮

如果你并不打算深入学习linux,而是有诸如适应北京市政府办公平台迁移到

linux上这种需要,那么中软,红旗等中文linux是不错的选择

我强烈建议:自己亲自动手把linux装到你的硬盘上,

你必须学会独立安装linux系统的技能,对于现在的版本来说,其实跟装WinXP一样简单

从此现在开始,请不要以windows的工作方式来考虑问题,

应该尝试挖掘linux身上的“天才unix”的气质。

三进阶

掌握至少50个以上的常用命令

理解shell管道"|",文件流重定向">"及追加">>"等

熟悉Gnome/KDE等X-windows桌面环境操作

掌握tgzrpmbiz等软件包的常用安装方法

学习添加外设,安装设备驱动程序(比如modem)

熟悉Grub/Lilo引导器及简单的修复操作

熟悉系统固有目录的名称及公用

学会用mount命令访问其他文件系统

了解vi,gcc,gdb等常用编辑器,编译器,调试器

学习linux环境下的简单组网

建议:买一本不需要太厚的linux教材,大致可以满足要求

//现在的书越来越多了,还带很多图,我当时可没这么多书:)

四高级应用

澄清一些概念:

linux的普通操作与真正的系统管理不能相提并论,后者需要很多知识

我个人认为比较重要几种linux语言

1英语

即使你不学linux,我也强烈建议你学好英文[USenglish]

因为实质上计算机语言就是英文和字符,所谓的多国语言只是外部包装

你必须能无障碍的阅读大量的英文技术文档

在搜索引擎找到的英文网站和网页中熟练的检索

最好能有用英文直接交流的能力,

摆脱了这个障碍,你的学习和理解速度就能快很多,你就有机会拉开和别人的差距

2shell[sed/awk]

shell是命令解释器,是内核与用户界面交流通道,shell写的小脚本有点类似于win下的bat

但shell比bat强大的多,shell不只是解释命令,更是一种编程语言,有时候几百行的c用shell

几十行就能代替完成工作,因为shell的工作方式建立在系统已有的众多应用程序之上

这也是CS中的一个重要思想。

此外,shell可以实现工作自动化,这个概念也比较重要

sed,awk用来处理文本,历来很常用

3Perl/PHP

漂亮的脚本, CGI的首选,比ASP好,应用面很广

4C\C++

C、C++是linux/unix的核心语言,系统代码都是C写的

5ASM

系统底层及内核,硬件,设备驱动程序,嵌入式开发都需要

//走核心路线的话,个人认为c\c++,asm最重要

6Java,Python,Tcl,XML

系统管理篇

在熟悉linux的基础上还需要掌握至少一种unix

我首推Solaris,其次是FreeBSD

比如运营级系统一般是Solaris+Oracle/DB2之类的

学习apache,ssh,sendmail/Qmail,proftp/vsftp,Samba,Squid,MySQL/PostgreSQL/Oracle,Bind

等各种应用服务器的构架及电子商务的应用

熟悉TCP/IP协议族,学习诸如apache+php+proftp+mysql+quota的实现以及大型局域网,分布式集群

等各种企业级应用解决方案

熟悉多用户管理,数据库管理,文件系统,逻辑存储管理,日志分析,备份与灾难数据修复

系统补丁,内核升级,以及在此基础上的防火墙构架等以保障系统安全在内的各种系统管理技能

我觉得,如果在此基础上再掌握路由/交换设备便是一个不错的系统管理员 :D

各种基于linux的解决方案可参考相关书籍和文献,必要时用google或各大linux站点站内

搜索引擎寻找最新文档,以避免错误和漏洞

有几本技术大全和技术内幕我认为都是这方面不错的书

深入学习linux

我个人理解的读linux内核需要的基础:

在此之前,希望先把应用层的东西学一下,那样会比较好理解

1C

如果学过潭浩强的大学教科书(除了编几个数学模型好像什么也做不了的那种),

建议再看一下

《The C Programming Language》Second Edition这本圣经

/如果想学缓冲区溢出,这点C的功力可能是不够的/

还有,<C陷阱与缺陷>,<C专家编程>,<C\C++深层探索>

反正经典书看多了是没有坏处的:)

2asm (AT&T语法,保护模式)

保护模式下的比较复杂,基本上每本讲内核的书都会有介绍

有80x86 Intel语法的基础就行,

有兴趣可以看看Intel的官方白皮书

3数据结构(离散数学)

计算机专业的核心课程,重要性我就不说了

4操作系统原理

看懂这个再去读linux吧

5微机原理/组成原理(数字电路)

底层直接和硬件打交道,所以这个也要

6了解linux/unix

我想至少你要会操作吧,了解unix的API

7软件工程/编译原理

这方面的经典书去wwwchina-pubcom可以搜到很多

我觉得APUE这种书不适合初学者,还是先看看UPE之类的吧

APUE:

《advanced programming in the unix environment》

《unix环境高级编程》

作者:WRichardStevens共有6本经典书,尊为“圣经”

他的书为全世界黑客所拜读!

UPE:《unix programming environment》

《unix编程环境》比较适合初学者的,深入浅出,

其中有一些比较重要的思想

另外,介绍linux下应用层编程的书也有很多,比如

<GNU\Linux编程指南>,redhat,redflag出的书

经典书还有很多很多

操作系统:设计与实现 //交大的考研参考书目,讲Minix的

unix操作系统设计

44BSD操作系统设计与实现

昂莱氏unix源代码分析

ulk:understanding the linux kernel (2nd)深入理解linux内核

linux设备驱动程序 (2nd)

linux内核源代码情景分析

保护方式下的80386及其编程(次书已绝版,只有超星的电子版,如果谁能搞到纸书,清一定告诉我一下,非常感激!!!)

在这里你能明白"黑客"及"haching"一词所代表的真正意义

希望我写的这篇文章能造就更多的黑客,而不是骇客

五一些资源

wwwlinuxforumnet //国内最高水平GNU站点

wwwchinaunixnet //unix、系统管理的不错

wwwlinuxedencom //下载软件不错

wwwlinuxaidcomcn

wwwlinuxsirorg

其实还有很多,包括国外的

以上内容是转载别人的

这些是关于linux的

至于嵌入式的学习,需要很高深的硬件知识

对编程和系统移植有很深的认识才行

嵌入式是一种包括了DSP及arm等最小系统板的统称

其结构也各不相同,有些是传统的冯诺依曼结构,在DSP领域大部分用的是改进的哈佛结构

学嵌入式一定要学linux,这个是很关键的环节

<<unix环境高级编程>> 是linux,和Unix的圣经,大师作品,好得无法形容。

<<莱昂氏UNIX源代码分析>> 了解核心如何工作的。

还有<<Linux内核011分析>>。

你在网上到处都能找到。

网站,都是我常去的:

http://wwwlinuxforumnet/

http://wwwredhatcom/

http://wwwredhatcom/

现在主流的linux学习书籍《鸟哥的linux私房菜》、《linux就该这么学》……

个人还是推荐你看看第二本。坦白来讲,鸟哥的linux私房菜也是我的linux入门书籍,我绝对的认可鸟哥为这本书的付出,其书发行量巨大,陪伴了一代的运维人员,甚至被封为“linux入门神书”,渐渐的从一本linux技术书籍,上升至精神的高度,不允许再有一点反驳之声,但思索再三,还是决定阐明我的观点,与初学者分享下这不同的看法:

首先鸟哥在开篇即提到了写书的缘由是因为记性不好,所以想写出一本能够放在案头的备忘录,对书籍的内容自然就没有了太多的筛选,反而一再的扩大知识范围,最终写出的两本书厚度足足超过十厘米,敢问这种“备忘录式的入门书籍”真的适合新手来读?我认为书籍既然发行了,就不能再是个备忘录,而应该是通过作者的经验将知识不断提炼,真正让捧起书的读者看完有收获才可以。

其次是鸟哥的linux私房菜的书籍更新周期过长,2014年末时RHEL7与Centos7就已经公布,经过了一年多的迭代,已经很稳定并被广泛使用了,如果内容没有定期更新,使得技术脱离了生产环境,还怎么称作是真正实用的linux技术?而且鸟哥的linux私房菜缺少了对新手非常重要的答疑与帮助,如果遇到了实验出错,或者有知识点悟不透,这些都可能让初学者丧失掉对linux技术的兴趣。

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » 推荐书籍有关服务器性能或者选购的

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情