客户端/服务器模型(也称C/S模型)是现代互联网通信的基础架构。客户端包含桌面客户端、浏览器、手机移动应用、平板应用等多平台终端,服务器包含Web服务器、数据库服务器等后端服务设备。通常,客户端代表用户向远程服务器发起请求,服务器接收并处理请求,返回相应数据。产品经理只需明白该基础框架,无须详细了解该模型的实现协议和端口等细节。
产品经理理解客户端/服务器模型后,在产品规划阶段就可以构思出基本的实现逻辑,心里有了想法后再和开发沟通就节省了很多时间成本。开发提出实现方案后,产品抓住C/S模型主干也可以快速理解开发方案提高沟通效率。
客户端/服务器模型理解实例一:推送&拉取
服务器主动发送消息是推送,客户端向服务器请求消息是拉取。以微信朋友圈为例,你发了一条朋友圈动态,服务器接收动态消息,并将动态的更新提示推送到可以看见你朋友圈的好友手机上,于是你的好友手机上就有了朋友圈的小红点提示。
你的朋友点击进去看朋友圈,客户端发起请求,拉取你的朋友圈消息正文和图片。拉取成功后,你的朋友就看到你的朋友圈消息啦。
实例二:表单输入
客户端本地校验表单填写项,远程服务器校验数据的存在性和重复性。以注册时手机号码验证为例,首先输入手机号码,客户端校验手机号码合法性,是否11位数字,这个可以直接在本地手机进行不需要服务器的参与。校验合法性通过后,客户端向服务器发送手机号码,服务器判断号码是否已经注册过了,如果尚未注册则触发短信验证,客户端接收到短信验证码。
实例三:离线发朋友圈
微信朋友圈支持离线发送。你在本地编辑朋友圈消息,无网络时客户端将消息存入本地,你可以在个人页面里看到,你的朋友看不到消息。待网络正常时,客户端向服务器发送朋友圈消息,服务器接收数据并推送更新提示到你的好友。
综上所述,客户端/服务器模型重点理解:
1)客户端能做什么不能做什么,服务器能做什么不能做什么。客户端适合信息展示、交互处理以及弱依赖性的逻辑处理;服务器则适合大规模的高复杂度的业务逻辑处理。
2)客户端和服务器的通信模型:在合适的时间发起通信,交流合适的数据。