| 订阅 | 在线投稿
分享
 
 
当前位置: 王朝网络 >> perl >> 用Perl写不刷屏的聊天室原理分析 yong Perl xie bu shua ping de liao tian shi yuan li fen xi
 

用Perl写不刷屏的聊天室原理分析

2008-05-19 06:25:43 编辑來源:互联网 繁體版 评论
 
 
本文为【用Perl写不刷屏的聊天室原理分析】的汉字拼音对照版显示拼音
  zaoxianlaiwushiwoyeshuoshuobianxiebushuapingdeliaotianshi

  shouxianyaoshuobianxiezhenzhenghaodeliaotianshiyijingchaochuleCGIdefanchouyaoqiubujinduiyuyanerqieduicaozuoxitonghewangluoxieyiyouyidingdelejiexuyaoyixiejingyandejileijiandandeshuojiushibianxieduankoushouhuchengxuzheliqianchedaosocketbianchengjinchengjianjiaohuerzhedoushibijiaogulaodejishuyijiHTTPxieyiqianmiantianshuitongzhiyijingtiechulezhebufendeCdaimawozhishishaozuojieshiliaobogaoshouyishen1.socketbianchengliyongUNIXdesocketchouxianggainiandakaifuwuqideyigemianxianglianjiededuankoudengdaiwaibudelianjieqingqiu

  perlyuyan使shiyongmingkongjianIOSocketINETzaixinbanbendeperlzhongwotuijian使shiyongHTTPDaemonpeiheHTTPRequestkeyijianhuaHTTPchuliguocheng2.jinchengjianjiaohuzheshishixianbushuapingdeguanjiansuozaisocketlianjiehoutongchangliyongzijinchengwanchengyuyonghudejutijiaohugongzuodangclientcunzaizijinchengyizhiyuqibaochilianjiebushouxianguanbilianjieerfujinchengfanhuidengdaiqitalianjieqingqiu fujinchengyuzijinchengjiandejiaohugongzuotongchangyongguandaopipelaiwanchengzheli使shiyongdangongguandaojikejifu-zigongzuoshizheyangdedangyouneirongtijiaofujinchengjiangtatongguoguandaochuandigeisuoyoucunzaidezijinchengtongchangbaocunzaihashzhongranhouzijinchengfenbiefageigezideclient.kanqilaibunan

  zhidezhuyidewentiyishipanduanyonghuclientshifouguanbilianjieershizijincheng退tuichuhoubuzhuo$SIG{CHLD}xinhaozheliangdianhenchongyaokaifangguoduodejinchengguandaohejiangdaliangdexinhaoquandourenggeicaozuoxitongtahuanshoudelemebaocunguandaodehashyebunengyuelaiyuedaba3.HTTPxieyijiushifenxiyonghudeHTTPqingqiubingqiefanhuiHTTPyingda

  shouxiankankanqingqiushishenmefangshigethuanshipostdangranhuanyouyixiebuchangyongdegetchuliqilaibijiaojiandanpostyaotongguoheaddexinxireadbodywangshangduiHTTPjutijiegoudechanshuhenduowojiubuduoshuolezhidezhuyidewentiyigeshihuanxingfuwentixinshoujiubatadoudangzuo\012\015jikelingyigeshiHTTP1.1tonglaobanbenzaichulipostshibutaiyiyangzhangwoleyishangneirongkeyichangshibianxieyigejiandandeHTTP serverhuihenyoumanzugande^_^ perljichengledaliangdecde*.hbianxieshangshuwentiwanquankeyishengrenxijiedouhechenxiangsiqingguanzhuperlpengyouduitayouchongfendexinxinshangmianshuodeqianliangdiandoushigencaozuoxitongxiangguandeNThuanbuxingwozaiactiveperl5.6shangshiguobingbuxiangchuanshuodeyouhenduowentibuxiugaidaimazhijiezaiNTshang使shiyongwomenzhinengqidaigengwanshandeactiveperllecuowuzhichuqinggaoshoujiuzhenggongtongjinbu

  原文】【拼音
 
 
 
上一篇《Linux脚本语言PERL的模板应用分析》
下一篇《Perl的经典用法:读入多个记录》
 
 
 
 
 
 
日版宠物情人插曲《Winding Road》歌词

