自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(12)
  • 收藏
  • 关注

原创 项目笔记——RPC框架

文章目录RPC知识流程图什么是RPC为什么用 RPC,不用 HTTP(拓展)技术栈流程服务注册意义/场景test服务的POJO类服务信息服务实例注册模块主体注册到注册中心注册中心注销场景注销的钩子函数及前置注册中心注销远程调用意义定义接口test重写jdk动态代理的invoke拓展服务发现负载均衡知识使用网络传输netty知识POJO类netty心跳场景及简介串联其它模块消费端生产端业务处理场景实现粘包处理意义应用层协议的消息长度分割(实际使用)项目中应用分割符分割(拓展)定长分割(拓展)关闭nagle算法

2022-04-16 17:39:03 2762 1

原创 Netty学习笔记(二)netty

文章目录Reactor 模型传统IO模型单 Reactor 单线程单 Reactor 多线程主从 Reactor 多线程Netty线程模型Echo实例Bootstrap单线程模型配置属性channelHandlerChannelHandlerContext入站出站顺序ChannelHandlerContext总结ChannelFuture多Handler例子异步模型Future 说明Future方法netty编码解码decoderEcoderTCP粘包什么是TCP粘包问题?如何处理粘包现象?UDP会不会产生

2022-04-16 13:06:29 1893

原创 Netty学习笔记(一) IO

文章目录五种IO模型阻塞式IO模型非阻塞式IO模型信号驱动IO模型IO多路复用异步IO基础acceptrecvselectBIO简述多线程底层单线程底层BIO实例NIO简介NIO 和 BIO 的比较缓冲区(Buffer)通道(Channel)例子Selector(选择器)流程例子零拷贝mmapsendfilesendfile+DMA Scatter/Gather例子五种IO模型阻塞式IO模型recv返回error,io未完成,进入阻塞状态让出cpu。recv发现数据准备好了也就是io完成,需要将数据从

2022-04-04 17:09:05 863

原创 项目笔记——简易RPC框架(待升级)

后续会迭代文章目录模块目录流程测试实例服务端初始化1.配置端口2.网络处理模块初始化3.实例化后续用到的类注册服务1.服务信息作为map的key2.具体服务实例为map的value客户端初始化1.创建多个和服务端连接2.连接选择类的初始化方法调用之动态代理客户端获取代理实例客户端远程调用服务端执行服务方法调用之网络传输过程及序列化序列化IO传输反序列化知识扩展Jetty项目中的使用什么是Jetty?为什么使用Jetty?架构模块目录协议模块proto:定义了其他模块需要的bean,如ip端口,请求信

2022-03-26 01:29:14 1293

原创 学习笔记——rabbitMq

文章目录MQ相关概念什么是mq应用场景常见MQ产品基本概念RabbitMQ消息发送模式安装原理组成部分:AMQP协议简单模式工作发布/订阅模式(Publish/Subcribe)例子路由模式(Routing)主题模式(Topic)过期时间TTLttl队列给消息设置过期时间死信队列延迟队列MQ相关概念什么是mqmessage queue,从字面看,本质是队列。先入先出,只是存放的内容是消息。还是一种跨进程的通信机制,用于上游和下游传递消息。在互联网架构中,mq是一种常见的上下游“逻辑解耦+物理解耦”的消

2022-02-02 19:04:44 1589

原创 学习笔记——redis

文章目录NoSql数据库简介引入概述适用场景例子Redis概述及应用场景安装Redis五大数据类型keystringListsethashZset新数据类型Jedis的使用方法配置问题Springboot整合RedisTemplate中API使用事务和锁机制简介基本操作悲观锁和乐观锁悲观锁乐观锁乐观锁两种方式版本号机制CAS算法Redis事务特性redis单线程为什么会有并发问题并发解决方案Redis持久化操作-RDB简介原理优缺点forkRDB触发方式save 命令触发bgsave 命令触发定时任务触发主

2022-01-20 13:47:17 318

原创 学习笔记——springboot

SpringBoot简介文章目录SpringBoot简介意义优点缺点时代背景配置配置流程依赖管理自动配置自动配置特性自动配置原理引导加载自动配置类容器功能@Configuration其它属性配置少量配置信息的情形多个配置信息的情形拦截器过滤器与拦截器的区别:理解例子意义spring整合多个框架时需要写很多配置文件,为了简化配置引出了springboot框架。优点内嵌web服务器自动starter依赖,简化依赖引用——不会出现版本问题自动配置spring——不需要写大量配置文件提供生产级别的监

2022-01-10 01:11:30 238

原创 学习笔记——SpringMVC

文章目录什么是MVC什么是SpringMVC配置RestMapping位置valuemethodmethod的注解paramsSpringMVC支持路径的占位符SpringMVC获取请求参数通过servletAPI获取HttpServletRequest通过参数名获取保证控制器参数名和请求参数名一致使用@RequestParam通过POJO(实体类)获取参数保证请求参数名和实体类属性名一致@RequestBody请求参数乱码问题SpringMVC流程HandlerMappingHandlerIntercep

2021-12-30 21:13:52 377

原创 学习笔记——Mybatis

文章目录引入配置例子底层原理主配置文件:SqlSessionFactory:SqlSession:resultMap和resultType\#{}和${}CRUD多对一查询一对多查询模糊查询分页查询limitRowBounds分页parameterTypeMap动态Sqlifwheresetchoose注解@Param引入1.jdbc, Dbutils(工具类), jdbcTemplate(spring的)sql语句编写在java代码里,硬编码高耦合2.Hibernate:全自动ORM(Object

2021-12-21 15:26:40 640

原创 学习笔记——Spring(二)AOP和动态代理

文章目录AOP什么是AOP动态代理引入1.对实现类进行修改添加功能需要修改大量源码,不利已开发例子和源码分析底层的个人理解:反射的理解:底层原理AOP术语AOP操作基础AspectJ基于AspectJ实现AOP操作切入点表达式AOP注解操作AOP 操作(AspectJ 配置文件)AOP什么是AOP(1)面向切面编程,通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术。AOP是OOP的延续,是软件开发中的一个热点,也是Spring框架中的一个重要内容,是函数式编程的一种衍生范型。利用AOP可

2021-12-18 22:30:54 721

原创 学习笔记——Spring(一)简介和IOC

文章目录spring 简介spring优势组成spring pom配置IOCIOC具体做什么?bean标签IOC接口DI(依赖注入)------实现IOCIOC Bean管理------IOC的操作什么是bean管理bean管理操作的两种方式(1)基于xml基于xml方式创建对象基于xml方式注入属性基于xml方式创建有参构造器testIOC底层分析xml自动装配(一般用注解)外部属性文件(2)基于注解什么是注解bean管理创建对象使用注解bean注解注入属性配置类bean作用域:bean生命周期spri

2021-12-18 22:30:43 633

原创 学习笔记——Maven

文章目录什么是Maven?什么是Maven仓库?什么是“坐标”?继承什么是继承?如何实现继承?配置镜像用maven创建项目pom.xml网址什么是Maven?如今我们构建一个项目需要用到很多第三方的类库,如写一个使用Spring的Web项目就需要引入大量的jar包。一个项目Jar包的数量之多往往让我们瞠目结舌,并且Jar包之间的关系错综复杂,一个Jar包往往又会引用其他Jar包,缺少任何一个Jar包都会导致项目编译失败。以往开发项目时,程序员往往需要花较多的精力在引用Jar包搭建项目环境上,而这一项工

2021-12-18 22:30:21 127

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除