手把手教你写rpc框架系列(十一)实现二进制通信协议的java序列化和反序列化
在上一篇文章《手把手教你写rpc框架系列(十)定义网络通信模块的二进制协议》中,我们定义了二进制的通信协议,但是在这个MessageProtocol类里面看到他只是一个接口,是没有实现的,因此这里我们需要来实现下这个...
在上一篇文章《手把手教你写rpc框架系列(十)定义网络通信模块的二进制协议》中,我们定义了二进制的通信协议,但是在这个MessageProtocol类里面看到他只是一个接口,是没有实现的,因此这里我们需要来实现下这个...
上一篇文章《手把手教你写rpc框架系列(九)关于服务端网络通信框架的选型》我们介绍了网络通信这块,那么接下来我们需要做的就是需要定义一个网络通信模块的二进制协议,这里定义二进制协议其实逻辑比较简单,主要是定义requ...
在前面我们已经实现了服务自动注册到zookeeper注册中心上,这里我们接着介绍RPC的网络部分。这里的RPC我们在前面介绍过了,首先是需要一个服务端,也需要一个客户端的。所以服务端与客户端之间有网络交互,这里的话,...
上一篇文章《手把手教你写rpc框架系列(七)实现使用注解自动注册到zookeeper》我们编写了@RPCService注解的逻辑,这样子我们在实际的项目中,只需要使用@RPCService即可完成项目启动的时候就自动...
上一篇文章《手把手教你写rpc框架系列(六)实现本地向zookeeper注册自身服务》我们实现了注册到zookeeper的工具类,在真实的业务中,我们肯定是不需要写很多代码,更希望在业务中添加一个注解就实现当前服务自...
上一篇文章《手把手教你写rpc框架系列(五)定义zookeeper数据交互的序列化和反序列化》我们介绍了zookeeper元数据的序列化和反序列化,这篇文章我们就来实现整个微服务的自动注册。首先我们定义一个regis...
在前面《手把手教你写rpc框架系列(四)定义zookeeper上存储的元数据信息数据结构》我们定义了存储在zookeeper上的元数据信息数据结构,在调用zookeeper的时候,我们需要对数据的读写进行序列化和反序...
上一篇文章《手把手教你写rpc框架系列(三)注册中心的选型》我们对于注册中心进行了选型,最后我们选择了zookeeper。对于rpc框架来说,如果我们想要客户端调用我们的服务,那么我们的服务提供者首先做的第一件事就是...
在rpc框架里面,我们会涉及到一个很重要的就是服务的注册与发现。所以这里我们需要依托一个注册中心。常见的注册中心选项有:eureka zookeeper nacos Consul 等等在常见的rpc框架里面,我所了解...
上一篇文章《手把手教你写rpc框架系列(一)rpc框架系列总体概览》我们简单的介绍了rpc的总体概览,这篇文章我们介绍下rpc相关的概念信息。rpc是什么?RPC的全称是:Remote Procedure Call(...
最近看到群里有人聊rpc,对于我现在来说很久没有解除到rpc了,因为在部分的小公司里面对于技术的要求不是很高,更多的是做业务,因此在部分小公司里面对于技术这块的要求就没有那么高了,但是这里补充一下,对于rpc来说,是...
在实际的工作环境中,我们经常会遇到使用安全性贼高的要求,因此对于部分的接口,我们需要客户端加密后请求过来,服务端解密后再做处理,然后服务端处理完之后,把数据进行加密后返回给客户端,客户端再进行解密使用,如下图:首先请...
在实际的生产中,我们一般都会通过用户的授权token来获取对应的用户信息。然后对用户进行一系列的操作,这篇文章我们介绍下如何通过oauth2.0获取到的accesstoken来获取用户的信息。其实在前面我们的登录和退...
在前面我们一直都是演示使用oauth登录和信息拦截等信息,在真实环境中,还有一种需求就是用户退出功能。这个功能的使用频率比较高,这里我们解释下用户退出的模块。这里用户退出我们还是把他写到oauth服务里面,如下图:退...
在实际工作中,特别是接手别人的项目的时候,我们经常会涉及到首先筛选当前项目有哪些接口,然后按照业务进行筛选规划后期的工作安排。因此那么如何快速的查看当前springboot项目有哪些接口呢?其实很简单,把下面的代码粘...