个人简介

Echo Blog


江湖无名 安心练剑
  • java 从零开始手写 RPC (05) reflect 反射实现通用调用之服务端
    通用调用 java 从零开始手写 RPC (01) 基于 socket 实现 java 从零开始手写 RPC (02)-netty4 实现客户端和服务端 java 从零开始手写 RPC (03) 如何实现客户端调用服务端? java 从零开始手写 RPC (04) -序列化 前面我们的例子是一个固定的出参和入参,固定的方法实现。 本节将实现通用的调用,让框架具有更广泛的实用性。 ...
    2018-08-24 08:23:15 | Java
  • java 从零开始手写 RPC (04) -序列化
    序列化 java 从零开始手写 RPC (01) 基于 socket 实现 java 从零开始手写 RPC (02)-netty4 实现客户端和服务端 java 从零开始手写 RPC (03) 如何实现客户端调用服务端? 前面几节我们实现了最基础的客户端调用服务端,这一节来学习一下通讯中的对象序列化。 为什么需要序列化 netty 底层都是基于 ByteBuf 进行通讯的。 ...
    2018-08-24 08:23:15 | Java
  • 基于 netty4 手写 rpc-05-客户端主动调用服务端
    说明 我们上一章的例子中,我们的调用是在客户端启动的时候完成的。 实际使用中,我们希望调用可以有客户端主动发起。 客户端 核心 /** * <p> rpc 客户端 </p> * * <pre> Created: 2019/10/16 11:21 下午 </pre> * <pre> Project: rpc &l...
    2018-08-24 08:23:15 | Java
  • java 从零开始手写 RPC (03) 如何实现客户端调用服务端?
    说明 java 从零开始手写 RPC (01) 基于 socket 实现 java 从零开始手写 RPC (02)-netty4 实现客户端和服务端 写完了客户端和服务端,那么如何实现客户端和服务端的调用呢? 下面就让我们一起来看一下。 接口定义 计算方法 package com.github.houbb.rpc.common.service; import com.gith...
    2018-08-24 08:23:15 | Java
  • 基于 netty4 手写 rpc-02-client 客户端代码实现
    说明 上一篇我们实现了服务端的实现,这一节来一起看一下 client 客户端代码实现。 代码实现 RpcClient /* * Copyright (c) 2019. houbinbin Inc. * rpc All rights reserved. */ package com.github.houbb.rpc.client.core; import com.githu...
    2018-08-24 08:23:15 | Java
  • java 从零开始手写 RPC (02)-server 服务端代码实现
    说明 上一篇代码基于 socket 的实现非常简单,但是对于实际生产,一般使用 netty。 至于 netty 的优点可以参考: 为什么选择 netty? https://houbb.github.io/2019/05/10/netty-definitive-gudie-04-why-netty 代码实现 maven 引入 <dependency> ...
    2018-08-24 08:23:15 | Java
  • java 从零开始手写 RPC (01) 基于 websocket 实现
    RPC 解决的问题 RPC 主要是为了解决的两个问题: (1)解决分布式系统中,服务之间的调用问题。 (2)远程调用时,要能够像本地调用一样方便,让调用者感知不到远程调用的逻辑。 这一节我们来学习下如何基于 websocket 实现最简单的 rpc 调用,后续会实现基于 netty4 的版本。 开源地址: https://github.com/houbb/rpc 完整流...
    2018-08-24 08:23:15 | Java
  • java 从零开始手写 RPC (00) 概览 overview
    rpc rpc 是基于 netty 实现的 java rpc 框架,类似于 dubbo。 主要用于个人学习,由渐入深,理解 rpc 的底层实现原理。 特性 基于 netty4 的客户端调用服务端 p2p 调用 serial 序列化支持 timeout 超时处理 register cente...
    2018-08-24 08:23:15 | Java