欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

基于python实现简单C/S模式代码实例

程序员文章站 2022-03-23 22:44:32
c/s模式就是指客bai户端/服务器模式,du是计算机软件协同工作的一种模式。zhi由于web浏览器的兴起,b/s模式逐步取代了daoc/s模式,被更广泛地应用。随着计算机网络技术的成熟和应用普及,特...

c/s模式就是指客bai户端/服务器模式,du是计算机软件协同工作的一种模式。zhi

由于web浏览器的兴起,b/s模式逐步取代了daoc/s模式,被更广泛地应用。随着计算机网络技术的成熟和应用普及,特别是局域网的发展、pc机的出现,越来越多的用户和企业开始使用计算机管理一些事务。

pc机的资源没有大型、中型甚至小型主机丰富,但将多台pc机联成网,必然会增加资源含量,各个用户都在网络上来共享所有资源。根据客户/服务器(client/server简记为c/s)体系结构的概念,至少用两台计算机来分别充当客户机和服务器角色。

服务器端代码:

#!/usr/bin/python

import time, socket, threading

# thread handle function
def tcplink(sock, addr):
  print 'accept new connection from %s:%s...' % addr
  sock.send('welcome!')
  while true:
    data = sock.recv(1024)
    time.sleep(1)
    if data == 'exit' or not data:
      break
    sock.send('hello, %s!' % data)
  sock.close()
  print 'connection from %s:%s closed.' % addr

# create socket object
s = socket.socket(socket.af_inet, socket.sock_stream)
# listen port
s.bind(('127.0.0.1', 9999))
# start listen
s.listen(5)
# print prompt
print 'waiting for connection...'

while true:
  # accept a new connection
  sock, addr = s.accept()
  # create new thread to handle tcp connection
  t = threading.thread(target=tcplink, args=(sock, addr))
  t.start()

客户端代码:

#!/usr/bin/python

# import module
import socket

# create tcp object
s = socket.socket(socket.af_inet, socket.sock_stream)
# connect sina
s.connect(('127.0.0.1', 9999))
# receive welcome
print s.recv(1024)

for data in ['zjw', 'ygl', 'lele']:
  # send data
  s.send(data)
  print s.recv(1024)
while true:
  data = 1

设计思路还是那样的,服务器端监听固定端口,等待连接,客户端来连接,然后互相发送消息

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

相关标签: python C/S 模式