魔兽世界怎么改变默认的服务器?

魔兽世界怎么改变默认的服务器?,第1张

  建议尝试下以下方法修改默认的服务器

  1打开玩家硬盘里的魔兽世界文件夹(默认文件夹: C:\Program Files\World of Warcraft);

  2打开WTF文件夹;

  3用记事本打开Configwtf文件,找到这一行:SET realmName "(服务器名)"改为: SET realmName "(玩家的服务器)"

  例如: SET realmName "白银之手"现在保存文件,不要用"另存为",使用保存来保留文件(wtf)的格式,然后运行魔兽世界。

realm无尽模式摆塔操作:

1、 尽可能多在十字路口摆放连弩塔并且升级。

2、 前期冰雪塔覆盖中间部分,先不着急升级,尽量先升级伤害值较高的连弩塔,等到第三波开始有第二个门出怪物提醒后,可在附近建立冰雪塔。

3、 在每个怪物门口建造一个炮塔,炮塔的主要作用是群体伤害,门口会堆积怪物,所以建议建造。

4、 在十字路口建造一两个炮塔,十字路口容易堆积怪物,可对一些小怪进行群力伤害。

5、 一定要注意左下角的门,左下角距离城堡最近,怪物速度过快,一定要用冰雪塔进行减速并且配合法术塔和连弩塔。

6、 在本攻略中使用炮塔较少,主要是炮塔的伤害加成来源于神器,相比较其他的战力,神器战力获得相对较慢,如果您的神器厉害,那么请多多建造炮塔。

7、 如果能抗到将近10000分的时候,就会出现boss龙,速度较快,尽量在中间的时候对其进行伤害,就要求中间的防御塔升级一定要跟上。

不能。

我的世界realm服务器不能跨版本进入,每一版的游戏内容都有一定的不同,服务器之间也有一定的差异,跨版本的游戏会引起混乱。

《我的世界》是一款沙盒建造游戏,玩家可以在一个三维世界里用各种方块建造或者破坏方块,去探索、交互,并且改变一个由一立方米大小的方块动态生成的地图。

目前可以用于架设魔兽争霸3的服务器软件主要有2种:PvPGN 116和WarForge Java 0090

其中使用WarForge建立的服务器需要Java语言解释器和Mysql数据库的支持,对一般的玩家计算机知识要求较高,所以主要以介绍如何安装PvPGN战网服务器为主。

1、PVPGN软件介绍

PvPGN,全名为Player-vs-Player Gaming Network Server,是一些业余爱好者在原来的服务器软件bnetd的源代码的基础上进行改进扩展而来。

PvPGN是目前唯一的支持多游戏的免费开放源代码服务器软件,除了对暴雪的经典系列游戏--星际争霸/Diablo2/魔兽争霸2/魔兽争霸3 的支持外,将来还会对对新出的其它公司的游戏如Dungeon Siege, Neverwinter Nights, Unreal Tournament 2003等游戏提供支持,前景非常看好。

2、系统需求

PvPGN安装环境要求:

Windows 98/me/Nt/2000/XP

3、下载并安装PvPGN

首先,我们要下载PvPGN软件进行安装,软件可以在以下地址找到:

http://pvpgnostdbcom

http://wwwtrendecidecom/warcraft/downloads/

http://amadeustrendecidecom/indexhtml(点左边的FILEZ进入下载列表页)

下载PvPGN116 rc1和PvPGN 116 rc2这两个文件,下载完后先安装前者,然后运行后者升级到116 rc2。

4、运行前的设置(可选,如果不作以下修改,服务器可以用原来的默认设置正常运行)

我们先进入PvPGN的目录,找到bnetdconf文件,这个是PvPGN的设置文件。用记事本等文本编辑器打开它,修改如下部分以对服务器进行设置:

versioncheck = true 如果你想让服务器支持109版的星际争霸,请设为false

new_accounts = true 是否允许注册新帐号,如果你不想在提供新用户注册功能,请设为false。

w3routeaddr="xxxxxxxxxxxx:6200" 请将xxxxxxxxxxxx设为你的外部IP号(如果在建内网用的服务器可设内网IP)以使魔兽争霸的Play Game生效

location = "USA"

description = "PvPGN Server"

url = "http://wwwPvPGNorg";

contact_name = "PvPGN Server Admin"

contact_email = "PvPGN Server" 这五项分别是你的服务器的位置,描述,网页地址,联系人姓名和联系邮件,可自设。

其他选项保持默认即可,如果需要改变,请理解注解中说明的参数含义。

修改完毕后保存退出,然后我们再找到如下txt文件进行修改:

confnewstxt 这是PvPGN服务器的消息文件,可以在用户登录时显示一些消息,大家可以自己写一些公告啊什么的,也可以在服务器运行期间修改,向玩家发送最新的消息。

confbnmotdtxt 这是服务器登录时的问候信息文件,当一个玩家登录时向他发出的问候消息存放在这里,文本中的%l表示用户名,%v表示版本号,%u,%g,%c分别表示在线的用户数,游戏数和频道数。

Filestermsofservice-defaulttxt

Filestermsofservice-defaulttxt 这两个是注册新帐号前显示的terms of service,具体服务器用哪个和登录用户的语言版本有关,要改就同时改。

Filesnewaccount-defaulttxt

Filesnewaccount-enUStxt 这两个是注册新帐号时右边显示的信息,具体服务器用哪个和登录用户的语言版本有关,要改就同时改。

Filestostxt

Filestos_DEUtxt

Filestos_usatxt

Filestos-unicode_USAtxt 这四个是登录进服务器后显示在右边的LEGAL NOTES和TERMS OF SERVICE,具体服务器用哪个和登录用户的语言版本有关,要改就同时改。

如果要支持中文版的D2,请建立tos-unicode_CHItxt,并填入Terms of service。

如果你需要支持最新的游戏版本102,你需要修改你的conf目录下的versioncheck文件,http://pvpgnostdbcom/versioncheck102czip 这时已经修改好的文件,你可以直接下载并覆盖原有文件。游戏的102升级补丁你可以在http://wwwblizzardcom或http:attlenet找到。

最后是修改ad000000mng,这些都是mng格式的banner文件(就是登录服务器后显示在上方的横幅),可以通过相关工具修改,本文不浪费篇幅介绍。

5、运行PvPGN程序

运行PvPGN Standardexe即可开启服务器,你可以把它最小化到系统栏图标。运行之后服务器就处于激活状态,别的玩家就可以通过网络连接PvPGN了。

6PvPGN的界面操作

1)界面概览

如图上面是菜单,左边是服务器信息栏,显示服务器信息,右边是在线用户栏,显示当前的在线用户。

2)菜单

Server菜单下有Save Accounts(保存所有帐户),Restart(重新启动服务),Shutdown(关闭服务),Exit(退出)4个功能。

Admin Commands菜单下有Announce和Admin Control Panel两个可用功能,Announce是用来向服务器内的所有用户发送公告的;Admin Control Panel的界面中,Kick表示把人踢出服务器,Ban表示禁止登录,Premote to Administrator表示设为管理员,Premote to Moderator表示设为频道主持人,Give the rights to make announcements表示给予发送公告的权利,在左边的输入框输入姓名,在右边勾选好你要对这个用户进行的操作,然后点击Execute按钮就可以执行相应的操作。

