zoukankan      html  css  js  c++  java
  • 使用netty自定义RPC服务

    RPC ——remote procedure call 远程过程调用 协议

    RPC 是一种网络间方法调用的过程。使用RPC可以实现调用另一台应用上的服务接口可以向调用本地服务接口一样操作。

    RPC 过程有:客户端发起调用 >调用客户端rpc工具包进行数据序列化并向发起socket网络通信请求>服务端rpc工具包收到socket请求反序列化数据并找到请求访问的服务接口>调用服务端的服务接口执行计算>服务端rpc工具包获得计算结果序列化后发起socket网络通信响应给客户端>客户端rpc工具包反序列化响应结果>客户端调用方法获得计算结果。

    对于rpc使用者来说,他们不用关心绿色背景的过程,对于他们来说,他们只需要像编写本地接口一样去开发和调用接口。

    实现rpc的框架则需要帮我们分装实现数据通信的网络io操作和socket连接请求处理等工作。

    具体如图:

    既然是调用另一台服务器上的服务,那么网络通信之间的数据传递就要用到网络IO

    io即输入(input)和输出(output)。以内存为目的,进入内存为in,读出内存为out

    介绍下nio

    ----------------------未完,待续-----------------------

    介绍下netty

    项目设计说明

    https://gitee.com/tianhaichao/learning_space.git

  • 相关阅读:
    DSP 知识点
    JVM中的垃圾收集
    MyBatis中的命名空间namespace的作用
    Gradle各版本下载地址
    redis学习笔记
    Mybaties 的缓存
    zookeeper配置集群报错Mode: standalone
    ZooKeeper 典型应用场景
    Linux下搭建mongDB环境
    关系型数据库三范式
  • 原文地址:https://www.cnblogs.com/tianhaichao/p/13402579.html
Copyright © 2011-2022 走看看