解析:
cs16服务器架设
一、基本安装篇
1、建立服务器的带宽和机器配置
16服务器对对带宽和机器配置的要求比15高一些,我在ADSL上通过浩方平台建立15服务器,可以在本机上进行游戏,但是16出现明显的停顿,无法流畅的游戏,即使机器配置很高也不能彻底解决,相信带宽是最大的瓶颈。
因此,使用ADSL或者机器配置一般的cser建议不要在本机上建立服务器,用lan的cser在本机上建立服务器效果也不会太理想(除非你只想提供一个服务器,过一把OP的瘾,呵呵)。
2、16服务器版本
我收集有6个版本的cs16,通过试用,个人认为esai2738经典版是最好的,只有200M,同时包括了建立服务器的必要组件,用来游戏与经典版建立的服务器能够很好的兼容。
下载地址:bt种子下载
3、下载完毕后,点击桌面的快捷方式‘Cs16服务器’,自己的服务器就开始工作了,就这么简单?!呵呵。不要只扔西红柿,再来几个鸡蛋,鸡蛋西红柿:)
这只是第一步。看看下边吧:
二、设置篇
1、右键打开桌面快捷方式的属性:
×:\Cs16中文版\hldsexe -game cstrike -port 27016 +maxplayers 16 +map de_dust2 -console +localinfo mm_gamedll dlls/hld pdll
其中27016为服务器端口,可以进行修改;
maxplayers 16为最大人数,可以自由变更,别超过32;
开始地图de_dust2可以更换成你喜欢的地图;
+localinfo mm_gamedll dlls/hld pdll指你的游戏用哪个dll启动(很多人反映没有新特性,就是由于你的dll没设置好)
其他的参数建议不要更改。
2、反作弊软件的选择
很多自己建立了服务器的cser会发现无法进入游戏,或者进入后很快被踢出,我在开始建立服务器的时候也遇到了类似问题。查考了大量资料后,我认为是反作弊软件的冲突造成的。一般情况下,我们认为cd比vac要强,会自然想打开服务器的cd反作弊插件,或者进入游戏前打开cd。此时,以上问题就出现了。
因此,我们需要将cs的cd插件关掉:
打开\cstrike\addons\metamod\pluginsini,在“win32 addons/cdeath/cdmoddll”前加上,
即“win32 addons/cdeath/cdmoddll”。
进入服务器前也不要打开cd。
安装vac,打开cstrike\liblistgam,将设置成secure "1",一般情况下,安装完毕默认是打开的,如果关闭可以将1改为0。
wwcl是杜绝修改脚本作弊的插件,打开cstrike\addons\metamod\pluginsini,其中win32 addons/wwcl/dlls/pcawwclconfig_mmdll即为打开,可以在前面加上将其关闭。
建议:打开v 和wwcl,可在一定程度上防止作弊。
3、服务器中amx插件的使用
可以说,amx插件对15而言是成熟的,在16上使用是不是有冲突还不敢肯定,因此建议不要安装过多的amx插件。
我的amx插件:
; AMX Mod plugins
adminamx admin base (required for any admin-related)
;admin_mysqlamx admin base - MySQL version (ment adminamx)
admincmdamx basic admin console mands
adminhelpamx help mand for admin console mands
adminslotsamx slot reservation
menufrontamx front-end for admin menus
cmdmenuamx mand menu (speech, settings)
plmenuamx players menu (kick, ban, client cmds)
restmenuamx restrict weapons menu
map enuamx maps menu (vote, changelevel)
antifloodamx prevent clients from chat-flooding the server
adminchatamx console chat mands
adminvoteamx vote mands
nextmapamx displays next map in mapcycle
timeleftamx displays time left on map
mapchooseramx allows to vote for next map
scrollmsgamx displays a scrolling message
imessageamx displays information messages
welemsgamx console motd @ client connection
statsamx stats on death or round end (CSStats Module required!)
stats_loggingamx weapons stats logging (CSStats Module required!)
telemenuamx teleport menu (Fun Module required!)
miscstatsamx bunch of events announcement for Counter-Strike
pausecfgamx allows to pause and unpause some plugins
statscfgamx allows to manage stats plugins via menu and mands
;ucstats_cstrikeamx i love you
;ucstats_liveamx hehe heh
;goreamx 44hehe
amx_restrictshieldsamx
前面加;的为禁止的。最后一个为禁用盾牌插件。
PS:看着服务器中一堆拿着盾牌的家伙,感觉实在是不爽:)
下载amx以前的版本安装,amx点击下载
免盾牌amx程序amx插件,解压后拷贝到\cstrike\addons\amx目录下,覆盖源文件。
完成后,可以自己考虑使用那些插件:打开\cstrike\addons\amx\plugins\pluginsini,进行修改。
4、服务器的一般设置
首先要设置你的服务器基本参数、OP密码等。
打开\cstrike\servercfg
sv_password "" 设置玩家进入你的服务器是否需要密码,在""中加上你的密码。
rcon_password "" 设置远程控制OP密码。
hostname "BeiJing JiaoDaJiaYuan cs16 Server" 设置你的服务器名称
sv_maxrate 10000
sv_minrate 1000
sv_maxspeed 320 以上三个为服务器网络连接参数,不建议修改
pausable 0 是否允许暂停游戏 禁止0/允许1
sv_cheats 0 作弊模式 关闭0/开启1,谁会开呢,呵呵
sv_aim 0 自动瞄准 关闭0/开启1
mp_flashlight 1 战术手电 允许1/禁止0
mp_footsteps 1 脚步声 开启1/关闭0
mp_falldamage 1 高处落下伤害 开启1/关闭0
mp_autokick 1 自动踢出不动的玩家 开启1/关闭0
allow_spectators 1 观察员模式 开启1/关闭0
sv_restartround 0 服务端设定游戏复位的时间,包括杀人数、武器、金钱和得分。设0不复位。建议设置为0,不要改。
mp_timelimit 450 每局时间,以分钟计。
mp_freezetime 3 购买武器冻结时间 (0-45)建议5秒以内。
mp_roundtime 3 每回合几分钟,一般为3
mp_buytime 025 购买武器装备时间(025-15)即15秒-90秒
mp_c4timer 35 c4炸d倒计时时间 (15-75)
mp_startmoney 800 开始游戏时的金钱数量(800-16000)
mp_forcechasecam 2 死亡后视角 1本队队友 2原地 0无限制
mp_chasecam 1 死亡后视角模式 0自由跟随/1固定跟随
mp_fadetoblack 0 人物死亡后屏幕 不变黑0/变黑1
mp_friendlyfire 0 友军误伤 关闭0/开启1,如果是混战服务器,建议设置为0,无聊的人很多:)
mp_friendly_grenade_damage 1 手雷友军伤害 关闭0/开启1
mp_tkpunish 0 杀害友军惩罚 0不惩罚/1惩罚:杀害队友超过(1-n)人,下一回合自动死亡
mp_autoteambalance 1 自动调整双方队伍平衡 不调整0/调整(1-n)个人
mp_limitteams 2 双方人数差超过n人即自动调整人数差异 0关闭
mp_hostagepenalty 0 杀害人质惩罚 0不惩罚/惩罚:规定时间内伤害人质超过(1-n)人自动踢出
mp_fraglimit 0 杀人数、得分上限 无0/有(1-n),超过上限就换地图。
mp_winlimit 0 胜利次数上限无0/有(1-n),超过上限就换地图。
mp_maxrounds 0 回合上限 无0/有(1-n),超过上限就换地图。
sv_allowdownload 1 允许下载 开启1/关闭0
sv_send_logos 1 允许下载(sv_allowdownload 1)开启时控制是否允许玩家的LOGO传送 允许1/禁止0
sv_send_resources 1 允许下载(sv_allowdownload 1)开启时控制是否允许资源文件传送 允许1/禁止0
sv_allowupload 1 允许上传 关闭0/开启1
sv_gravity 800 服务器重力设置 默认正常重力800,范围-999到99999,想享受一下玩家飘在空中的‘美景’,可以修改,^_^
mp_mapvoteratio 06 投票比率(大家可以通过投票踢出作弊者和更换地图) (01-1)
mp_ghostfrequency 01 设定鬼魂模式刷新值(01-1)
sv_sendvelocity 0服务器高品质纹理 关闭0/开启1
mp_lowlag 1服务器减少LAG延迟现象(对服务器要求高) 关闭0/开启1
mp_decals 300服务器细节数据发送 默认300 ,可减低到250、200,改善速度。
sv_voiceenable 1 服务器是否允许麦克风语音通讯 允许1/禁止0
sv_alltalk 0 服务器是否允许客户端之间使用语音通信 允许1/禁止0
sv_region 4 设置你的服务器为亚洲地区,玩家刷新的时候更方便找到你的服务器。
mp_logfile 0服务器是否记录文件 不记录0/记录1
mp_logmessages 0 是否在记录文件里记录谈话内容 不记录0/记录1
load ban files
ex-ec listipcfg
ex-ec bannedcfg
进入别人的服务器看到一些有意思的欢迎画面和欢迎词,自己也可以做。
打开\cstrike\motdtxt,里面可以只是文本文件,想写的都写上吧,注意不要太多就OK了。如果你想换成你的网址和logo,可以在其中修改。把你的logo文件放到\cstrike目录下,修改amx_imessage "Wele to %hostname% Please Enjoy Yourself :]" ""
amx_imessage "Please Have Fun in %hostname%
More Info Please Visit jdjy" ""
amx_imessage "say / will be kick" ""
amx_imessage "Don't Camp Don't Teamkiller Don't Runaway" "" clanmod风格的服务器MOTD彩色信息,后面的颜色RGB代码可以自己修改
7、服务器的管理 526增加内容
服务器管理强烈建议使用hlsw,如果你开通了amx功能,可以通过hlsw实现kick作弊者、slap玩家、banIP等。
8、再次增加紧急提示内容:526
如果你安装了amx就可能存在一个严重问题,就是服务器的最大玩家人数会发生变换,玩家进入的时候明明有空位,但是会显示被kick无法进入。
这是因为amx为OP预留了通道,但一般情况下我们根本用不到。
解决办法:打开×:\Cs16中文版\cstrike\addons\amx\amxcfg
修改amx_reserved_slots 0 预留的管理员通道(默认预留1个位置给OP),将1或2改为0就ok了。
9、你的机器够劲吗?想开两个服务器??605增加内容
安装后,在桌面有一个‘16服务器’的快捷方式,一般情况下默认使用27016端口。如果想在同一台机器上建立两个服务器,不用再装一套服务器软件。在桌面‘16服务器’图标上点击右键,选择‘发送到桌面快捷方式’。此时在桌面上出现了另外一个16服务器的快捷方式。用以上介绍的办法,将这个快捷方式的端口改为27017或者你想要的端口号。
ok了,此时你就可以开通两个不同端口号的服务器了。
但是,存在一个小问题,就是两个新建服务器使用同一套配置文件,服务器名、基本设置都是一样的,怎么区分呢?如果我想改变其中一个的op密码又怎么办呢?
10、不同端口服务器使用不同的配置文件(servercfg)
在9中,我们建立了两个或者更多个服务器,怎么让他们使用不同的配置文件呢?
在桌面启动图标的属性中,加上一个指定servercfg的参数:
+servercfgfile server2cfg 其中server2cfg名称、内容你可以自己改。
servercfg在\cstrike\目录下,你可以用复制的方法创建几个severcfg文件,内容请参考上面内容自己修改。
三、游戏端版本的选择
强烈建议下载esai2738版本,免去升级的麻烦。
如果你有以前的白金版或者其他版本(2569),可以通过升级来解决无法进入服务器的问题。升级时注意先2569-2688-2705-2738,至于为什么要顺序升级我也不清楚。先安装2688升级程序点击下载,再安装2717升级程序点击下载2717-2738升级程序,点击下载。2738最新升级程序5、4放出,点击下载,对于其中的直接覆盖的版本,注意备份你的原文件。
升级中注意安装路径:
安装升级包到 x:\Esai Cs16 完全版
而不是x:\Esai Cs16 完全版\Esai Cs16 完全版或者 x:\Esai Cs16 完全版\Cstrike\
当然如果你在安装时自定义了安装目录,那就要根据你的情况作调整。
这里一定要注意安装路径,安装在你的cs16第一层目录下,里面的文件有swdsdll,可以先看一下。安装成功了吗?进入游戏,不要看显示的版本号,而是在按~呼出控制台,输入version,应该显示2738。如果你的没有显示2705,说明安装存在问题,请重新安装升级包。
提示:上文中提到的cfg gam/ini文件均可用记事本打开进行编辑。
526新增内容。
新增内容。
如要转贴,请您跟贴说明,并保留我的服务器内容。
交大嘉园cs16服务器:
2039363225:27016 1#服务器pub
2039363225:27017 2#服务器
2039363251:27016 1#比赛服务器
2039363251:27017 2#比赛服务器
gaga
五:端口映射相关及图解
1关于内网机器(如网吧局域网的机器)建立公网cs服务器之端口问题,前提是内网主机或本机有公网ip
对于此类局域网机子建立的cs服务器,局域网的玩家由“局域网游戏”进,外部网的玩家由“网上对战”进!开启的cs服务器启动参数:
-game cstrike -port 27016 +maxplayers 22 -nomaster -noipx -insecure +map de_dust2 +sv_lan 1
下载ⅠⅡ端口映射图解说明
bbsesai/indexphpact=Attach&typost&id=1480253
Ⅰ双网卡inter连接共享主机设置
要安装PortTunnel_CHS软件,(其他的我没用过,呵呵)在主机(比如网吧主机)
安装SP1以上补丁,简单的就安装ie6;接着安装MicrosoftNET Framework;
最后安装PortTunnel软件。
Ⅱ单网卡路由器主机设置
2ADSL用户、小区宽带(首先要有公网ip)
开启的cs服务器启动参数:
-game cstrike +ip 218281922 -port 27015 +maxplayers 22 -nomaster -noipx -insecure +map de_dust2 +sv_lan 1
把里面的ip改为当时cs服务器在互联网上的ip
如需要绑定cs服务器ip地址则需申请一个动态解析域名并安装其客户端,具体在哪些网站申请域名大家知道的可以跟帖交流一下,呵呵
我很久没弄此类服务器了问题一:数据库空间满了怎么处理 1:分离数据库 企业管理器->服务器->数据库->右键->分离数据库
2:删除LOG文件
3:附加数据库 企业管理器->服务器->数据库->右键->附加数据库
此法生成新的LOG,大小只有500多K
再将此数据库设置自动收缩
或用代码分离 pubs,然后将 pubs 中的一个文件附加到当前服务器:
EXEC sp_detach_db @dbname = 'pubs'
EXEC sp_attach_single_file_db @dbname = 'pubs',
@physname = 'c:\Program Files\Microsoft SQL Server\MSSQL\Data\pubsmdf'
问题二:数据库满了怎么办? 数据库是只读的(Readonly),也即不可以修改(增加\删除\修改都不行)
问题三:SQL server数据库日志满了怎么处理? 解决方法
日志文件满而造成SQL数据库无法写入文件时,可用两种方法:
一种方法:清空日志。
1.打开查询分析器,输入命令
DUMP TRANSACTION 数据库名 WITH NO_LOG
2再打开企业管理器--右键你要压缩的数据库--所有任务--收缩数据库--收缩文件--选择日志文件--在收缩方式里选择收缩至XXM,这里会给出一个允许收缩到的最小M数,直接输入这个数,确定就可以了。
另一种方法有一定的风险性,因为SQL SERVER的日志文件不是即时写入数据库主文件的,如处理不当,会造成数据的损失。
1: 删除LOG
分离数据库 企业管理器->服务器->数据库->右键->分离数据库
2:删除LOG文件
附加数据库 企业管理器->服务器->数据库->右键->附加数据库
此法生成新的LOG,大小只有500多K。
注意:建议使用第一种方法。
如果以后,不想要它变大。
SQL2000下使用:
在数据库丁点右键->属性->选项->故障恢复-模型-选择-简单模型。
或用SQL语句:
alter database 数据库名 set recovery simple
另外,如上图中数据库属性有两个选项,与事务日志的增长有关:
Truncate log on checkpoint
(此选项用于SQL70,SQL 2000中即故障恢复模型选择为简单模型)
当执行CHECKPOINT 命令时如果事务日志文件超过其大小的70% 则将其内容清除在开发数据库时时常将此选项设置为True
Auto shrink
定期对数据库进行检查当数据库文件或日志文件的未用空间超过其大小的25%时,系统将会自动缩减文件使其未用空间等于25% 当文件大小没有超过其建立时的初始大小时不会缩减文件缩减后的文件也必须大于或等于其初始大小对事务日志文件的缩减只有在对其作备份时或将Truncate log on checkpoint 选项设为True 时才能进行。
注意:一般立成建立的数据库默认属性已设好,但碰到意外情况使数据库属性被更改,请用户清空日志后,检查数据库的以上属性,以防事务日志再次充满。
问题四:数据库空间满了怎么处理 各数据库空间满处理方法
wenkubaidu/YexzIW
问题五:网站的虚拟空间,数据库满了怎么办? 肯定有影响啦,你自己说的,每天发很多文章,最终数据库满了,就是说文章保存在数据库中,一般来说数据库保存钉东西都是内存不是很大的东西,除了网站cms所必要的数据和系统日志之外,就是你文章的文字啦,至于和视频等等占用空间很多的东西就保存在网页空间里面了,和数据没有关系。
就如楼上的所说,问题不大,增加数据库的容量就行了,现在一般的IDC都会提供这样的服务,对你现在的网站不会有影响的。此外联系客服也很重要的。祝你早日解决问题!
问题六:SQL数据磁盘满了怎么解决? -- 清空日志
--压缩日志及数据库文件大小
/--特别注意
请按步骤进行,未进行前面的步骤,请不要做后面的步骤
否则可能损坏你的数据库
--/
selectfromsysfiles
--1清空日志
DUMPTRANSACTIONusernameWITHNO_LOG
--2截断事务日志:
BACKUPLOGusernameWITHNO_LOG
--3收缩数据库文件(如果不压缩,数据库的文件不会减小
-- 企业管理器--右键你要压缩的数据库--所有任务--收缩数据库--收缩文件
--选择日志文件--在收缩方式里选择收缩至XXM,这里会给出一个允许收缩到的最小M数,直接输入这个数,确定就可以了
--选择数据文件--在收缩方式里选择收缩至XXM,这里会给出一个允许收缩到的最小M数,直接输入这个数,确定就可以了
-- 也可以用SQL语句来完成
--收缩数据库
DBCCSHRINKDATABASE(username)
--收缩指定数据文件,1是文件号,可以通过这个语句查询到:selectfromsysfiles
DBCCSHRINKFILE(2)
--4为了最大化的缩小日志文件(如果是sql70,这步只能在查询分析器中进行)
-- a分离数据库:
-- 企业管理器--服务器--数据库--右键--分离数据库
-- b在我的电脑中删除LOG文件
-- c附加数据库:
-- 企业管理器--服务器--数据库--右键--附加数据库
-- 此法将生成新的LOG,大小只有500多K
-- 或用代码:
-- 下面的示例分离username,然后将username中的一个文件附加到当前服务器。
execsp_dboptionusername,'singleuser',true
a分离
[email protected] ='username'
b删除日志文件
execmasterxp_cmdshell'delD:\ProgramFiles\SQL\database\username_LOGldf'
c再附加
[email protected] ='username',
@physname='D:\ProgramFiles\SQL\database\username_DataMDF'
--5为了以后能自动收缩,做如下设置:
-- 企业管理器--服务器--右键数据库--属性--选项--选择自动收缩
--SQL语句设置方式:
EXECsp_dboption'数据库名','autoshrink','TRUE'
--6如果想以后不让它日志增长得太大
-- 企业管理器--服务器--右键数据>>
问题七:数据库日志已满,如何处理? 先提供一种复杂的方法压缩日志及数据库文件如下:1清空日志 dump transaction 库名 with no_log2截断事务日志: backup log 数据库名 with no_log3收缩数据库文件(如果不压缩,数据库的文件不会减小 企业管理器--右键你要压缩的数据库--所有任务--收缩数据库--收缩文件 --选择日志文件--在收缩方式里选择收缩至xxm,这里会给出一个允许收缩到的最小m数,直接输入这个数,确定就可以了 --选择数据文件--在收缩方式里选择收缩至xxm,这里会给出一个允许收缩到的最小m数,直接输入这个数,确定就可以了 也可以用sql语句来完成 --收缩数据库 dbcc shrinkdatabase(客户资料) --收缩指定数据文件,1是文件号,可以通过这个语句查询到:select from sysfiles dbcc shrinkfile(1)4为了最大化的缩小日志文件(如果是sql 70,这步只能在查询分析器中进行) a分离数据库: 企业管理器--服务器--数据库--右键--分离数据库 b在我的电脑中删除log文件 c附加数据库: 企业管理器--服务器--数据库--右键--附加数据库 此法将生成新的log,大小只有500多k 或用代码: 下面的示例分离 pubs,然后将 pubs 中的一个文件附加到当前服务器。 a分离 e x e c sp_detach_db @dbname = 'pubs' b删除日志文件 c再附加 e x e c sp_attach_single_file_db @dbname = 'pubs', @physname = 'c:\program files\microsoft sql server\mssql\data\pubsmdf'5为了以后能自动收缩,做如下设置: 企业管理器--服务器--右键数据库--属性--选项--选择自动收缩 --sql语句设置方式: e x e c sp_dboption '数据库名', 'autoshrink', 'true'6如果想以后不让它日志增长得太大 企业管理器--服务器--右键数据库--属性--事务日志 --将文件增长限制为xm(x是你允许的最大数据文件大小) --sql语句的设置方式: alter database 数据库名 modify file(name=逻辑文件名,maxsize=20) 我来完善答案完善答案通过审核后,可获得3点财富值最新回答:2012-06-20 05:01 版本:1个历史版本
问题八:如何从根本上解决SQL数据库日志已满的问题 1、你设置了日志文件的最大数,数据库的恢复模式是完整恢复模式,所有的针对数据库的改动都会记录到日志,不仅仅是你的改动数据库,数据库本身的 *** 作也有记录到日志,所以,日志文件才会不断增长。
2、那是因为大部分的电脑上的数据库,基本没怎么变过,但生产用的数据库经常变动,所以日志记录也变得巨大,我见过数据库200MB,但是日志文件50GB,因为本来数据库有10GB,因为测试需要删除了大部分的数据,结果导致日志文件增长到了50GB。
3、定时备份日志并收缩日志文件。
4、通过备份日志,并收缩日志文件,这个语句你自己百度。
5、日志是一个以事务编号连续的记录,比如,我第一次备份的日志事务编号为1-1000,那么日志就会被截断,并从1001开始,之后的日志备份就从1001开始了,所以,初始备份一直到最后一次备份都不能删除,否则使用日志恢复时会出现问题。
问题九:oracle数据库空间占满了,怎么办 1、删除无用文件或数据,腾空间。
2、将空间紧张的数据移到其他空闲空间。
3、增加新存储空间。
问题十:如何清理sql server 已满的数据库日志 SQLSERVER的数据库日志占用很大的空间,下面提供三种方法用于清除无用的数据库日志文件
方法一:
1、打开查询分析器,输入命令
backup log database_name WITH NO_log
2、再打开企业管理器--右键要压缩的数据库--所有任务--收缩数据库--收缩文件--选择日志文件--在收缩方式里选择收缩至xxm,这里会给出一个允许收缩到的最小m数,直接输入这个数,确定就可以了。
方法二:
设置检查点,自动截断日志
一般情况下,SQL数据库的收缩并不能很大程度上减小数据库大小,其主要作用是收缩日志大小,应当定期进行此 *** 作以免数据库日志过大
1、设置数据库模式为简单模式:打开SQL企业管理器,在控制台根目录中依次点开Microsoft SQL Server-->SQL Server组-->双击打开你的服务器-->双击打开数据库目录-->选择你的数据库名称(如用户数据库cwbase1)-->然后点击右键选择属性-->选择选项-->在故障还原的模式中选择“简单”,然后按确定保存
2、在当前数据库上点右键,看所有任务中的收缩数据库,一般里面的默认设置不用调整,直接点确定
3、收缩数据库完成后,建议将您的数据库属性重新设置为标准模式, *** 作方法同第一点,因为日志在一些异常情况下往往是恢复数据库的重要依据
方法三:通过SQL收缩日志
把代码复制到查询分析器里,然后修改其中的3个参数(数据库名,日志文件名,和目标日志文件的大小),运行即可
SET NOCOUNT on
DECLARE @logicalFileName sysname,
@MaxMinutes int,
@NewSize int
USE tablename -- 要 *** 作的数据库名
select @logicalFileName = 'tablename_log', -- 日志文件名
@MaxMinutes = 10, -- Limit on time allowed to wrap log
@NewSize = 1 -- 你想设定的日志文件的大小(M)
-- Setup / initialize
DECLARE @OriginalSize int
select @OriginalSize = size
from sysfiles
WHERE name = @logicalFileName
select 'Original Size of ' + db_name() + ' log is ' +
ConVERT(VARCHAR(30),@OriginalSize) + ' 8K pages or ' +
ConVERT(VARCHAR(30),(@OriginalSize8/1024)) + 'mb'
from sysfiles
WHERE name = @logicalFileName
CREATE TABLE DummyTrans
(DummyColumn char (8000) not null)
DECLARE @Counter int,
@StartTime DATETIME,
@Trunclog VARCHAR(255)
select @StartTime = getdate(),
@Trunclog = 'backup log >>注意本文是从技术角度,而不是商业角度来分析。
从技术角度来看,C/S和B/S除了UI不同,BLL(1)层和DAL层使用相同的DLL;BLL(0)层可以根据C/S、B/S特点开发;
即使用UI-->应用服务器(BLL0)-->BLL1-->DAL的架构方式。
1 首先看一下典型的使用场景
用户下载网页A,此时服务器更新了A的提交逻辑,A再提交后新的逻辑立即起作用,并保证所有的客户端是一样的。
在这一个场景中,有两类人:一类是客户,二类是程序开发者;客户访问了网站,程序开发者更新了网站程序。
2先说C/S
Client:客户端,Server:服务器端,最大的问题就在Server这个词,多数的C/S应用是C/DatabaseServer,而不是C/ApplicationServer。
21 C/DatabaseServer:即各个客户端直接访问了数据库,如果此时各个客户端的BLL层和DAL层是一样的,那没有什么问题;如果因为更新等因为BLL层和DAL层造成了不一致,就可能出现问题。
22 C/ApplicationServer:即各个客户端访问了应用服务器,而不能直接访问数据库
3接着说B/S
B/S=Browser +C/ApplicationServer,这里C是指Web服务器前端的请求分发的路由器,ApplicationServer即Web服务器。
如果有一台Web服务器配置多个域名的经验,应该很清楚这个意思。
从技术角度,B/S的本质是,不让Browser 直接读写数据库,而C/S开发则“不会舍近求远”来开发应用服务器层。
B/S架构:商业逻辑总是通过Web服务器,才能到达数据库,从而有了保证。而C/S架构,各C均直接访问了数据库,这是最大的不同。
以上说的是读写数据库的区别,而UI的区别,会明显一些。
反问一个问题:如果自己开发一个客户端来解析XML(相当于自定义HTML),
服务器上使用应用服务器来读写数据,是不是就可以获取B/S架构的好处,并克服B/S的非富客户端的缺点?(不考虑安全问题)
也许未来的智能手机App,都会是某种意义上的Browser,再由开发者定义自己的HTML是什么来获得C/S和B/S的双重好处。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)