View菜单下有Clear Window(清空左边的信息栏)和Update Userlist(立即更新在线用户状况)两个功能。

Server Configuration菜单下只有一个功能,就是用写字板打开confbnetdconf文件进行修改,记得修改后要用Server菜单下的Restart来重启服务器以使设置修改生效。

善用操作界面的功能将可以让你轻松地管理PvPGN服务器。

7、修改游戏设置使其能连上服务器

要连接你刚完成架设的魔兽争霸3服务器,你需要修改你的战网连接地址,你可以在以下地址找到最新版的战网地址修改器:

http://soarl33tca/download/BNetEditorzip 或

http://homeonlinetjcn/user/soar//BNetEditorzip

下载后解开压缩文件,你会得到

BNetEditorexe

Gatewaylist

ServerIntro

What‘s newtxt

说明txt

等5个文件

运行BNetEditorexe画面如下:

按下"添加”按钮,在出现的对话框中添入 名称:你自己取的服务器名字;时区:服务器所在时区(可以随便添或者添8);地址:服务器的IP地址,填写完点击确定,你的服务器便出现在现有服务器列表中。

该软件还可以修改Diablo2、Starcraft等游戏的连接地址,具体操作方法可以看附带的说明txt,并且该软件提供了其他几个国内的私人服务器地址可供选择。

8、连接服务器

你需要使用连接PvPGN专用的Loader才可以进入你的魔兽争霸3游戏,该程序可以在这里找到:

http://pvpgnostdbcom/aCiD-War3_Adaptive_Loaderzip

解开压缩文件,将其中的Loader文件复制到你的魔兽争霸3安装目录,在war3exe中加入-pvpgn参数,运行即可。进入游戏后点击Battlenet右边的放大镜标记,选择需要加入的服务器,你可以看到我们刚才添加的服务器My Server已经出现在列表中,选择它,并点击OK确定。

然后点击Battlenet按钮,如果上述服务器操作都正确完成的话,你可以看到这样的登陆画面。

点击New Account建立一个新的账号,或者直接输入用户名和密码使用一个已经存在的账号。然后点击Logon按钮,然后你就进入了自己的Battlenet。

快点告诉你的朋友们吧,将他们都连接上你的服务器开始一场激烈的战斗。

也许你的服务器架设没有那么顺利进行,那么请你仔细看看每一步的操作。多尝试几次,相信你会成功的。

注:PVPGN也可以使用MYSQL数据库,使用MYSQL数据库玩家的战绩资料会保存到数据库中。 不用的话,以文本方式保存玩家资料,无法使用排行版功能。

暴雪小型服务器的搭建及其配置

首先要明白的是这篇文章是关于Warcraft3,而不是WOW的。

-------------------------------------------------------------------------------------------------

暴雪凭借着Battlenet免费服务器和暴雪公司的完美游戏让全世界的玩家走到了一起。Battlenet支持暗黑破坏神、星际争霸和魔兽争霸,其完善的玩家匹配系统、积分排名系统和聊天系统使得成为世界上最大的免费游戏服务器。

-------------------------------------------------------------------------------------------------

下面我来教大家搭建最基本的Battlenet(不包括WEB排名系统)

俗话说:“工欲善其事,必先利其器。”我们首先要如下几款软件:

1PVPGN(Player-vs-Player Gaming Network Server)

我们这里使用180RC2版本,这个版本能完美支持WAR3 120c

2Bnedit(编辑服务器地址用)

3wc3 loader(启动魔兽进第三方战网的软件)

4花生壳(动态IP解析用)

-------------------------------------------------------------------------------------------------

服务器安装方法:下载解压缩后双击“安装服务bat”安装基本控制服务

客户端修改方法:下载解压缩BNetEditor,双击运行,然后依照所示依次进行

运行魔兽的方法:下载解压缩w3l,双击运行即可

------------------------------------------------------------------------------------------------

下面根据你搭建服务器的目的分为三种:

一、单机版

既然要架设服务器,单机版假设出来也没意思,搜索不到别人,只能自己锻炼下。

此版本默认服务器IP即为127001,无需做修改就可以上战网

二、局域网

首先确保你的防火墙软件没有阻止PVPGN和WAR3访问网络,并且你也知道自己的IP地址(如果是自动获得,点“开始”-“运行”-输入“ipconfig”就可以知道自己的IP),在PVPGN文件夹下有个CONF文件夹

打开后会看到一堆文件,这些是服务器的配置文件,我们找到其中的d2csconf、 d2dbsconf 、bnetdconf 、realmconf,用记事本打开即可,然后运用查找替换把“127001”全部替换成自己的IP地址,保存退出。

要注意的客户端的修改,BNetEditor里的IP地址都要是你的IP(即服务器IP)

三、外网

同样首先是防火墙的问题。

根据上网方式又可以分几种:

1、ADSL在电脑上拨号上网,这种上网方式都有公网的IP地址,所以你只需做的去下载个花生壳软件

下载地址:http://wwworaynet/ 详细配置请见http://wwworaynet/

这里服务器IP就要改成你申请的二级域名,如wwwturnjianvicpnet 客户端同样如此

2、ADSL路由上网,这种方式你的IP一般为固定IP如19216815,这样就需要在路由器上打开端口映射功能,详细信息http://wwwmagicwinmailcom/technic_nathtm http://bbsleobbscom/cgi-bin/topiccgiforum=68&topic=2854&show=0 (需注意魔兽端口)

3、小区宽带、有线通等方式比较特殊,详细请联系当地ISP(请不要告诉他们你是要建设私服。。)

下面介绍下服务器的配置:

我们先进入PvPGN的目录,找到bnetdconf文件,这个是PvPGN的设置文件。用记事本等文本编辑器打开它,修改如下部分以对服务器进行设置:

versioncheck = true 服务器&游戏版本版本检查

new_accounts = true 是否允许注册新帐号,如果你不想在提供新用户注册功能,请设为false。

w3routeaddr="xxxxxxxxxxxx:6200" 请将xxxxxxxxxxxx设为你的外部IP号(如果在建内网用的服务器可设内网IP)以使魔兽争霸的Play Game生效

location = "USA"

description = "PvPGN Server"

url = "http://wwwPvPGNorg";

contact_name = "PvPGN Server Admin"

contact_email = "PvPGN Server" 这五项分别是你的服务器的位置,描述,网页地址,联系人姓名和联系邮件,可自设。

其他选项保持默认即可,如果需要改变,请理解注解中说明的参数含义。

修改完毕后保存退出,然后我们再找到如下txt文件进行修改:

confnewstxt 这是PvPGN服务器的消息文件,可以在用户登录时显示一些消息,大家可以自己写一些公告啊什么的,也可以在服务器运行期间修改,向玩家发送最新的消息。

confbnmotdtxt 这是服务器登录时的问候信息文件,当一个玩家登录时向他发出的问候消息存放在这里,文本中的%l表示用户名,%v表示版本号,%u,%g,%c分别表示在线的用户数,游戏数和频道数。

Filestermsofservice-defaulttxt

Filestermsofservice-defaulttxt 这两个是注册新帐号前显示的terms of service,具体服务器用哪个和登录用户的语言版本有关,要改就同时改。

Filesnewaccount-defaulttxt

