自己tk的方法和工具

自己tk的方法和工具,第1张

自己tk的方法和工具
自己tk的方法和工具
1 使用Google Adwords Keyword Planner:Google Adwords Keyword Planner是Google提供的一种免费的关键词计划工具,可以帮助TK者提供有用的关键词和广告组合,以及每个关键词的搜索量和竞争程度。
2 使用Google Trends:Google Trends是Google提供的一种免费的关键词趋势分析工具,可以帮助TK者了解某个特定关键词的搜索量和搜索趋势,以及它们在不同地区的搜索热度。
3 使用Ahrefs:Ahrefs是一款付费的关键词研究工具,可以帮助TK者深入了解关键词的搜索量和竞争程度,以及它们在不同地区的搜索热度。
4 使用SEMrush:SEMrush是一款付费的关键词研究工具,可以帮助TK者识别有价值的关键词,以及每个关键词的搜索量、竞争程度和搜索趋势。
5 使用Moz:Moz是一款付费的关键词研究工具,可以帮助TK者识别有价值的关键词,以及每个关键词的搜索量和竞争程度。

要想架设一台较好的CS服务器,硬件的配置的高低尤为重要:
1要有足够的带宽,一般需要2M以上的专线,当然带宽越宽越好 : )
2机器配置一般奔腾III 1G,256M,就足可以胜任服务器的工作,如果要服务器稳定,当然配置越高越好了。
现在开始安装架设服务器的软件:
hlserver4110+cs15具体下载地址可以去官方网站进行下载先安装hlserver,然后将cs15也就是我们平常玩的cs装到cstrike目录下,一切搞定以后,下面就开始配置调试服务器了。
普通情况下你只需要在HLserver\cstrike\目录下建立servercfg、mapcycletxt、motdtxt这三个基本文件即可。servercfg是服务器的配置文件,mapcycletxt是地图循环的顺序,motdtxt是服务器的说明。
1编辑servercfg文件
可用任何文本编辑器进行编辑。
0为No,1为Yes。
sv_aim 0 是否自动瞄准
pausable 0 是否客户端可暂停游戏
hostname "CSchinanet CS'Server " 服务器名字
mp_timelimit 30 更换地图时间
mp_c4timer 45 炸d倒计时时间
mp_chasecam 0 是否固定镜头(如果选1,进入服务器后只能在固定地点观战,否则未加入队伍的人可以自由观看)
mp_falldamage 1 高处落下杀伤
mp_flashlight 1 是否有战术手电
mp_footsteps 1 是否有脚步声
mp_freezetime 4 每局开始固定买物品时间
mp_friendly_grenade_damage 1 是否手雷友军伤害
mp_friendlyfire 1 是否友军伤害
mp_autoteambalance 2 自动调整双方人数差异最低限制
mp_roundtime 4 每回合最大时间数
rcon_password 服务器密码,部分为自己设置
mp_limitteams N 双方超过N人即自动调整,N为数字
mp_tkpunish 1 是否伤害友军惩罚
mp_mapvoteratio 02 投票比率
mp_logfile 1 是否服务器留下记录文件
log on 开始记录
mp_playerid 0 为所有人在状态栏都可看到所有人的名字;1为只能看到自己人的名字;2为看不到任何人名字。0为默认。
mp_fadetoblack 1 人物死亡后屏幕变黑,0为不变。0为默认
mp_forcechasecam 0 死后可以随意看,1只可看自己人,2只可看摄像机角度。0为默认。
mp_buytime 90 可以购买物品时间,15分钟为默认。
mp_winlimit 17 当某方胜利次数达到17次更换地图。
allow_spectators 1 允许观察员角度,0为不允许,1为允许。1为默认。
mp_hostagepenalty=3 规定时间内伤害人质超过三人自动踢出
2mapcycletxt为地图文件名,不带后缀,如de_dustbsp,只取de_dust。地图在Hlserver\cstrike\maps目录下,将你想循环的地图挑出来,然后将文件名按上面所说的规则输入mapcycletxt中,每个地图之间用硬回车隔开。
3motdtxt为服务器说明文件,当每个玩家进入服务器后看到的第一个窗口就是。可以随意按照自己喜欢写。最好注明服务器的基本设置。
有了上面这些一个服务器基本就算具备了,但是别急,可不是运行HLexe来进游戏哦,用的是HLDSexe,而且要带上参数。下面再来说说服务器运行参数:
F:\Hserver\hldsexe -game cstrike -port 27016 +maxplayers 22 +map cs_office
-game cstrike 指定运行游戏为CS
-port 27016 指定游戏连接端口为27016
+maxplayers 22 游戏最大人数22人(游戏只支持20人,多余两人为观众)
+map cs_office 指定第一张地图为cs_office
+logsdir loggames\miltia01 指定记录文件存放目录
+servercfgfile server2cfg Listen Server 指定启动的配置文件名称
2架服务器所需安装的相关补丁
在局域网上建立服务器跟上面相同,不过可以在命令行里加上-nomaster让服务器不上WON认证,避免因为出国网络不通导致的服务器问题。同时加上+sv_lan 1 指定其为一个LAN server。其他人进服务器的时候进Internet game或者Lan game,选择Add server输入服务器的IP和上面你指定的端口即可。最后给服务器打上必要的补丁,这里说两种,一个是免cdkey补丁,一个是VAC反作弊补丁
给服务器打免CDKEY补丁,到下面的地址下载
>分类: 游戏 >> 网络游戏
解析:

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地址则需申请一个动态解析域名并安装其客户端,具体在哪些网站申请域名大家知道的可以跟帖交流一下,呵呵

