仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 722|回复: 13
打印 上一主题 下一主题

[学习教程] JAVA编程:教你如何来优化Apache服务器的功能

[复制链接]
因胸联盟 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-18 11:15:50 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
j2EE和asp比较,其实也没什么比的,原因和我上面说那些比较差不了多少,也是稳定性,安全性,J2EE比asp高,速度上比不过asp,asp也是延续着它的拖拽控件的方法,提高速度。apache|服务器|功能|优化<Pstyle="TEXT-INDENT:2em">测试与进步功能<Pstyle="TEXT-INDENT:2em">Apache服务器已被计划得尽量的快,即便你用一台设置不高的呆板,用不着举行太庞大的设置,它的呼应内容就足以塞满之前的各类窄带毗连。但随网站内容日趋庞大和带宽的增添,对Apache举行优化以获得更好的功能变得日趋主要起来。<Pstyle="TEXT-INDENT:2em">假如优化的了局仅仅是极小的功能提拔那真是华侈工夫。试想一下,你花了好几个小时乃至几天调剂Apache的各类参数但了局仅是几个百分点的功能提拔?因而,在优化前你做的第一步应当是测试你今朝的服务器的功能程度以便决意怎样优化你的服务器并权衡优化的效果。<Pstyle="TEXT-INDENT:2em">关于对Apache的测试我们已不是第一次提到了(见《冲出水面》一文),好像我们之前提到的,断定究竟是哪一部分招致的瓶颈常常是一件坚苦的事,是由于Apache自己的设置成绩仍是因为你利用的静态网站程序情况?关于查找是不是是由于网站程序引发的成绩已超越了本文的局限,这里我们次要讲一下进步Apache服务器速率的一些一般做法和它怎样与组成WEB网站的别的组件举行交互。<Pstyle="TEXT-INDENT:2em">主机硬件<Pstyle="TEXT-INDENT:2em">Apache地点的呆板与操纵体系情况是对功能影响最年夜要素,很分明,一以368的PC与一台P4或双处置器的呆板不会有一样的功能。不外,假如不触及硬件的改动,我们能够做的最年夜的事是起首看一下Apache是不是运转在一台公用的服务器上,假如与别的使用共用一台服务器一定会影响服务器的功能。<Pstyle="TEXT-INDENT:2em">在年夜多半情形下,告辞是对静态网站而言,内存数目是一个影响功能的关头要素,由于它决意了Apache能够缓存几内容。它缓存的内容越多,在硬盘上读取内容的时机就越少,而存取硬盘上的特定文件是一件很费时的操纵。假如你的网站次要是一些静态内容,你最好利用mod_cache选项,假如你的内存充足年夜,可使用mod_mem_cache选项。<Pstyle="TEXT-INDENT:2em">第一个选项将信息缓存在磁盘上,当它与mod_include选项一同利用时会有很好的效果,这个选项在创建一个页面时在缓存中保留它的终极版本。利用mod_mem_cache将缓存内容保留在一个能够被一切Apache历程共享的内存堆中。<Pstyle="TEXT-INDENT:2em">利用更快的磁盘或进一步利用RAID能够进步Apache对磁盘文件的会见速率。注重,假如你做了上面的一切这些优化,一个硬件的(而非软件)晋级计划是更好的选择。最初一个谈到的关于硬件的成绩是CPU才能,这对静态内容网站的影响很年夜,静态内容越多请求越高。<Pstyle="TEXT-INDENT:2em">经由过程挤出Apache服务器的每分潜力你可让你的网站留给他人的印象年夜年夜变动,出格是对一些静态网站更是怎样。这篇文章次要触及到对Apache服务器的安装和设置怎样举行优化,这也是你最有把持权的部分。<Pstyle="TEXT-INDENT:2em">测试与进步功能<Pstyle="TEXT-INDENT:2em">Apache服务器已被计划得尽量的快,即便你用一台设置不高的呆板,用不着举行太庞大的设置,它的呼应内容就足以塞满之前的各类窄带毗连。但随网站内容日趋庞大和带宽的增添,对Apache举行优化以获得更好的功能变得日趋主要起来。<Pstyle="TEXT-INDENT:2em">假如优化的了局仅仅是极小的功能提拔那真是华侈工夫。试想一下,你花了好几个小时乃至几天调剂Apache的各类参数但了局仅是几个百分点的功能提拔?因而,在优化前你做的第一步应当是测试你今朝的服务器的功能程度以便决意怎样优化你的服务器并权衡优化的效果。<Pstyle="TEXT-INDENT:2em">关于对Apache的测试我们已不是第一次提到了(见《冲出水面》一文),好像我们之前提到的,断定究竟是哪一部分招致的瓶颈常常是一件坚苦的事,是由于Apache自己的设置成绩仍是因为你利用的静态网站程序情况?关于查找是不是是由于网站程序引发的成绩已超越了本文的局限,这里我们次要讲一下进步Apache服务器速率的一些一般做法和它怎样与组成WEB网站的别的组件举行交互。<Pstyle="TEXT-INDENT:2em">主机硬件<Pstyle="TEXT-INDENT:2em">Apache地点的呆板与操纵体系情况是对功能影响最年夜要素,很分明,一以368的PC与一台P4或双处置器的呆板不会有一样的功能。不外,假如不触及硬件的改动,我们能够做的最年夜的事是起首看一下Apache是不是运转在一台公用的服务器上,假如与别的使用共用一台服务器一定会影响服务器的功能。<Pstyle="TEXT-INDENT:2em">在年夜多半情形下,告辞是对静态网站而言,内存数目是一个影响功能的关头要素,由于它决意了Apache能够缓存几内容。它缓存的内容越多,在硬盘上读取内容的时机就越少,而存取硬盘上的特定文件是一件很费时的操纵。假如你的网站次要是一些静态内容,你最好利用mod_cache选项,假如你的内存充足年夜,可使用mod_mem_cache选项。<Pstyle="TEXT-INDENT:2em">第一个选项将信息缓存在磁盘上,当它与mod_include选项一同利用时会有很好的效果,这个选项在创建一个页面时在缓存中保留它的终极版本。利用mod_mem_cache将缓存内容保留在一个能够被一切Apache历程共享的内存堆中。利用更快的磁盘或进一步利用RAID能够进步Apache对磁盘文件的会见速率。注重,假如你做了上面的一切这些优化,一个硬件的(而非软件)晋级计划是更好的选择。最初一个谈到的关于硬件的成绩是CPU才能,这对静态内容网站的影响很年夜,静态内容越多请求越高。
<Pstyle="TEXT-INDENT:2em">服务器设置<Pstyle="TEXT-INDENT:2em">假如你的情况已创建Apache也已经由优化,就能够检察你的设置文件来举行下一步的优化措施。一个好的办法就是简化你的设置文件将文件中的唆使(directives)削减到几百行内,起首是删撤除那些正文行,进而删除任何非需要的内容。<Pstyle="TEXT-INDENT:2em">简化设置文件<Pstyle="TEXT-INDENT:2em">第一步是简化设置设置文件,它其实不带来任何间接的功能提拔,但它将使设置文件易于利用削减你堕落的时机。<Pstyle="TEXT-INDENT:2em">在举行优化之前,从一个默许供应的设置文件入手下手是一个不错的主张。这些文件常被放在Apache的设置目次中,文件名为httpd.conf.orig大概httpd-std.conf,不要利用如performance-std.conf相似称号的文件,从久远的概念看,假如你筹办在内里到场大批的附加设相信息,它决不是一个好出发点。另外一方面,假如你的方针是创建一个很快的静态WEB服务器,这多是让服务器运转起来的最复杂办法。<Pstyle="TEXT-INDENT:2em">假如你熟习Apache的设置唆使用法或愿意扫瞄匡助文件,你能够从设置文件中删除一切的正文内容,由于它们常常让实践的唆使内容变得难找,你也能够删除对以后平台上用不到的多处置机体例(MPM)的援用。<Pstyle="TEXT-INDENT:2em">禁用模块<Pstyle="TEXT-INDENT:2em">如今,我们已失掉了一个清新的设置文件,上面我们能够入手下手删除个中我们体系用不到的元素,出格是:<Pstyle="TEXT-INDENT:2em">●HostnameLookups(主机名查找),这增添了处置每一个哀求的开支,起首,服务器会对DNS体系做一个反向查询以找出客户体系的主机名,然后又举行正向查询看取得的主机名是不是实在指向客户的IP。年夜多半情形下,你能够复杂的封闭这个功效,假如你常常处置服务器日记,这个事情完整能够在今后举行。你能够经由过程在设置文件中到场唆使HostnameLookupsoff来封闭这个功效。<Pstyle="TEXT-INDENT:2em">●标记毗连。当翻开这个选项时,Apache将反省每一个哀求中是不是包括对标记毗连的援用,这将对哀求中包括的每一个路径挪用一次lstat()体系挪用。除非你筹办利用标记毗连,不然用Options-FollowSymLinks来关失落它。<Pstyle="TEXT-INDENT:2em">●服务器形态信息。只管这对测试与监控服务器很有效,但它也为服务器带来了分外的开支,你能够经由过程寻觅任何相似SetHandlerserver-status的唆使来封闭,假如大概,你能够在安装Apache时移除这个模块。<Pstyle="TEXT-INDENT:2em">●在能够更准确的时分尽量不要利用通配符之类的天真选项,比方,关于DirectoryIndex唆使,明白的指定设置文件列表,最经常使用的放在最前。<Pstyle="TEXT-INDENT:2em">●除非你有很好的来由不然就同意CGI的实行,将似有的CGI文件放到一个特定的目次并为之设定准确的权限,这制止了Apache对每个哀求都要判别一主要求的是一个静态文件仍是一个静态文件。<Pstyle="TEXT-INDENT:2em">禁用日记<Pstyle="TEXT-INDENT:2em">写进日记信息是一个很消费工夫的事情,只管Apache坚持日记文件的翻开形态以节俭翻开文件的工夫,但仍旧得消费很多的工夫。假如没有需要存储日记信息,你能够封闭这个选项以节俭出更多的处置器工夫,只必要在设置文件中把日记那一行正文失落就能够关失落它。<Pstyle="TEXT-INDENT:2em">假如必需保存日记,你能够封闭HostnameLookups选项(见上文)然后把日记文件拷备到另外一台呆板上做进一步剖析。<Pstyle="TEXT-INDENT:2em">简化目次级的设置<Pstyle="TEXT-INDENT:2em">htaccess文件能够极年夜的扩大Apache的设置参数,而无需每次你改动计划都要编纂Apache主设置文件,但对这个文件的利用也下降了服务器的功能。<Pstyle="TEXT-INDENT:2em">假如利用这个文件,Apache必须起首在以后目次中查找是不是存在这个文件,假如存在就剖析这个文件并在以后目次中使用文件中的设置。更坏的是,Apache不但要检察以后的目次,还要检察以后目次的一切下层目次是不是包含htaccess文件以依据一切这些文件终极断定设置。<Pstyle="TEXT-INDENT:2em">假如你想最优化服务器的功能,你应当克制利用htaccess文件,任何基础目次的设置都能够在主设置文件中举行,而主设置文件仅在服务器启动时剖析一次。为了禁用htaccess文件,在任何节里加上唆使AllowOverrideNone。<Pstyle="TEXT-INDENT:2em">多处置体例设置<Pstyle="TEXT-INDENT:2em">多处置体例(Multi-ProcessingModule/MPM)他同意特定平台处置多个并发毗连。MPM模块是平台相干的,关于Unix、Windows、BeOS、和NetWare有分歧的办理计划,一些平台有不止一个计划能够选择。对年夜多半用户而言,关于特定平台的默许设置已事情得很好,而准确调剂这些参数是一个费时的事情。不外假如你想最年夜限制的发掘Apache的潜力,你必需调剂这些设置。<Pstyle="TEXT-INDENT:2em">对年夜多半平台而言,只要一种MPM可选,不外在UNIX下则有两个选项:prefork与worker,prefork形式天生多个不异的Apache历程,而worker形式创立多个线程。一般而言,关于只要一到两颗处置器的体系,prefork形式事情得更好,而关于具有更多处置器的体系,线程模子事情得更无效率。<Pstyle="TEXT-INDENT:2em">不论哪一种情形,MaxClients唆使是最无效的进步服务器功能的办法,它把持了Apache能够处置的最年夜并发毗连数。<Pstyle="TEXT-INDENT:2em">优化静态内容<Pstyle="TEXT-INDENT:2em">假如你的WEB服务器利用了大批静态内容大概你分离用两个WEB服务器处置静态和静态内容,那末你如今的次要方针就是延长服务器发送被哀求内容的呼应工夫,最复杂的办法就是利用mod_cache缓存模块。你可使用mod_disk_cache和mod_mem_cache来分离供应基于磁盘的缓存和基于内存的缓存。<Pstyle="TEXT-INDENT:2em">你能够检察关于mod_cache的申明文件以获得进一步的信息。<Pstyle="TEXT-INDENT:2em">优化静态内容<Pstyle="TEXT-INDENT:2em">静态内容多是一切WEB服务器中最消耗工夫的部分,出格是利用CGI的时分,一个复杂的程序都大概会把呼应工夫增添好几秒。<Pstyle="TEXT-INDENT:2em">利用基于剧本的计划的一年夜优点是它们在Apache里装进懂得释器,这就削减了实行时再装进注释器的工夫,一些计划还把剖析过的剧本缓存起来,如许下一次碰到一样的哀求就能够间接实行而无需再次剖析<Pstyle="TEXT-INDENT:2em">对特定体系的调剂优化很庞大并且很花工夫,并且你必要调剂特定的剧本以使用优化的功效。<Pstyle="TEXT-INDENT:2em">不外对静态内容的优化效果长短常分明的,仅仅是把perl剧本的实行形式从CGI转到mod_perl就能够削减多达70%的实行工夫,假如我们进一步,还可使用到数据库的耐久毗连或在屡次哀求之间缓存信息,这对电子商务网站十分有效,它也减小了分歧哀求间反复装载信息的开支。<Pstyle="TEXT-INDENT:2em">总结<Pstyle="TEXT-INDENT:2em">只管Apache是一个高可定制的功效壮大且相称庞大的服务器软件,我们很有乐趣的注重到即便是Apache的尺度安装也能够失掉不错的功能。调剂Apache的设置参数是一个能够容易明显进步服务器功能的办法。但不幸的是,经常我们在Apache里最没法把持的内容--比方网站的静态内容剧本和CGI是影响网站功能的最主要方面,假如你办理一个典范的Apache服务器你会发明Apache呼应一个传进毗连和最初把内容发送给客户的所消费的工夫是以毫秒记的,而守候所需数据资本的工夫经常到达几秒钟。固然,这并非说我们的优化事情没甚么意义,优化的效果积少成多也不成藐视。别的,主要的是,经由过程简化你的设置文件,你能够年夜年夜减小服务器的办理包袱。