Filesnewaccount-enUStxt 这两个是注册新帐号时右边显示的信息,具体服务器用哪个和登录用户的语言版本有关,要改就同时改。

Filestostxt

Filestos_DEUtxt

Filestos_usatxt

Filestos-unicode_USAtxt 这四个是登录进服务器后显示在右边的LEGAL NOTES和TERMS OF SERVICE,具体服务器用哪个和登录用户的语言版本有关,要改就同时改。

如果要支持中文版的,请建立tos-unicode_CHItxt,并填入Terms of service。

如果你需要支持最新的游戏版本120,你需要修改你的conf目录下的versioncheck文件。游戏的升级补丁你可以在http://wwwblizzardcom找到。

最后是修改ad000000mng,这些都是mng格式的banner文件(就是登录服务器后显示在上方的横幅),可以通过相关工具修改。

最后再补充说明下为什么不用WEB方式,WEB方式就是可以方便找回密码,查看排名,我们建设这个服务器的目的就是为了娱乐,现在大家大部分操作系统版本是XP,XP不是服务器版,虽然也有IIS,但是只有10个并发连接。若要排名还要用SQL或MYSQL等数据库,这样增加了服务器的负担和危险性。

WAR3的免费服务器现在大致分为两种:

1WarForge Java 0090 。

2PVPGN 115。

我们这里介绍的是PVPGN115 游戏战网服务器,我认为PVPGN115是目前免费战网比较稳定和成熟的,几乎没有错误,所以大家用这个没错的(听起来象广告?),好!哪儿去找这个软件呢?在 http://wwwtrendecidecom/warcraft/downloads/

可以找到这个软件,如果你是用的WINDOWS操作系统就下载他最上面的那个PVPGN115-WIN32 就行了,如果你用的是LINUX,就下载PVPGN115-LINUX,文件都不大,5M多一点点。(国外网站,速度有点慢)

OK,现在下载完了,用WINZIP打开一看,只有一个EXE文件,对了,运行他就开始安装服务器啦,安装中几乎什么也不用选就完了,打开开始菜单一看,多了个PVPGN,里面有PvPGN Standard Edition(PVPGN 标准版),PvPGN Elite Edition(PVPGN 精华版),标准版和精华版不同的地方在于对用户名等数据存储方式不同,标准版是用的文档方式,而精华版用的是MYSQL方式存储,MYSQL对数据存储、查询、管理都比文档方式好得多,所以软件作者和我都极力推荐使用精华版。

先讲讲标准版的配置方法:双击 PvPGN Standard Edition 图标 ,出现的窗口会出现 “failed to initialize network (exiting)”的出错提示,不要紧,我们选Server Configurationg选项,会打开一个叫bnetdconf的文本文件,我们找到 w3routeaddr 这一行,把 “your ip here”改成你机器的IP地址,保存后关掉服务器,然后再双击 PvPGN Standard Edition 图标,把服务器打开,如果没有出错信息那么就恭喜你,你的服务器已经架设通了,但是要注意哦,现在你的标准版的服务器还不能保存账号名和信息,要在你的PVPGN安装目录下面找到VAR目录,再在里面建立三个目录:bnmail 、Reports、Users ,其中USERS目录就是保存用户信息的目录。

然后讲讲精华版的配置方法:前面和标准版的配置方法一样不同的是需要下载MYSQL的安装文件了,下载地址为 http://wwwmysqlcom/Downloads/MySQ32352-winzip

下完后用WINZIP打开双击就可以安装了,安装完后WIN2K系统运行 \MYSQL\BIN\mysqld-ntexe 让系统自动运行 MYSQL 数据库,然后把这个目录下的 libmySQLdll 拷贝到 WINNT\SYSTEM32目录下,再下载PVPGN的数据库创建和更新软件 http://wwwnerdtopiaorg/pvpgn/114bvPGNDBAC206zip 安装好PvPGNDBA 后就开始创建魔兽争霸的基本表,如果是第一次运行PvPGN DB Admin Console就会出现一个对话框让你配置如何连接数据库,在

HOSTNAME :locahost (MYSQL 主机的IP地址,一般不用修改)

MYSQL PORT: 3306 (MYSQL 的连接端口,不用修改)

MYSQL USERNAME:ROOT (MYSQL 的管理员账号)

MYSQL PASSWORD: (ROOT 用户的密码,才安装的不用填入)

GIVE DATABASE A NAME:(这是给将要创建的数据库取个名字,可以随便填入,比如 PVPGNDB)。

配置完后选中NEW DB INSTALL再按GO,如果出现了 You database has been created successfully 的对话框,就表示你的数据库已经建立好了,最后就是在Server Configurationg配置中打开bnetdconf文件,让服务器和MYSQL数据库连接起来,修改bnetdconf最下面的

mysql_host = "localhost"(MYSQL 主机的IP地址,一般不用修改)

mysql_account = "root" (MYSQL 的管理员账号)

mysql_password = "root" (ROOT 用户的密码,和上面一样)

mysql_sock = "3306" (MYSQL 的连接端口,不用修改)

mysql_dbname = "PVPGNDB"(就是你创建的数据库的名字)

如果出现

You are currently Running PvPGN Version 115

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

Make sure to visit:

http://wwwpvpgnorg

We can also be found on: ircpvpgnorg

Channel: #pvpgn

Server is now running

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

的字样,那么你的精华版就可以正常使用啦。

是如何把你的服务器加到中国魔兽争霸联盟服务器列表中:

_在bnetdconf找到如下行并改为你自己的信息: (请注意PvPGN的设置必须含引号)

______location = "服务器的地理位置"

______description = "服务器描述"

______url = "服务器主页"

______contact_name = "联系人"(本服务器并不显示该项信息)

______contact_email = "联系邮件"

在bnetdconf找到track开头的一行并改为:

______track = 1(1-5都可以,太大不好)

______找到trackaddrs开头的一行并改为:

______trackaddrs = "61172250144"

完成以上步骤后,重启你的服务器,你的服务器信息便会出现在中国魔兽争霸联盟服务器列表中了。

客户端连接方法:游戏方式:

下载http://uwsrpwtorg/download/war3_102rar (102升级包)

安装后桌面会出现三个图标,选WARCRAFT III PVPGN 这个图标 ,将来就用它运行你的游戏

然后下载http://bnetali213net/W3/denglu/BNG面的WARCRAFT III,添加一个GATEWAY,填入想要去的战网IP再选为默认,最后进入游戏就可以连接上战网啦。

1、-exp -expansion:切换到扩展模式

2、-w -window:切换到窗口模式

3、-glide -glide:使用Glide显示模式

4、-opengl -opengl:使用OpenGL显示模式

5、-d3d -d3d:使用Direct 3D显示模式

6、-rave -rave:使用Rave显示模式,仅适用于Mac

7、-per -perspective:打开透视模式,仅适用于全屏非Direct Draw模式

8、-lq -lowquality:低图像质量(高速度)

9、-gamma <n> -gamma <n>:设置Gamma值为<n>

10、-vsync -vsync:打开VSync

11、-fr <n> -framerate <n>:调至帧速率为<n>

扩展资料:

故事内容

大天使IZUAL在某次突袭Hellfore(地狱入口)战斗中被打败,用天使长Tyrael(泰瑞尔)的话来说就是“他圣洁的灵魂被锁在地狱深渊,他的意志被封入一个恐怖的怪物身体”,不论如何美化,事实是大天使IZUAL终于投靠地狱,成为堕落天使(Fallen Angel)。

