zoukankan      html  css  js  c++  java
  • 协议

    一、目前所有的企业都开始拥抱微服务的架构模式

    saas化:Software As A Serrvice 软件即服务

    pass化:Platform As A Service 平台即服务

    架构体系:单体架构、SOA面向服务的架构、分布式架构、微服务架构

    协议: web1.0、web2.0、移动互联网

    二、http:“超文本传输协议”

    1997年发布的HTTP/1.1的版本是目前比较主流的HTTP的版本

    目前HTTP最新的版本是:HTTP/1.1

    手机归属地使用版本:http://ws.webxml.com.cn/WebServices/MobileCodeWS.asmx?op=getMobileCodeInfo

    三、微服务的架构通信模式使用的方法有两种

    1)一种是采用基于REST API的轻量级的基于HTTP的协议

    2)使用的是gRPC的协议

    异步模式、同步模式

    数据传输:文字和声音,也有其他的方式

    四、TCP/IP分层管理

    TCP/IP协议按层次主要为:应用层、传输层、网络层、数据链路层

    1)应用层:应用层决定了向用户提供应用服务时通信的活动。而HTTP的协议和gRPC的协议就是属于应用层的协议

    2)传输层:应用层的下层是网络传输层,提供处于网络连接的两台计算机之间的数据传输

    3)网络层:主要是用来处理网络上流动的数据包,所谓数据包就是网络传输中的最小单位,在该层协议中,规范通过怎样的路径到达目标计算机,并且把数据包传送给对方

    4)链路层:主要是处理链接网络的硬件部分。如操作系统,硬件设备的驱动等

    websocket协议:客户端与服务端始终保持持久连接,不会断开

    物联网:互联网技术的深度发展,互联网使用的协议都是websocket的协议

    协议:http、websocket(持久连接)、gRPC(流式stream的数据)

    传输层:核心的协议就是TCP/IP的协议

    TCP/IP通信传输流

    五、三次握手

    为什么会有三次握手的设计?

    应用层的协议是为了上层应用之间的交互,但是不需要关注底层网络传输层之间的事情,那么问题来了?应用层既然不关注网络传输层的事情,网络传输层怎么保障应用层之间数据的传输?所以为了数据传输的安全和保障,就设计了三次握手

    1)服务端的确认:客户端发送数据出去,服务端需要确认我收到了

    2)服务端反馈:服务端告诉客户端,你发送的数据我这边确认收到了

    3)客户端确认:客户端需要向服务端再次反馈,客户端收到服务端的反馈了

    如:在公司里面,当你说的话别人无法理解,一定是你的沟通有问题,也就是描述有问题

    URI可以称为统一资源标识符,而URL是统一资源定位符。URI可以理解为标识某一个互联网的资源,而URL表示资源的地点

    HTTP是应用层的协议

    在微服务的架构模式下,使用的也是轻量级的通信模式(REST API),在微服务的架构模式中,需要清楚的是它的通信模式可以分为同步通信模式和异步通信模式,或者更加具体本质的说就是请求/响应和异步请求/响应(发布/订阅模式)

    双方指的是:客户端与服务端

    REST API

    Java:企业级开发领域具备非常强大的生命力,开发的技术栈非常完善,其中阿里的生态开发语言基本是Java

    python:数据分析,数据科学领域非常具备优势

    Go:容器化的语言,应用在Docker和K8S的开发

    PHP:轻量级的语言

    Net:微软系列

    三个语言开发,但是之间需要通信,需要数据传输,标准化就是REST API,使用统一的标准来进行交互

    HTTP完整的请求流程:

    使用chrome浏览器怎么查看网络请求

    发送Requests:请求地址、请求方法、请求头、请求参数(可能有,也可能没有)

    Response回复:协议状态码、响应数据、响应头

    浏览器输入百度网址,右键点击检查,选择Network,点击清空键,刷新网址,查看页面显示网址信息,在Headers中查看

    六、通信模式

    1、同步通信

    客户端发送请求给服务端,服务端必须回应客户端的请求

    缺点:1)容易超时,客户端发送请求后,服务端迟迟没有回应客户端的请求

                2)如果请求时存在大的计算量和逻辑存在问题,就会导致请求堵塞,后面的都挤压

    同步通信又可以说是请求/响应的模式

     2、异步通信

    在异步的交互中,客户端和服务端互相不需要关注对方的存在,只需要关注对应的MQ的消息,客户端与服务端的交互主要是会通过MQ的消息中间作为消息的传递来进行交互的

    MQ:RabbitMQ,Kafka(linkyin),ActivityMQ(alibaba)

    所有的MQ都可以说是队列机制,也可以说是生产者消费者的模式。

    所谓的队列机制,遵守先进先出的规则

    生产者消费者模式:生产后,基于进行快速的消费

  • 相关阅读:
    extend()和append()区别
    extend()和append()区别
    extend()和append()区别
    extend()和append()区别
    Ethtool工具源码剖析
    [数据库基础]——索引
    xgqfrms™, xgqfrms® : xgqfrms's offical website of GitHub!
    xgqfrms™, xgqfrms® : xgqfrms's offical website of GitHub!
    xgqfrms™, xgqfrms® : xgqfrms's offical website of GitHub!
    xgqfrms™, xgqfrms® : xgqfrms's offical website of GitHub!
  • 原文地址:https://www.cnblogs.com/Kaylee/p/15758426.html
Copyright © 2011-2022 走看看