java做简单的c s程序,基于python实现简单C/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

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

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

时间: 2020-09-13

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值