人类出现后,天堂与地狱的战斗就很少直接开打了,改成操纵人类进行模拟演习,这场战争也改名了,叫“The sin war”,“sin”引自圣经中的“原罪”,真够无赖的,这仗打不完还得把罪过算到人类头上。

天堂方面失去了他们的英雄大天使IZUAL,地狱方面也不好过,地狱四大魔王(Duriel痛苦之魔王、Andariel折磨与苦闷之女王、Azmodan罪恶之王、Belial谎言之王)突然向三位老大(Diablo、Baal和Maphisto)发动突袭,打败了他们三个之后将其流放到人间。

然而地狱的叛乱者和关注这场反乱事件的天使们都不知道,这场叛乱原来是三魔神精心设计的结果,这件事除三魔神外,大概只有堕落天使IZUAL能猜到其中的因由。

以下是网吧影片服务系统的相关设置(好简单啊)

0首先你的网络已经设置好了,能通过网上邻居实现互访,这是基础(如果你的客户机能上网了,这不是问题吧^!^)

1选择一台电脑(也可能是数台,比一台麻烦一些)做影视服务器,把你的**拷至硬盘,把**文件都设置为共享(通常是共享文件夹, 每个文件夹中放一定数量的**);

2在客户机安装播放软件, 建立影视服务器上**文件的快捷访问方式;

3已经ok了,就是这么简单,(晕,还没完吗?别告诉我你的声卡还没装^!^)

当然其中还有些学问,以让你的影视系统发挥出最佳的性能:

选择合适的播放软件

以下是我用过的几种播放软件:

windows mediapalyer+divx(mpeg的编码解码器),主要用来播放mpeg格式的**,它的优点是启动快速,占用系统资源小,缺点是很多格式不支持(致命)

大多网吧都在用realplayer,因为它是rm格式的专用播放软件,界面简单,容易作,real的 老版本的不支持其它格式的影片 ,新版本因为增加了多个插件,可支持的格式大量增加,包括mpeg格式的,但我使用中发现,某些版本的real播mpeg的时候,不能快进,一拖滚动条就出现假死机, 非要三键结束任务才能解决。

金山影霸iii支持的格式最全(包括音乐文件),而且安装不很占空间(完全安装小于四十兆),占用系统资源也较少。

东方影都支持的格式很多尤其是立体版能看立体**,效果真爽,但缺点不少,如安装比较占空间(完全安装要80兆),而且消耗系统资源比较厉害。

另外超级解霸2003据说不错,我没有用过,不敢妄下结论(但如果没有比2000有质的转变不用也罢),有兴趣的朋友可以试一下,和其它的软件比较比较。

根据我的经验我首推金影iii做网吧的播放软件(本人严正声明:本人绝没有收取金山公司的一分钱广告费^!^)

附:两种流行的压缩影像格式释疑, mpeg(对应文件扩展名为avi)其实是一种影音压缩技术,它是一种通过记录原始影音文件的信息,用一定的算法进行代码替换处理的有损压缩,播放时通过mpeg编码解码器解码。rm是我们最常见的压缩格式,它使用的另一种算法压缩比例更大(文件大小可压至mpeg的二分之一),故失真较大,效果不如mpeg格式。

注意事项

1,影视服务器最好不要和网络服务器作为一台,如果你的网吧够大,建议使用专用的影视服务器(如果不对外营业,配置可以很低,主频300即可;内存64m即可128m最好,多了就是浪费了;支持大硬盘的主板即可,但要稳定;硬盘当然要大,但5400转即可;如果要对外营业配置就要稍高一点的,建议使用赛扬二代的处理器),当然如果你的网吧很小15台以下,那就没有必要专设影视服务器了。

2,尽量安装rm格式的**,优点是占用硬盘空间小,传输速度快,一台影视服务器支持的终端多,缺点的效果没有mpg4和vcd的效果好,但只要光盘做的不是太差一般没有什么影响。

3,一定要为你的所有**共享并创建快捷方式,使其能在任何一台终端能看到所有的影视,如果你的**是分在几台电脑里放置的,应该先建立个文件夹,把其它电脑上**的文件的快捷方式放进来,然后把这个文件夹复制到每台终端的桌面上,换上漂亮的图标,取个类似“影视欣赏”的文件名就ok了。这种方法同样适合各种歌曲的使用,可用类似的方法建立个“音乐欣赏”。

4,网络设置:在微软网络客户中选择快速登录,这样启动过程中将不检测网络驱动器,加快启动速度;

登录中选择windows登录,启动过程将不出现登录对话框,可以避免因登录时点取消而未登录网络的情况(这种情况下,客户机可以上网,但不能访问网上邻居)。

5,同一部片子能同时被数台电脑同时调用,一般不影响效果,但应该尽量避免这种情况的发生(对硬盘损耗较大),如果某个片子同时看的人实在太多,应事先多在硬盘中复制几份(尽量选择不同的分区)供调用。

6,一台**服务器可支持多少用户同时观看?中等的网吧(单影视服务器,客户机50台以下,使用10m的网络即可,当然百兆的网络就更好了)一台影视服务器可同时支持二十台左右的电脑同时播放rm**(mpeg或vcd就要少了)。事实上网吧中不可能所有的顾客都一起看**(通常在50%以下),所以这个数目可基本满足五十台以下的网吧了

实际环境举例(我的网吧):依拖一所大学,电脑三十六台,10m网络,单影视服务器(c2-600, 128m , 240g/5400转,对外营业);把**按类型(如成龙全集,007全集,美国大片,贺岁片,某某电视剧,某某动画片等等)存放在不同的文件夹中,把这些文件夹共享出来,将影视服务器在各个电脑上建立快捷方式,将共享名改为影视欣赏;四个hub(三个16口,一个8口),采用堆叠; 在全满的时候通常是十五人左右同时看**,最高达到十九人同时观看(还有同时从影视服务器调音乐听的),运转正常,从未出现广播风暴。

影视播放中的故障解决及相关问题:

在网吧中有问题都是正常的,没有问题才不正常了,当然影视系统也不例外,但相比网络的问题,它的问题一般还是好解决的。

realplayer的声道问题,realplayer不能调节声道,这是这个软件的最大bug,升级了n次也没解决,不知道这些做软件的干什么去了,当然我们也有办法处理,就是调用系统的声音属性调节声道(稍麻烦了点)。方法是:调出声音属性(最快捷的方式是双击任务栏中的小喇叭图标)调节两个项目,如果你的菜单是中文的,这两项就是主音量和声波,如果是英文的就是volume和wave。声道主要是由volume控制的,声波则能优化声音性质,实际作一下,反复对比你就会知道这两项都是怎么回事了。补充最重要的一点,你的**必须是双声道的才能调节,如果做盘的把两个声道做到了一起,那怎么调就都白扯了。

播放中出现断续的问题, 放映过程中声音或图像出现断续,如果是网络因素,可能是影视服务器出现问题,局域网中的看**的电脑都会这样,现象会很明显,这时应处理影视服务器,如果只是单机这样请重新播放,最次重新启动就能解决。

