兩段簡單的python**,實現簡單的主機互動。在同一主機上執行,客戶端的host需修改為主機名
在兩個主機上需要在能ping通的情況下才能正常工作(或者連在乙個路由上)
(摘自python核心程式設計)
#coding=utf-8
## server.py伺服器端
from socket import *
from time import ctime
host = 」#伺服器端不需要主機端
port = 21567
#與客戶端一樣的埠號
bufsiz = 1024
addr = (host, port)
tcpsersock = socket(af_inet, sock_stream)#建立tcp/ip套接字
tcpsersock.bind(addr)
tcpsersock.listen(5)#限制5個監聽
while true:
print 『waiting for connection…』
tcpclisock, addr = tcpsersock.accept()#接收客戶端的鏈結請求
print 『…connected from:』 , addr
while true:
data = tcpclisock.recv(bufsiz)#接收客戶端的資料
ifnot data:
break
tcpclisock.send(『[%s] %s』 % (ctime(),data))#向客端返回資料
tcpsersock.close()
#coding=utf-8
## client.py客戶端
from socket import *
host =』oliver-t5-skylake』 #需要訪問的ip位址
port=21567
#埠號,和伺服器端一樣
bufsiz = 1024
#緩衝區大小限制
addr = (host, port) #主機名和埠放入addr元組中
tcpclisock = socket(af_inet, sock_stream)#建立tcp/ip套接字,相當於通訊端點
tcpclisock.connect(addr) #用主機名和埠號進行鏈結
while true: #死迴圈輸入
data = raw_input(『> 『) #輸入字元
ifnot data: #沒有字元退出輸入迴圈
break
tcpclisock.send(data) #通過套接字傳送data
data = tcpclisock.recv(bufsiz)#接受伺服器端返回資料
ifnot data:
break
print data
tcpclisock.close() #關閉套接字結
linux簡單程序間socket通訊
socket多用於網路通訊,但將服務位址設為本機位址之後,即可實現本機程序間socket通訊,利用socket可以在程序間方便地傳輸資料。在linux平台上還支援af unix通訊,而不必設定本機位址,這種socket通訊型別在windows平台上並不適用。下面模擬三個程序間利用socket通訊,s...
Zorka和zico實現不同主機之間的互動
之前參考下面的兩篇博文進行了zorka以及其collector端zico的配置。本文主要談談如實在不同的主機上實現zorka和zico的互動。第一步 修改zorka配置檔案,需要在zorka.properties中進行如下修改 tracer.net yes tracer.net.addr 192.1...
php簡單實現socket通訊
socket通訊的原理在這裡就不說了,它的用途還是比較廣泛的,我們可以使用 socket 來做乙個 api介面出來,也可以使用 socket 來實現兩個程式之間的通訊,我們來研究一下在 php開發 中如何實現socket通訊。由於socket服務端的 要監聽埠,等待接收請求,所以 php在做 soc...