日版宠物情人2017的插曲,很带节奏感,日语的,女生唱的。 最后听见是在第8集的时候女主手割伤了,然后男主用嘴帮她吸了一下,插曲就出来了。 歌手:Def...

兄弟共妻,我成了他们夜里的美食

老钟家的两个儿子很特别,就是跟其他的人不太一样,魔一般的执着。兄弟俩都到了要结婚的年龄了,不管自家老爹怎么磨破嘴皮子,兄弟俩说不娶就不娶,老父母为兄弟两操碎了心...

如何磨出破洞牛仔裤?牛仔裤怎么剪破洞?

把牛仔裤磨出有线的破洞 1、具体工具就是磨脚石,下面垫一个硬物,然后用磨脚石一直磨一直磨,到把那块磨薄了,用手撕开就好了。出来的洞啊很自然的。需要猫须的话调几...

我就是扫描下图得到了敬业福和爱国福

先来看下敬业福和爱国福 今年春节,支付宝再次推出了“五福红包”活动,表示要“把欠大家的敬业福都还给大家”。 今天该活动正式启动,和去年一样,需要收集“五福”...

冰箱异味产生的原因和臭味去除的方法

有时候我们打开冰箱就会闻到一股异味,冰箱里的这种异味是因为一些物质发出的气味的混合体,闻起来让人恶心。 产生这些异味的主要原因有以下几点。 1、很多人有这种习...

 
 
  早闲来无事,我也说说编写不刷屏的聊天室。   首先要说,编写真正好的聊天室已经超出了CGI的范畴,要求不仅对语言而且对操作系统和网络协议有一定的了解,需要一些经验的积累。简单的说就是编写端口守护程序,这里牵扯到socket编程,进程间交互,(二者都是比较古老的技术),以及HTTP协议。前面“天水”同志已经贴出了这部分的C代码,我只是稍做解释。聊博高手一哂。1.socket编程,利用UNIX的socket抽象概念打开服务器的一个面向连结的端口,等待外部的联接请求。   perl语言使用名空间IO::Socket::INET,在新版本的perl中我推荐使用HTTP::Daemon配合HTTP::Request(可以简化HTTP处理过程)。2.进程间交互,这是实现不刷屏的关键所在,socket连结后通常利用子进程完成与用户的具体交互工作(当client存在,子进程一直与其保持连结,不首先关闭连结),而父进程返回等待其他连结请求。 父进程与子进程间的交互工作通常用管道pipe()来完成,这里使用单工管道即可,即父-〉子。工作是这样的:当有内容提交,父进程将它通过管道传递给所有存在的子进程(通常保存在hash中),然后子进程分别发给各自的client.看起来不难。   值得注意的问题:一是判断用户client是否关闭连结。二是子进程退出后,捕捉$SIG{CHLD}信号。这两点很重要,开放过多的进程,管道和将大量的信号全都仍给操作系统,它还受得了么?保存管道的hash也不能越来越大吧?3.HTTP协议,就是分析用户的HTTP请求,并且返回HTTP应答。   首先看看请求是什么方式,get还是post,当然还有一些不常用的。get处理起来比较简单,post要通过head的信息read()body,网上对HTTP具体结构的阐述很多,我就不多说了。值得注意的问题:一个是换行符问题,新手就把它都当作\012\015即可。另一个是HTTP1.1同老板本在处理post时不太一样。掌握了以上内容,可以尝试编写一个简单的HTTP server,会很有满足感的^_^ perl继承了大量的c的*.h,编写上述问题完全可以胜任,细节都和c很相似,请关注perl朋友,对它有充分的信心!上面说的前两点都是跟操作系统相关的,NT还不行,我在activeperl5.6上试过,并不像传说的,有很多问题。不修改代码直接在NT上使用我们只能期待更完善的activeperl了。错误之处请高手纠正,共同进步。   
󰈣󰈤
  免责声明:本文仅代表作者个人观点,与王朝网络无关。王朝网络登载此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述,其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
情人节的清纯女生(9)
情人节的清纯女生(8)
情人节的清纯女生(7)
情人节的清纯女生(6)
山东蓬莱海边组照
一探哲蚌 II
一探哲蚌 III
古长城的一角
 
>>返回首页<<
 
 
 为你推荐
 
 
 
 转载本文
 UBB代码 HTML代码
复制到剪贴板...
 
 热帖排行
 
 
 
 
©2005- 王朝网络 版权所有