我很久没弄此类服务器了

域名解析你可以叫你的服务商帮你做,人们习惯记忆域名,但机器间互相只认IP地址,域名与IP地址之间是一一对应的,它们之间的转换工作称为域名解析,域名解析需要由专门的域名解析服务器来完成,整个过程是自动进行的。
建立网站是一个复杂的问题,最好找一家专业的IDC服务商比较好。国内知名IDC服务商在网站建设这一块做的比较好。
网站建设可以有下面一些步骤:第一步——观摩同行业网站,找到自身特点与需求 上网看看您的同行们已有的站点,将对您有非常大的帮助。借鉴同行企业是如何在网站上做业务宣传,又如何组织内容的。同行网站上除了发布信息(产品或服务信息等),可能还有一些很好的服务举措,如收集客户反馈的表单、在线支持、产品分类查询,甚至是网上订购、在线业务管理等等。观摩学习这些特色服务,也会对您决定如何建网站有启发作用。
第二步——专业咨询 要建设网站,最省事的当然是花钱请网页制作服务公司来完成。提供这类服务的单位甚至个人有很多,要找到较规范的服务单位也很容易,个人还是推荐中国诺网吧,在网站建设这方面做的很不错。
第三步——确定网站建设内容,签定服务协议 这可能是您最麻烦的一步,没关系,请按下面的步骤进行: 1、 确定您的企业网站上要登载、发布的内容和结构框架,如都有那些方面的内容(分为几类),每个大类下又有那些小类别。最好是先借鉴同行的网站,把别人有的和自己需要加上的部份分别记下来,并对这些做一个简单而清楚的文字提纲后,再将这些内容要求告诉网站制作人员;2、同网站制作公司一起确定您网站的风格。包括网站主页的框架结构、主页基色、颜色过度与搭配、细节处理、选择、动画设计等等;3、明确了具体服务内容和双方权利义务后,签定服务协议;4、按网站制作公司的具体要求,准备文字和材料,提交给制作公司;
四步——注册域名、开通主机、制作网页等 这些主要是专业制作公司要做的工作,而需要您做的就是: 1、 在线进行域名查询,选择一个好的域名,并提交域名注册信息; 2、 记录并妥善保管网站制作公司给您的FTP用户名和密码等(用于今后您自主管理网站); 3、 在线测试、审核已经制作出来的网页,提出修改意见直到您满意。
第五步——推广您的企业网站 有了网站当然还要进行网站推广,才能让您的老客户还有那些潜在客户都来访问您的企业站点,也才能起到促进业务的实际效果。
第六步--网站更新维护 公司的网站要有活力,活网站才会给您公司带来新的业务。这就需要您经常更新网站内容,将过期信息拿下来,把新的产品和服务内容不断的填上去。简单的内容修改,一般网站制作公司可替您免费完成,但大量的内容更新就要向您另外收费了。
希望对你有所帮助。