声像不一的问题,某部片子看的过程中出现声音和图像不一致的问题,这是系统处理时,放音设备和影像设备未能协调,通常关闭当前播放任务再重新打开就能解决。

播放不出来的问题,任凭怎样双击就是打不开**文件,这是由于当前系统资源已无法调出播放程序,需要重新启动电脑才能解决(如果谁有更简便的解决办法别忘了告诉我啊^!^)

音量小的问题,如果你的声卡没有问题(有的声卡音量小,从软件方面不好解决,只能配有源音箱加大音量了), 除了将耳机音量和声音属性中的主音量放至最大外,调节声波属性也很关键,往往声波(wave)的设置不当可造成音量过小,请左右调节“均衡”,找出最佳效果。

[!--empirenewspage--]

好了,说了不少了,我还真有点累了,这些文字如果能给那些正处于迷茫状态的同仁带去些认识,我就最高兴不过了。如果你做出的影视系统切实的帮你提高了效益我就高兴的没法再更高兴了。当然,由于各人所处的具体环境不同,同时为避免理论与实际脱节,行文中我也尽量从实际出发,但出现些错误或不相容的结果也是不可避免的,欢迎大家指正并和我继续探讨网吧影视服务技术及经营上的问题!希望大家都有应有的收获!

补充两点

1,影视服务器的配置无需太高,我用过三种配置c400/64, c566/128, p3 733/256, 对客户机的观看效果并无太大的影响。

2 一台服务器支持的客户机,10m网,一台可支持20个终端播放rm格式,但如果是mpeg格式只能支持10个左右,这里说的是达到较好的播放效果,如果终端超过这个数目,实际上也能支持,但效果就要下降(会出现偶尔的停顿或声像不一等情况)

很多朋友说要做流媒体服务器,说实话,我不建议网吧这样,这样做,因为,网吧都没有很专业的技术员,而且所有的软件都是D版,所有维护很麻烦,虽然网上有破解版,但是效果都不好,不过大家可以学习一下

大多数人对Realplayerer已经是十分熟悉了,利用Realplayer在线看**、听音乐,你是不是自己也想拥有一个Realplayer服务器呢?利网络流媒体服务器端软件Real Server能轻松实现你的愿望,下面笔者就介绍何利用它在局域网中建一个流媒体服务器。

什么是Real Server

RealNetworks 流服务器端软件,用它可以在网上发布Real格式的Audio、Video文件,以流格式(RTSP协议)进行网上传输播放,不必担心rm文件被下载。 要实现网上流视频的点播与直播,在硬件之上需要安装一个服务器端软件,这个就是Real Server。

一、组建多媒体播放系统的组网环境

多媒体播放系统的组网环境要求由主从结构或者对等结构组网的若干台多媒体电脑,带声卡、音响、耳塞、麦克风等发声设备,并不受有盘网络和无盘网络的限制。而服务器操作系统要求Windows NT、Windows 2000Professional 、Win2000 Server,服务器要求指定有固定 IP 地址或者是 Intranet 的虚拟 IP地址,工作站端要求装Realplayer70以上的版本。

二、下载、安装Real Server90

1 如何下载

目前Real server已经有了90版,我们介绍的Real Server通过在线注册获得注册码可以免费使用一年,但在局域网内只允许25人同时使用。可在 RealNetworks 的网站下载 ,也可以到以下的地址直接下载:http://licensekeyrealnetworkscom/rnforms/products/servers/eval/indexhtml

当打开上述地址时,页面上要求你填写一些个人资料,需要特别注意的是,在填E-Mail时,一定要写一个可的地址,因为系统要寄一个授权码(License Key) ,以便软件安装完备后,好在服务器上使用,下载文件的大小有97MB。

2 如何安装

下载完备以后直接双击下载的文件,就可以自解压安装了。安装 Real Server 的过程和一般的软件安装差不多,在自解压完成后弹出图1的对话框,要你填写授权码。这时打开刚才下载软件时填写的信箱,把信箱中收到的授权码用Winzip解压到一某个目录中,在图1的“License File Location”下面填写上解压后保存的目录与文件名,这步很重要,服务器端能否使用全它了。

点击“Next”,选择安装目录、接受协议后,弹出图2对话框。要求填写用户名(Usename)和密码(Password),因为安装的Realserver是一套影音服务器软件,有系统管理者(Administrator)的登录进行管理,在这里我们把username 和 password都设置为“test”。记住它,等一下安装成功启动“Helix Server Administrator”时要用它来登录。 再点“Next”弹出图3的对话框

上面的英文意思是:请键入一个端口号,这个端口将授权给PNA联接,这个联接地址以“PNA://”开头。下面的“7070”是安装默认的PNA联接端口号,不要改它,紧接着在后面的安装中要设置RTSP联接、HTTP联接、MMS联接的端口号,这些都不要改它,以默认的为好。 最后一步会弹出图4的对话框,在“Install Helix Server a NT servce”前面一定要打上勾。

完成安装后,桌面上自动生成两个图标,一个是Helix Server(流媒体服务),另一个是Helix Server Administrator(流媒体服务管理者)。这时系统虽然没有要求重新启动,但是根据本人的使用经验,最好在安装完成后启动一下计算机。

三、启动服务器

启动服务器之前,先确保局域网网络是否接通、每一台工作站是否安装有Realplayer媒体播放软件,最好用70以上的版本。 首先,点击服务器桌面上的Helix Server图标,启动Helix Server,程序是在DOS窗口中运行的,道次运行完成后不能自动关闭程序,要手动关闭,以后再启动运行完成后会自动关闭的。

四、启动管理器

服务器桌面上另一个名为Helix Server Administrator图标,是对整个播放系统进行服务管理的一个系统程序。我们点击它会弹出如图5的“输入网络密码”对话框,其中的“站点:js”中的js实际上是本服务器的计算机名,不同的计算机名有不同的“站点”。“领域:js AdminRealm” 是播放系统自建的网络域,下面就是要输入用户名与密码了。在前面我们进行系统安装时不是把用户名Username和Password都设置为“test”了吗?这时就可以把这个“test”填入用户名与密码中。

在图5中填写好密码点击“确定”后弹出启动IE浏览器如图6,图的左边共有五行黑字,也就是对播放系统进行全部管理的五项基本内容:ServerSetup(建立服务)、Security(安全性) 、Logging & Monitoring(登陆及管理)、Broadcasting(网络广播)、Content Management(内容管理), 这里的每一项的管理细节,大家可以多试试。我们先看看在服务器上对播放系统进行测试。

五、播放系统测试

点击管理项的第一项“ServerSetup”后下拉出一些细项目,点击其中的“Media Samples(媒体实例)”(如图6)

在图6的右边就可以看到一些媒体材料供播放测试用,我们随便选择一个例子来进行测试,例如我们双击“Play SMIL Sample 2 ”弹出Realplayer播放器窗口(如图7),开始时会在播放器的底部看到“正在联接”和“正在缓冲”并且在时间不断的跳动,这说明整个系统安装联接成功。随后Realplayer进行播放。在播放器的“位置”后可看到联接地址为rtsp://js:554/africag2/africasmi。

在这个地址中我们可以看到,播放系统是采用RTSP联接方式进行播放的,js是服务器的计算机名或IP地址,后面的“554”是端口号可省略,“/africag2/africasmi”是媒体文件保存的路径。

