socket介绍(webService适用场景)
1.使用场景
- 不同的移动客户端访问
- 需要访问第三方的项目
2.访问第三方应用的方式
ISO的七层模型 : 物理层、数据链路层、网络层、传输层、表示层、会话层、应用层
- Socket访问 : Socket属于传输层,它是对Tcp/ip协议的实现,包含TCP/UDP,它是所有通信协议的基础,Http协议需要Socket支持,以Socket作为基础
Socket通信特点:
1. 开启端口,该通信是 长连接的通信 ,很容易被防火墙拦截,可以通过心跳机制
来实现 ,开发难度片段
2. 传输的数据一般是字符串 ,可读性不强
lj|16|1|60|up
3. socket端口不便于推广
http:17.23.23.2:2345 www.jd.com www.360buy.com
4. 性能相对于其他的通信协议是最优的
- Http协议访问 :属于应用层的协议,对Socket进行了封装
1. 跨平台
2. 传数据不够友好 :
get请求: http://127.0.0.1:8888?username=lj&pwd=1234
3. 对第三方应用提供的服务,希望对外暴露服务接口
问题:
1. 数据封装不够友好 :可以用xml封装数据
2. 希望给第三方应用提供web方式的服务 (http + xml) = web Service
- Webservice
1.webService介绍
2.webservice的规则
- xml
- soap :(simple object access 协议) :简单对象访问协议
- wsdl : webservice描述语言 ,它也是xml实现的
3.webservice的优点
4.webservice专业名称
1. xml
2. wsdl
3. soap
常见WEB服务:
- 手机淘宝、京东….
- 天气预报
- 手机号归属地
- 股票查询
- 发手机短消息
- 手机充值功能
- 中英文翻译
- 银行转账业务
- 公司的“进销存系统”在某商品缺货时自动给供应商下订单
简单的网络应用:
需求总结:目前软件应用中会出现大量的需求:同一个应用会有不同的客户端访问,或者不同的应用之间也会相互调用服务(A程序和B程序可能不是同一个语言开发的应用)
复杂的网络应用:
需求总结:目前软件应用中会出现大量的需求:同一个应用会有不同的客户端访问,或者不同的应用之间也会相互调用服务(A程序和B程序可能不是同一个语言开发的应用)
先理解什么是服务:
对几个问题的回答:
在开始之前必须要让先了解几个名词:
socket介绍(webService适用场景)的更多相关文章
- Redis常用数据类型介绍、使用场景及其操作命令
Redis常用数据类型介绍.使用场景及其操作命令 本文章同时也在cpper.info发布. Redis目前支持5种数据类型,分别是: 1.String(字符串) 2.List(列表) 3.Hash(字 ...
- 网络编程-Socket介绍
Socket介绍 什么是socket?(5分钟) Socket是应用层与TCP/IP协议族通信的中间软件抽象层,它是一组接口.在设计模式中,Socket其实就是一个门面模式,它把复杂的TCP/IP协议 ...
- 小D课堂-SpringBoot 2.x微信支付在线教育网站项目实战_6-2.申请微信支付介绍和不同场景的支付方式
笔记 2.申请微信支付介绍和不同场景的支付方式 简介:介绍微信商户平台,支付方式和使用场景,申请微信支付流程 1.什么是微信商户平台: ...
- 小D课堂 - 新版本微服务springcloud+Docker教程_6-01 微服务网关介绍和使用场景
笔记 第六章 微服务网关zuul开发实战 1.微服务网关介绍和使用场景 简介:讲解网关的作用和使用场景 (画图) 1)什么是网关 API Gateway,是系 ...
- MySQL主从复制介绍:使用场景、原理和实践
MySQL主从复制介绍:使用场景.原理和实践 MySQL数据库的主从复制方案,和使用scp/rsync等命令进行的文件级别复制类似,都是数据的远程传输,只不过MySQL的主从复制是其自带的功能,无需借 ...
- socket servlet webservice 区别及使用场景
原文地址: http://blog.csdn.net/sdjkjsdh/article/details/51569481 1. Socket:使用TCP/IP或者UDP协议在服务器与客户端之间进行传输 ...
- 【memcache缓存专题(1)】memcache的介绍与应用场景
简介 Memcached是一个高性能的分布式的内存对象缓存系统,目前全世界不少人使用这个缓存项目来构建自己大负载的网站,来分担数据库的压力,通过在内存里维护一个统一的巨大的hash表,它能够用来存储各 ...
- Memcache介绍与应用场景
一:概念介绍 Memcache是一个高性能的分布式的内存对象缓存系统,通过在内存里维护一个统一的巨大的hash表,它能够用来存储各种格式的数据,包括图像.视频.文件以及数据库检索的结果 ...
- socket、webService、RMI ?
网络七层协议为:物理层.数据链路层.网络层.传输层.会话层.表示层.应用层 webService > RMI > socket RMI比socket更高一点 socket 只是 java在 ...
随机推荐
- 三十一、MySQL 及 SQL 注入
MySQL 及 SQL 注入 如果您通过网页获取用户输入的数据并将其插入一个MySQL数据库,那么就有可能发生SQL注入安全的问题. 本章节将为大家介绍如何防止SQL注入,并通过脚本来过滤SQL中注入 ...
- 在Linux下搜索文件
在Linux下搜索文件============================= 1,which 查找可执行文件的绝对路径 [root@aminglinux ~]# which cat /bin/ca ...
- Nginx配置根据客户端设备转发
#user nobody; worker_processes ; #error_log logs/error.log; #error_log logs/error.log notice; #error ...
- 获取PHP页面的当前文件名(包括后缀名)
// $curPhp = substr($_SERVER['PHP_SELF'],strripos($_SERVER['PHP_SELF'],'/')+1); // print_r($_SERVER[ ...
- python实现导出excel表(前端+后端)
之前在做项目管理系统的时候需要实现将数据导出到excel表的功能,搜索之后发现了python的xlwt模块可以很好的实现这项功能. 首先是导入xlwt模块: import xlwtfrom io im ...
- DRF工程搭建
环境安装与配置 DRF需要以下依赖: Python (2.7, 3.2, 3.3, 3.4, 3.5, 3.6) Django (1.10, 1.11, 2.0) DRF是以Django扩展应用的方式 ...
- [USACO]Bovine Genomics
Description 给定两个字符串集合A,B,均包含N个字符串,长度均为M,求一个最短的区间[l,r],使得不存在字符串\(a\in A,b\in B,\)且\(a[l,r]=b[l,r]\) , ...
- Django补充知识点——用户管理
内容概要 1.Form表单2.Ajax3.布局,Django母板4.序列化5.Ajax相关6.分页7.XSS攻击8.CSRF9.CBV.FBV 10.类中用装饰器的两种方法 11.上传文件 12.数据 ...
- 我给女朋友讲编程总结建议篇,怎么学习html和css
总共写了11篇博客了,7篇讲html的,4篇讲网络的.不敢说写的多么好吧,最起码的是我迈出了写作的第一步,写作的过程中了解了一些其他的知识,比如SEO.几种重定向等,由于个人能力和见识有限,写出来的东 ...
- icpc南昌邀请赛 比赛总结
上周末,我参加了icpc南昌区域赛邀请赛,这也是我的第一次外出参赛. 星期五晚上,在6个小时的火车和1个小时的公交后,我们终于抵达了江西师范大学,这次的比赛场地.江西师范大学周围的设施很齐全,各种烧烤 ...