其实产生见解的过程就是训练自己发现问题,分析问题的能力。根据以上的认识我想谈下传统的学习与通过视频独立学习的优缺点:
飘灵儿 该用户已被删除
沙发
发表于 2015-1-18 16:23:40 | 只看该作者
在全球云计算和移动互联网的产业环境下,Java更具备了显著优势和广阔前景。
admin 该用户已被删除
板凳
发表于 2015-1-22 11:49:38 | 只看该作者
一直感觉JAVA很大,很杂,找不到学习方向,前两天在网上找到了这篇文章,感觉不错,给没有方向的我指了一个方向,先不管对不对,做下来再说。
精灵巫婆 该用户已被删除
地板
发表于 2015-1-24 15:42:56 | 只看该作者
是一种由美国SUN计算机公司(Sun Microsystems, Inc.)所研究而成的语言
海妖 该用户已被删除
5#
发表于 2015-1-26 22:58:49 | 只看该作者
至于JDBC,就不用我多说了,你如果用java编过存取数据库的程序,就应该很熟悉。还有,如果你要用Java编发送电子邮件的程序,你就得看看Javamail 了。
只想知道 该用户已被删除
6#
发表于 2015-2-2 22:06:24 | 只看该作者
让你能够真正掌握接口或抽象类的应用,从而在原来的Java语言基础上跃进一步,更重要的是,设计模式反复向你强调一个宗旨:要让你的程序尽可能的可重用。
若天明 该用户已被删除
7#
发表于 2015-2-5 01:34:56 | 只看该作者
我大二,Java也只学了一年,觉得还是看thinking in java好,有能力的话看英文原版(中文版翻的不怎么好),还能提高英文文档阅读能力。
冷月葬花魂 该用户已被删除
8#
发表于 2015-2-11 00:43:57 | 只看该作者
关于设计模式的资料,还是向大家推荐banq的网站 [url]http://www.jdon.com/[/url],他把GOF的23种模式以通俗易懂的方式诠释出来,纯Java描述,真是经典中的经典。
蒙在股里 该用户已被删除
9#
发表于 2015-2-19 00:01:28 | 只看该作者
《JAVA语言程序设计》或《JAVA从入门到精通》这两本书开始学,等你编程有感觉的时候也可以回看一下。《JAVA读书笔记》这本书,因为讲的代码很多,也很容易看懂,涉及到面也到位。是你学习技术巩固的好书,学完后就看看《JAVA编程思想》这本书,找找一个自己写的代码跟书上的代码有什么不一样。
老尸 该用户已被删除
10#
发表于 2015-3-4 11:22:36 | 只看该作者
是一种简化的C++语言 是一种安全的语言,具有阻绝计算机病毒传输的功能
谁可相欹 该用户已被删除
11#
发表于 2015-3-4 21:04:41 | 只看该作者
《JAVA语言程序设计》或《JAVA从入门到精通》这两本书开始学,等你编程有感觉的时候也可以回看一下。《JAVA读书笔记》这本书,因为讲的代码很多,也很容易看懂,涉及到面也到位。是你学习技术巩固的好书,学完后就看看《JAVA编程思想》这本书,找找一个自己写的代码跟书上的代码有什么不一样。
分手快乐 该用户已被删除
12#
发表于 2015-3-8 05:28:52 | 只看该作者
你可以去承接一些项目做了,一开始可能有些困难,可是你有技术积累,又考虑周全,接下项目来可以迅速作完,相信大家以后都会来找你的,所以Money就哗啦啦的。。。。。。
13#
发表于 2015-3-13 09:20:39 | 只看该作者
关于设计模式的资料,还是向大家推荐banq的网站 [url]http://www.jdon.com/[/url],他把GOF的23种模式以通俗易懂的方式诠释出来,纯Java描述,真是经典中的经典。
透明 该用户已被删除
14#
发表于 2015-3-20 18:35:23 | 只看该作者
一般学编程语言都是从C语开始学的,我也不例外,但还是可能不学过程语言而直接学面向对象语言的,你是刚接触语言,还是从C开始学比较好,基础会很深点,如果你直接学习JAVA也能上手,一般大家在学语言的时候都记一些语言的关键词,常有的包和接口等。再去做逻辑代码的编写,以后的学习过程都是从逻辑代码编写中提升的,所以这方面都是经验积累的。你要开始学习就从
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-9-25 05:25

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表