六、工作端的连接

在工作站中我们同样启动Realplayer,在播放器的“位置”后输入“rtsp://js:554/africag2/africasmi”,“回车”,当我们同样在播放器的底部看到“正在联接”和“正在缓冲”并且在时间不断的跳动时,那么整个系统才算大功告成,播放文件默认存入路径在Helix Server安装目录下的Content子目录,你可以将rm格试的影片存放该目录下,然后在客户机Realplayer中播放器的位置输入rtsp://js/影片名rm,你就可以慢慢的欣赏影片了。

前言

Tomcat隶属于Apache基金会,是开源的轻量级Web应用服务器,使用非常广泛。serverxml是Tomcat中最重要的配置文件,serverxml的每一个元素都对应了Tomcat中的一个组件;通过对xml文件中元素的配置,可以实现对Tomcat中各个组件的控制。因此,学习serverxml文件的配置,对于了解和使用Tomcat至关重要。

本文将通过实例,介绍serverxml中各个组件的配置,并详细说明Tomcat各个核心组件的作用以及各个组件之间的相互关系。

说明:由于serverxml文件中元素与Tomcat中组件的对应关系,后文中为了描述方便,“元素”和“组件”的使用不严格区分。

一、一个serverxml配置实例

serverxml位于$TOMCAT_HOME/conf目录下;下面是一个serverxml实例。后文中将结合该实例讲解serverxml中,各个元素的含义和作用;在阅读后续章节过程中,可以对照该xml文档便于理解。

二、serverxml文档的元素分类和整体结构

1、整体结构

serverxml的整体结构如下:

该结构中只给出了Tomcat的核心组件,除了核心组件外,Tomcat还有一些其他组件,下面介绍一下组件的分类。

2、元素分类

serverxml文件中的元素可以分为以下4类:

(1)顶层元素:和

元素是整个配置文件的根元素,元素则代表一个Engine元素以及一组与之相连的Connector元素。

(2)连接器:

代表了外部客户端发送请求到特定Service的接口;同时也是外部客户端从特定Service接收响应的接口。

(3)容器:

容器的功能是处理Connector接收进来的请求,并产生相应的响应。Engine、Host和Context都是容器,但它们不是平行的关系,而是父子关系:Engine包含Host,Host包含Context。一个Engine组件可以处理Service中的所有请求,一个Host组件可以处理发向一个特定虚拟主机的所有请求,一个Context组件可以处理一个特定Web应用的所有请求。

(4)内嵌组件:可以内嵌到容器中的组件。实际上,Server、Service、Connector、Engine、Host和Context是最重要的最核心的Tomcat组件,其他组件都可以归为内嵌组件。

下面将详细介绍Tomcat中各个核心组件的作用,以及相互之间的关系。

三、核心组件

本部分将分别介绍各个核心组件的作用、特点以及配置方式等。

1、Server

Server元素在最顶层,代表整个Tomcat容器,因此它必须是serverxml中唯一一个最外层的元素。一个Server元素中可以有一个或多个Service元素。

在第一部分的例子中,在最外层有一个元素,shutdown属性表示关闭Server的指令;port属性表示Server接收shutdown指令的端口号,设为-1可以禁掉该端口。

Server的主要任务,就是提供一个接口让客户端能够访问到这个Service集合,同时维护它所包含的所有的Service的声明周期,包括如何初始化、如何结束服务、如何找到客户端要访问的Service。

2、Service

Service的作用,是在Connector和Engine外面包了一层,把它们组装在一起,对外提供服务。一个Service可以包含多个Connector,但是只能包含一个Engine;其中Connector的作用是从客户端接收请求,Engine的作用是处理接收进来的请求。

在第一部分的例子中,Server中包含一个名称为“Catalina”的Service。实际上,Tomcat可以提供多个Service,不同的Service监听不同的端口,后文会有介绍。

3、Connector

Connector的主要功能,是接收连接请求,创建Request和Response对象用于和请求端交换数据;然后分配线程让Engine来处理这个请求,并把产生的Request和Response对象传给Engine。

通过配置Connector,可以控制请求Service的协议及端口号。在第一部分的例子中,Service包含两个Connector:

在这个例子中,Tomcat监听HTTP请求,使用的是8080端口,而不是正式的80端口;实际上,在正式的生产环境中,Tomcat也常常监听8080端口,而不是80端口。这是因为在生产环境中,很少将Tomcat直接对外开放接收请求,而是在Tomcat和客户端之间加一层代理服务器(如nginx),用于请求的转发、负载均衡、处理静态文件等;通过代理服务器访问Tomcat时,是在局域网中,因此一般仍使用8080端口。

(2)通过配置第2个Connector,客户端可以通过8009端口号使用AJP协议访问Tomcat。AJP协议负责和其他的HTTP服务器(如Apache)建立连接;在把Tomcat与其他HTTP服务器集成时,就需要用到这个连接器。之所以使用Tomcat和其他服务器集成,是因为Tomcat可以用作Servlet/JSP容器,但是对静态资源的处理速度较慢,不如Apache和IIS等HTTP服务器;因此常常将Tomcat与Apache等集成,前者作Servlet容器,后者处理静态资源,而AJP协议便负责Tomcat和Apache的连接。Tomcat与Apache等集成的原理如下图(来源):

4、Engine

Engine组件在Service组件中有且只有一个;Engine是Service组件中的请求处理组件。Engine组件从一个或多个Connector中接收请求并处理,并将完成的响应返回给Connector,最终传递给客户端。

前面已经提到过,Engine、Host和Context都是容器,但它们不是平行的关系,而是父子关系:Engine包含Host,Host包含Context。

在第一部分的例子中,Engine的配置语句如下:

其中,name属性用于日志和错误信息,在整个Server中应该唯一。defaultHost属性指定了默认的host名称,当发往本机的请求指定的host名称不存在时,一律使用defaultHost指定的host进行处理;因此,defaultHost的值,必须与Engine中的一个Host组件的name属性值匹配。

5、Host

(1)Engine与Host

Host是Engine的子容器。Engine组件中可以内嵌1个或多个Host组件,每个Host组件代表Engine中的一个虚拟主机。Host组件至少有一个,且其中一个的name必须与Engine组件的defaultHost属性相匹配。

(2)Host的作用

Host虚拟主机的作用,是运行多个Web应用(一个Context代表一个Web应用),并负责安装、展开、启动和结束每个Web应用。

Host组件代表的虚拟主机,对应了服务器中一个网络名实体(如”wwwtestcom”,或IP地址”116252525”);为了使用户可以通过网络名连接Tomcat服务器,这个名字应该在DNS服务器上注册。

客户端通常使用主机名来标识它们希望连接的服务器;该主机名也会包含在HTTP请求头中。Tomcat从HTTP头中提取出主机名,寻找名称匹配的主机。如果没有匹配,请求将发送至默认主机。因此默认主机不需要是在DNS服务器中注册的网络名,因为任何与所有Host名称不匹配的请求,都会路由至默认主机。

(3)Host的配置

在第一部分的例子中,Host的配置如下:

下面对其中配置的属性进行说明:

name属性指定虚拟主机的主机名,一个Engine中有且仅有一个Host组件的name属性与Engine组件的defaultHost属性相匹配;一般情况下,主机名需要是在DNS服务器中注册的网络名,但是Engine指定的defaultHost不需要,原因在前面已经说明。