转载表面上看,是一套基于B/S方式实现的分布式管理系统,但其实背后的架构是基于C/S完成的。你以为他是一只鞋吗?其实他是一个吹风机。作为界面化的系统,浏览器框架是不可或缺的,但更加重要的东西在Socket上面。

一、需要解决中央控制端到各节点服务器之间的通信。

这个其实牵扯到一个通信协议的问题,各语言都有自己的socket,thread的库,直接调用即可。但是这个通信协议就需要自己来完成了。既不能太简单,太简单了,明码传输,如果别人获知了这个接口,就很容易执行一些令人讨厌的 *** 作。也不能太复杂,太复杂了等于是给自己找麻烦,所以简单的数据包编解码的工作或者用token验证的方式是需要的。通信协议起码要两种,一种是传输命令执行的协议,一种是传输文件的协议。

二、跨语言的socket通信

为什么要跨语言,主控端和代理端通信,用什么语言开发其实无所谓。但是为了给自己省事,尽可能使用服务器上已经有了的默认语言,Ambari前期采用phppuppet的方式管理集群,这不是不可以,puppet自己解决了socket通信协议和文件传输的问题,可你需要为了puppet在每台服务器上都安装ruby。我是个有点服务器和代码洁癖的人。光是为了一个puppet就装个ruby,我觉得心里特对不起服务器的资源。所以我自己写了一个python的代理端。python是不管哪个linux系统在安装的时候就都会有了。然后主控端的通信,可以用python实现,也可以用php实现,但是考虑到对于更多的使用者来说,改php可能要比改tornado简单许多,所以就没用python开发。hadoop分支版本众多,发布出去,用户要自己修改成安装适合自己的hadoop发行版,就势必要改源码,会php的明显比会python的多。php里面的model封装了所有的 *** 作,而python只是个 *** 作代理人的角色而已。

所以也延伸出一个问题,什么语言用来做这种分布式管理系统的代理端比较合适,我自己觉得,也就是python比较合适了, *** 作系统自带,原生的package功能基本够用。用java和php也可以写agent,但是你势必在各节点预先就铺设好jre或者php运行环境。这就跟为什么用python和java写mapred的人最多是一样的。没人拦着你用nodejs写mapred,也可以写,就是你得在每个节点都装v8的解释引擎,不嫌麻烦完全可以这样干。原理参看map/rece论文,不解释。perl也是 *** 作系统原生带的,但是perl的可维护性太差了,还是算了吧。

所以这就牵扯到一个跨语言的socket问题,理论上来说,这不存在什么问题。但这是理论上的,实际开发过程中确实存在问题,比如socket长连接,通信数据包在底层的封装方式不同。我没有使用xml-rpc的原因之一就是我听说php的xmlrpc跟其他语言的xmlrpc有不同的地方,需要修改才能用,我就没有用这种办法。最早是自己定义的 *** 作协议,这时就遇到了这些问题,所以后来直接采用了thrift方式。就基本不存在跨语言的socket通信问题了。

三、代理端执行结果的获取

无论命令还是文件是否在代理端执行成功,都需要获取到执行结果返回给中央端。所以这里也涉及一个读取节点上的stdout和stderr的问题。这个总体来说不是很难,都有现成的包。当然这个时候你需要的是阻塞执行,而不能搞异步回调。

