av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

Python 通過(guò)監(jiān)聽(tīng)端口實(shí)現(xiàn)唯一腳本運(yùn)行方式

瀏覽:78日期:2022-07-26 11:42:05

我就廢話不多說(shuō)了,大家還是直接看代碼吧

try: s = socket.socket() s.bind((’127.0.0.1’, port))except: log.info(’ * already has an instance, so exit.’) exit(0)

補(bǔ)充知識(shí):Python:一個(gè)簡(jiǎn)單的tornado程序:監(jiān)聽(tīng)服務(wù)器端口,訪問(wèn)時(shí)給瀏覽器返回一個(gè)字符串

一個(gè)簡(jiǎn)單的tornado程序

tornado是python里的一個(gè)模塊,它是一種web服務(wù)器軟件的開(kāi)源版本

它作為web服務(wù)器,具有較出色的抗負(fù)載能力,它適用于用戶量大,高并發(fā),或者大量的HTTP持久連接的情況。

我們來(lái)看一段簡(jiǎn)單的程序代碼

import tornado.webimport tornado.ioloopclass IndexHander(tornado.web.RequestHander): def get(self): self.write('hello world! My name is alien!')if __name__ = '__main__': app = tornado.web.Application([ (r'/', IndexHander) ]) app.listen(8000) tornado.ioloop.IOLoop.current().start()

Python 通過(guò)監(jiān)聽(tīng)端口實(shí)現(xiàn)唯一腳本運(yùn)行方式

當(dāng)我們運(yùn)行這段程序時(shí),在瀏覽器上輸入ip+我們監(jiān)聽(tīng)的端口就可以顯示這樣的效果:

那么我們現(xiàn)在逐句分析這段小代碼:

1、

import tornado.webimport tornado.ioloop

首先要進(jìn)行導(dǎo)入操作

這里的tornado.web是tornado的基礎(chǔ)web框架模塊

tornado.ioloop是tornado的核心I/O循環(huán)模塊(也就是說(shuō),服務(wù)一起,就不會(huì)自己關(guān)閉了)ioloop封裝了linux的epoll和BSD的kquene,這個(gè)循環(huán)模塊是tornado高效的基礎(chǔ)

2、

class IndexHander(tornado.web.RequestHander): def get(self): self.write('hello world! My name is alien!')

這里是創(chuàng)建了一個(gè)類,繼承了tornado.web.RequestHander類,其實(shí)就是一個(gè)業(yè)務(wù)處理類,用于接收請(qǐng)求的

里面的get函數(shù)就是處理get請(qǐng)求的

write函數(shù)這里返回了一個(gè)字符串,也就響應(yīng)信息為這段字符串

3、

if __name__ = '__main__':

這段python代碼就是當(dāng)入口函數(shù)為當(dāng)前文件時(shí),執(zhí)行以下代碼

4、

app = tornado.web.Application([ (r'/', IndexHander) ])

這段代碼是利用tornado.web下的Application類實(shí)例化出一個(gè)對(duì)象,這個(gè)對(duì)象名叫app,(r'/', IndexHander)這個(gè)是路由映射

Application類是tornado.web框架的核心應(yīng)用類,是與服務(wù)器對(duì)應(yīng)的接口,它里面保存了路由映射表

5、

app.listen(8000)

這里的listen是綁定了監(jiān)聽(tīng)端口8000

用Application類創(chuàng)建出來(lái)的對(duì)象app中,有一個(gè)listen方法,因此可以直接調(diào)用listen

所以listen就是創(chuàng)建一個(gè)http服務(wù)器后綁定監(jiān)聽(tīng)端口

注意注意:

這里的listen只是綁定了端口,并沒(méi)有開(kāi)啟監(jiān)聽(tīng)

6、

tornado.ioloop.IOLoop.current().start()

這里是啟動(dòng)該實(shí)例的I/O循環(huán)

IOLoop.current()返回了當(dāng)前線程的ioloop實(shí)例,也就是返回了一個(gè)對(duì)象?當(dāng)前線程讀寫(xiě)操作的對(duì)象

IOLoop.start()啟動(dòng)了ioloop實(shí)例的I/O循環(huán),等待客戶端的鏈接

注意注意:

IOLoop.start()才開(kāi)啟了監(jiān)聽(tīng),剛剛上面的listen是沒(méi)有開(kāi)啟監(jiān)聽(tīng)的

以上這篇Python 通過(guò)監(jiān)聽(tīng)端口實(shí)現(xiàn)唯一腳本運(yùn)行方式就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: Python 編程
相關(guān)文章:
主站蜘蛛池模板: 亚洲免费一区 | 精品视频在线播放 | 日韩欧美国产一区二区三区 | 成人区一区二区三区 | av大片| 亚洲一本 | 国产精品久久久久一区二区三区 | 精品在线免费观看视频 | 国产一区视频在线 | 国产jizz女人多喷水99 | 在线一区视频 | 久久国产日韩 | 亚洲自拍一区在线观看 | 久久精品国产免费 | 99久久国产综合精品麻豆 | 欧美黄色网络 | 国产高清视频一区二区 | 视频在线日韩 | 亚洲电影在线播放 | 国产欧美一区二区三区在线播放 | 在线国产小视频 | 国产一级黄色网 | chinese中国真实乱对白 | 在线成人| 久久久久久久久久久高潮一区二区 | 亚洲日本视频 | av激情在线 | 日韩精品一区二区三区在线观看 | 少妇性l交大片免费一 | 一区二区国产精品 | 日本电影一区二区 | 天天操夜夜爽 | 嫩草黄色影院 | 久久久久久国产 | 岛国av免费在线观看 | 亚洲成色777777在线观看影院 | 欧美成视频| 91麻豆蜜桃一区二区三区 | 91精品久久久久久久久久入口 | 精品一区二区视频 | 欧美日韩亚洲二区 |