unpackWARs指定了是否将代表Web应用的WAR文件解压;如果为true,通过解压后的文件结构运行该Web应用,如果为false,直接使用WAR文件运行Web应用。

Host的autoDeploy和appBase属性,与Host内Web应用的自动部署有关;此外,本例中没有出现的xmlBase和deployOnStartup属性,也与Web应用的自动部署有关;将在下一节(Context)中介绍。

6、Context

(1)Context的作用

Context元素代表在特定虚拟主机上运行的一个Web应用。在后文中,提到Context、应用或Web应用,它们指代的都是Web应用。每个Web应用基于WAR文件,或WAR文件解压后对应的目录(这里称为应用目录)。

Context是Host的子容器,每个Host中可以定义任意多的Context元素。

在第一部分的例子中,可以看到serverxml配置文件中并没有出现Context元素的配置。这是因为,Tomcat开启了自动部署,Web应用没有在serverxml中配置静态部署,而是由Tomcat通过特定的规则自动部署。下面介绍一下Tomcat自动部署Web应用的机制。

(2)Web应用自动部署

Host的配置

要开启Web应用的自动部署,需要配置所在的虚拟主机;配置的方式就是前面提到的Host元素的deployOnStartup和autoDeploy属性。如果deployOnStartup和autoDeploy设置为true,则tomcat启动自动部署:当检测到新的Web应用或Web应用的更新时,会触发应用的部署(或重新部署)。二者的主要区别在于,deployOnStartup为true时,Tomcat在启动时检查Web应用,且检测到的所有Web应用视作新应用;autoDeploy为true时,Tomcat在运行时定期检查新的Web应用或Web应用的更新。除此之外,二者的处理相似。

通过配置deployOnStartup和autoDeploy可以开启虚拟主机自动部署Web应用;实际上,自动部署依赖于检查是否有新的或更改过的Web应用,而Host元素的appBase和xmlBase设置了检查Web应用更新的目录。

其中,appBase属性指定Web应用所在的目录,默认值是webapps,这是一个相对路径,代表Tomcat根目录下webapps文件夹。

xmlBase属性指定Web应用的XML配置文件所在的目录,默认值为conf//,例如第一部分的例子中,主机localhost的xmlBase的默认值是$TOMCAT_HOME/conf/Catalina/localhost。

检查Web应用更新

一个Web应用可能包括以下文件:XML配置文件,WAR包,以及一个应用目录(该目录包含Web应用的文件结构);其中XML配置文件位于xmlBase指定的目录,WAR包和应用目录位于appBase指定的目录。

Tomcat按照如下的顺序进行扫描,来检查应用更新:

A、扫描虚拟主机指定的xmlBase下的XML配置文件

B、扫描虚拟主机指定的appBase下的WAR文件

C、扫描虚拟主机指定的appBase下的应用目录

元素的配置

Context元素最重要的属性是docBase和path,此外reloadable属性也比较常用。

docBase指定了该Web应用使用的WAR包路径,或应用目录。需要注意的是,在自动部署场景下(配置文件位于xmlBase中),docBase不在appBase目录中,才需要指定;如果docBase指定的WAR包或应用目录就在docBase中,则不需要指定,因为Tomcat会自动扫描appBase中的WAR包和应用目录,指定了反而会造成问题。

path指定了访问该Web应用的上下文路径,当请求到来时,Tomcat根据Web应用的 path属性与URI的匹配程度来选择Web应用处理相应请求。例如,Web应用app1的path属性是”/app1”,Web应用app2的path属性是”/app2”,那么请求/app1/indexhtml会交由app1来处理;而请求/app2/indexhtml会交由app2来处理。如果一个Context元素的path属性为””,那么这个Context是虚拟主机的默认Web应用;当请求的uri与所有的path都不匹配时,使用该默认Web应用来处理。

但是,需要注意的是,在自动部署场景下(配置文件位于xmlBase中),不能指定path属性,path属性由配置文件的文件名、WAR文件的文件名或应用目录的名称自动推导出来。如扫描Web应用时,发现了xmlBase目录下的app1xml,或appBase目录下的app1WAR或app1应用目录,则该Web应用的path属性是”app1”。如果名称不是app1而是ROOT,则该Web应用是虚拟主机默认的Web应用,此时path属性推导为””。

reloadable属性指示tomcat是否在运行时监控在WEB-INF/classes和WEB-INF/lib目录下class文件的改动。如果值为true,那么当class文件改动时,会触发Web应用的重新加载。在开发环境下,reloadable设置为true便于调试;但是在生产环境中设置为true会给服务器带来性能压力,因此reloadable参数的默认值为false。

下面来看自动部署时,xmlBase下的XML配置文件app1xml的例子:

在该例子中,docBase位于Host的appBase目录之外;path属性没有指定,而是根据app1xml自动推导为”app1”;由于是在开发环境下,因此reloadable设置为true,便于开发调试。

自动部署举例

最典型的自动部署,就是当我们安装完Tomcat后,$TOMCAT_HOME/webapps目录下有如下文件夹:

当我们启动Tomcat后,可以使用http://localhost:8080/来访问Tomcat,其实访问的就是ROOT对应的Web应用;我们也可以通过http://localhost:8080/docs来访问docs应用,同理我们可以访问examples/host-manager/manager这几个Web应用。

(3)serverxml中静态部署Web应用

除了自动部署,我们也可以在serverxml中通过元素静态部署Web应用。静态部署与自动部署是可以共存的。在实际应用中,并不推荐使用静态部署,因为serverxml 是不可动态重加载的资源,服务器一旦启动了以后,要修改这个文件,就得重启服务器才能重新加载。而自动部署可以在Tomcat运行时通过定期的扫描来实现,不需要重启服务器。

serverxml中使用Context元素配置Web应用,Context元素应该位于Host元素中。举例如下:

1

docBase:静态部署时,docBase可以在appBase目录下,也可以不在;本例中,docBase不在appBase目录下。

path:静态部署时,可以显式指定path属性,但是仍然受到了严格的限制:只有当自动部署完全关闭(deployOnStartup和autoDeploy都为false)或docBase不在appBase中时,才可以设置path属性。在本例中,docBase不在appBase中,因此path属性可以设置。

reloadable属性的用法与自动部署时相同。

四、核心组件的关联

1、整体关系

核心组件之间的整体关系,在上一部分有所介绍,这里总结一下:

Server元素在最顶层,代表整个Tomcat容器;一个Server元素中可以有一个或多个Service元素。

Service在Connector和Engine外面包了一层,把它们组装在一起,对外提供服务。一个Service可以包含多个Connector,但是只能包含一个Engine;Connector接收请求,Engine处理请求。

Engine、Host和Context都是容器,且 Engine包含Host,Host包含Context。每个Host组件代表Engine中的一个虚拟主机;每个Context组件代表在特定Host上运行的一个Web应用。

2、如何确定请求由谁处理?

当请求被发送到Tomcat所在的主机时,如何确定最终哪个Web应用来处理该请求呢?

(1)根据协议和端口号选定Service和Engine