还有个问题是,我要尽可能使用python默认就带的包,而尽量不让服务器去访问internet下载第三方的包。

还有代理端最重要的一点,就是python的版本兼容性。centos5用python24,centos6用python26,ubuntu基本默认都是27。所以一定要最大限度的保证语言的跨版本兼容性,要是每个 *** 作系统和每一个版本我都写一个代理,我一个人就累死了。

四、浏览器端的model,view,controller

这里面你要封装好所有的通信协议,以及需要在节点上面执行的脚本。发送文件的 *** 作和数据库 *** 作也要在model里面完成。

如果对tcl/tk很熟,也可以写基于 *** 作系统界面方式的管理,不用浏览器就是了。

view对我来说是最痛苦的事,都是现学的jQuery怎么用,前端的工作太可怕了。关于这方面,没有太多可描述的,html和js带给我的只有痛苦的回忆,万恶的undefined。

五、跨 *** 作系统的安装文件封装。

要适应不同的 *** 作系统也是个很麻烦的事情,需要用agent提前获知 *** 作系统的发行分支,版本号。然后去找到对应的安装文件去执行。你不能保证一个分布式系统的集群中所有的节点都可以访问internet,更多的情况是这些节点都存在在一个安全的内网中。只有个别几个节点是可以访问外网的。所以,我势必要把所有的安装文件以及他们的依赖尽可能集中起来。我不确定安装 *** 作系统的lzo,yum或者apt-get会去下什么鬼东西,甚至无论是yum还是apt-get,里面都没有hadoop-lzo的库文件。所以,最好的办法是自己编译打包rpm和deb包。直接安装就好了,别去找repo下载什么。

这就是第五步工作,把需要的依赖的东西自己编译打包成rpm和deb。

deb包很好解决,但是rpm就没那么好办了,需要学习rpm的编译文件如何编写,这块是挺麻烦的,但是这玩意用好了还是挺不错的。现在我自制的安装包里面就已经包含了自己编译的lzo和snappy两种压缩库,以及hadoop-gpl-packaging的rpm和deb。下一个发布的easyhadoop将直接支持centos5,6,suse,以及ubuntu/debian的系统上安装hadoop。已经自带了lzo和snappy以及lzop和snzip。

六、把这些所有东西,整合到一个系统里面。

关联这些所有事情间的联系,整合到一个浏览器界面里面去。写一个分布式的管理脚本不难,写一个界面也不难,但是也许是我的水平不行,这两件事结合起来让他们协同工作还是有点难度的。对我来说,写界面的工作可能更难一点。

Cloudera可能是十来个人在写Manager的东西,ambari也是放到github和apachesvn上面,apache基金会的各种committer在写。easyhadoop没他们功能那么强大,一年来只有我一个人设计架构,功能,各种语言的编码,测试,发布。Fortheloveofgod,WhathaveIdone(英文部分请站在山顶仰天长啸)T_T。从前台到后台,到hadoop和生态系统以及他们的依赖软件的单独patch、编译打包。(系统yum或者apt-get的包不如自己打的好使。)

从时间上来看,全球第一款开源的hadoop部署管理系统应该还是属于ambari,2011年8月开始写的,2012年9月底进入apache的incubator。我是大概2012年8月开始写的easyhadoop,全球第一没赶上,估计国内第一个开源的hadoop管理系统还是可以排上的。

免费域名注册:
freenomcom就是一个提供免费域名申请的网站,该网站提供tk、ml、ga、cf、gq等域名后缀的免费注册。
注册流程及步骤与普通域名无异,仅需在首页查询心仪域名是否已被注册,如果没有被注册,按照网页的提示 *** 作即可。
免费的期限通常是三个月(可手动设置为一年),并且该网站在域名到期前两周左右,会通过平台或邮件发送相应的续费提醒;在注册的免费域名到期前,如果希望继续使用该域名,也是可以通过这个平台进行免费续费的。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/10650529.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-10
下一篇 2023-05-10

发表评论

登录后才能评论

评论列表(0条)

保存