首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
Java
ZhangBlossom
创建于2023-11-06
订阅专栏
java专栏
暂无订阅
共22篇文章
创建于2023-11-06
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
使用Netty实现自己的通信协议
项目源码 为什么需要自定义协议这一点的理由其实很容易想到。 比如对于我们比较熟知的Dubbo,其内部的协议就是自定义的。 之所以需要自定义协议,无非是因为:没有一种标准化协议来满足不同差异化需 求。
Netty的拆包与粘包及其解决
ByteBuf 在介绍ByteBuf之前先来一套基础的代码来演示ByteBuf的使用。 从代码中可以看出, ByteBuf的使用主要包含了三个步骤,创建、读、写。 并且可以看到ByteBuf还提供了一
行为型设计模式
命令模式 命令模式是一种行为设计模式,它将一个请求封装为一个对象,从而允许用户使用不同的请求、队列或日志请求,并支持可撤销的操作。它主要涉及三个角色:发送者(Invoker)、接收者(Receiver
行为型设计模式
模板方法模式 模板方法模式(Template Method Pattern)是一种在软件工程中常用的设计模式,属于行为型模式。它的核心思想是在一个抽象类中定义一个操作中的算法的骨架(即一个模板),而将
【BlossomConfig】配置中心源码优化---本地缓存与读写锁
网关项目源码 RPC项目源码 配置中心项目源码 在前面的代码中我们已经基本的实现了配置中心的最基本功能,接下来我们就可以思考一下如何对我们的配置中心代码进行优化了。 本地缓存与读写锁 本地文件缓存与读
【BlossomConfig】配置中心Server和Client端代码的编写
网关项目源码 RPC项目源码 配置中心项目源码 项目架构与模块介绍 在正式开始开发之前先分析一下我们需要那些模块。 首先是传统的Common模块,这个模块我在开发中都会有一个,用来存放一些公共的通用的
【BlossomConfig】开发配置中心前必须了解的前置知识
网关项目源码 RPC项目源码 配置中心项目源码 Environment Environment讲解 PropertySourceLocator 其实从上面的Nacos代码处我们也可以知道Propert
【BlossomConfig】Nacos是如何实现配置文件的读取加载的?
网关项目源码 RPC项目源码 配置中心项目源码 研究一下Nacos是如何实现配置加载与刷新的 Nacos源码的简单的视频讲解 为了验证一下思路是正确的,我引入了一下spring-cloud-start
【BlossomConfig】SpringCloud项目是如何对bootstrap配置文件进行加载的?
网关项目源码 RPC项目源码 配置中心项目源码 bootstrap配置文件的读取 我们首先来了解一下springboot是如何做配置管理的。 了解了springboot对配置文件的管理,我们就能知道为
【BlossomConfig】SpringBoot如何实现配置的管控?
网关项目源码 RPC项目源码 配置中心项目源码 ConfigurableEnvironment ConfigurableEnvironment 是 Spring Framework 中的一个接口,它继
【BlossomConfig】面试必问的配置中心原理,手把手教你如何写一个配置中心
如下是几个我春招和秋招面试过程中用的比较多的中间价项目,了解中间价项目对于提升自己编码能力和对源码的理解能力都有很大的提升。 同时,我也是靠着对Netty的底层理解得到了目前手上的ssp,所以我觉得N
【BlossomConfig】配置中心Core核心功能代码的编写
网关项目源码 RPC项目源码 配置中心项目源码 Core Core模块是我们项目最核心最重要的模块,当别人需要使用我们的配置中心的时候,只需要引入Core模块,在项目启动的时候就会自动连接我们的配置中
【BlossomConfig】什么是配置中心?以及如何实现一个配置中心?
网关项目源码 RPC项目源码 配置中心项目源码 什么是配置中心? 在单体架构的时候我们可以将配置写在配置文件中,但有⼀个缺点就是每次修改配置都需要重启服务才能生效。 当应用程序实例比较少的时候还可以维
【BlossomRPC】接入注册中心
RPC项目 配置中心项目 网关项目 这是BlossomRPC项目的最后一篇文章了,接入完毕注册中心,一个完整的RPC框架就设计完成了。 对于项目对注册中心的整合,其实我们只需要再服务启动的时候将ip
【BlossomRPC】服务端与客户端请求Handler
RPC项目 配置中心项目 网关项目 客户端Handler 承接上文,客户端的Handler其实就比较简单了,因为客户端作为接收数据的时候,我们只需要从上文提到的Cache中通过reqId的方式拿到
【BlossomRPC】服务端与客户端服务解析注解的实现
RPC项目 配置中心项目 网关项目 服务端注解的实现 我们的项目既然基于Spring,那么对于这个RpcServiceDeclaration这个注解的处理其实就非常简单了。 我们直接扫描所有的Bean
【BlossomRPC】服务暴露与发现
RPC项目 配置中心项目 网关项目 与传统RPC框架一样,我们需要保证我们的服务是能被发现的。 也就是说,我希望通过一种简单的方式,就能将我们的服务暴露出去,使得其他服务可以方便的去依赖这个服务。 因
下一页