Service中的Connector组件可以接收特定端口的请求,因此,当Tomcat启动时,Service组件就会监听特定的端口。在第一部分的例子中,Catalina这个Service监听了8080端口(基于HTTP协议)和8009端口(基于AJP协议)。当请求进来时,Tomcat便可以根据协议和端口号选定处理请求的Service;Service一旦选定,Engine也就确定。

通过在Server中配置多个Service,可以实现通过不同的端口号来访问同一台机器上部署的不同应用。

(2)根据域名或IP地址选定Host

Service确定后,Tomcat在Service中寻找名称与域名/IP地址匹配的Host处理该请求。如果没有找到,则使用Engine中指定的defaultHost来处理该请求。在第一部分的例子中,由于只有一个Host(name属性为localhost),因此该Service/Engine的所有请求都交给该Host处理。

(3)根据URI选定Context/Web应用

这一点在Context一节有详细的说明:Tomcat根据应用的 path属性与URI的匹配程度来选择Web应用处理相应请求,这里不再赘述。

(4)举例

以请求http://localhost:8080/app1/indexhtml为例,首先通过协议和端口号(http和8080)选定Service;然后通过主机名(localhost)选定Host;然后通过uri(/app1/indexhtml)选定Web应用。

3、如何配置多个服务

通过在Server中配置多个Service服务,可以实现通过不同的端口号来访问同一台机器上部署的不同Web应用。

在serverxml中配置多服务的方法非常简单,分为以下几步:

(1)复制元素,放在当前后面。

(2)修改端口号:根据需要监听的端口号修改元素的port属性;必须确保该端口没有被其他进程占用,否则Tomcat启动时会报错,而无法通过该端口访问Web应用。

以Win7为例,可以用如下方法找出某个端口是否被其他进程占用:netstat -aon|findstr “8081″发现8081端口被PID为2064的进程占用,tasklist |findstr “2064″发现该进程为FrameworkServiceexe(这是McAfee杀毒软件的进程)。

(3)修改Service和Engine的name属性

(4)修改Host的appBase属性(如webapps2)

(5)Web应用仍然使用自动部署

(6)将要部署的Web应用(WAR包或应用目录)拷贝到新的appBase下。

以第一部分的serverxml为例,多个Service的配置如下:

http://localhost:8080/docs/

http://localhost:8084/docs/

五、其他组件

除核心组件外,serverxml中还可以配置很多其他组件。下面只介绍第一部分例子中出现的组件,如果要了解更多内容,可以查看Tomcat官方文档。

1、Listener

Listener(即监听器)定义的组件,可以在特定事件发生时执行特定的操作;被监听的事件通常是Tomcat的启动和停止。

监听器可以在Server、Engine、Host或Context中,本例中的监听器都是在Server中。实际上,本例中定义的6个监听器,都只能存在于Server组件中。监听器不允许内嵌其他组件。

监听器需要配置的最重要的属性是className,该属性规定了监听器的具体实现类,该类必须实现了orgapachecatalinaLifecycleListener接口。

下面依次介绍例子中配置的监听器:

VersionLoggerListener:当Tomcat启动时,该监听器记录Tomcat、Java和操作系统的信息。该监听器必须是配置的第一个监听器。

AprLifecycleListener:Tomcat启动时,检查APR库,如果存在则加载。APR,即Apache Portable Runtime,是Apache可移植运行库,可以实现高可扩展性、高性能,以及与本地服务器技术更好的集成。

JasperListener:在Web应用启动之前初始化Jasper,Jasper是JSP引擎,把JVM不认识的JSP文件解析成java文件,然后编译成class文件供JVM使用。

JreMemoryLeakPreventionListener:与类加载器导致的内存泄露有关。

GlobalResourcesLifecycleListener:通过该监听器,初始化< GlobalNamingResources>标签中定义的全局JNDI资源;如果没有该监听器,任何全局资源都不能使用。< GlobalNamingResources>将在后文介绍。

ThreadLocalLeakPreventionListener:当Web应用因thread-local导致的内存泄露而要停止时,该监听器会触发线程池中线程的更新。当线程执行完任务被收回线程池时,活跃线程会一个一个的更新。只有当Web应用(即Context元素)的renewThreadsWhenStoppingContext属性设置为true时,该监听器才有效。

2、GlobalNamingResources与Realm

第一部分的例子中,Engine组件下定义了Realm组件:

Realm,可以把它理解成“域”;Realm提供了一种用户密码与web应用的映射关系,从而达到角色安全管理的作用。在本例中,Realm的配置使用name为UserDatabase的资源实现。而该资源在Server元素中使用GlobalNamingResources配置:

GlobalNamingResources元素定义了全局资源,通过配置可以看出,该配置是通过读取$TOMCAT_HOME/ conf/tomcat-usersxml实现的。

关于Tomcat域管理的更多内容,可以参考:Realm域管理

3、Valve

在第一部分的例子中,Host元素内定义了Valve组件:

单词Valve的意思是“阀门”,在Tomcat中代表了请求处理流水线上的一个组件;Valve可以与Tomcat的容器(Engine、Host或Context)关联。

不同的Valve有不同的特性,下面介绍一下本例中出现的AccessLogValve。

AccessLogValve的作用是通过日志记录其所在的容器中处理的所有请求,在本例中,Valve放在Host下,便可以记录该Host处理的所有请求。AccessLogValve记录的日志就是访问日志,每天的请求会写到一个日志文件里。AccessLogValve可以与Engine、Host或Context关联;在本例中,只有一个Engine,Engine下只有一个Host,Host下只有一个Context,因此AccessLogValve放在三个容器下的作用其实是类似的。

本例的AccessLogValve属性的配置,使用的是默认的配置;下面介绍AccessLogValve中各个属性的作用:

(1)className:规定了Valve的类型,是最重要的属性;本例中,通过该属性规定了这是一个AccessLogValve。

(2)directory:指定日志存储的位置,本例中,日志存储在$TOMCAT_HOME/logs目录下。

(3)prefix:指定了日志文件的前缀。

(4)suffix:指定了日志文件的后缀。通过directory、prefix和suffix的配置,在$TOMCAT_HOME/logs目录下,可以看到如下所示的日志文件。

(5)pattern:指定记录日志的格式,本例中各项的含义如下:

%h:远程主机名或IP地址;如果有nginx等反向代理服务器进行请求分发,该主机名/IP地址代表的是nginx,否则代表的是客户端。后面远程的含义与之类似,不再解释。

%l:远程逻辑用户名,一律是”-”,可以忽略。

%u:授权的远程用户名,如果没有,则是”-”。

%t:访问的时间。

%r:请求的第一行,即请求方法(get/post等)、uri、及协议。

%s:响应状态,200,404等等。

%b:响应的数据量,不包括请求头,如果为0,则是””-。

例如,下面是访问日志中的一条记录

pattern的配置中,除了上述各项,还有一个非常常用的选项是%D,含义是请求处理的时间(单位是毫秒),对于统计分析请求的处理速度帮助很大。

开发人员可以充分利用访问日志,来分析问题、优化应用。例如,分析访问日志中各个接口被访问的比例,不仅可以为需求和运营人员提供数据支持,还可以使自己的优化有的放矢;分析访问日志中各个请求的响应状态码,可以知道服务器请求的成功率,并找出有问题的请求;分析访问日志中各个请求的响应时间,可以找出慢请求,并根据需要进行响应时间的优化。

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » 魔兽世界怎么改变默认的服务器?

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情