系统化学习
文章平均质量分 89
系统全面学习阿里P6级别的Java技术,查缺补漏,优化提升
未来窥视者
曾就职于卫宁健康科技集团、碧桂园教育集团、赛意信息。
行业:K12教育、医疗信息、企业管理
展开
-
Java进阶之路对标阿里P6(11)——MYSQL系统化学习(1w字)
MYSQL 架构演变: 单机单库 主从架构 分库分表 云数据库 一、架构原理 1.1 Mysql体系架构 分为四层:网络连接层、服务层、存储引擎层和系统文件层 查询优化器:选取-投影-联接 策略 日志文件 错误日志 通用查询日志 二进制日志(binlog)——记录对数据的修改操作 慢查询日志——记录所有超时的执行sql,主要是select,也会有insert等,默认是10S 数据文件 db.opt frm myd(myisam) myi(myisam) ibd and iddata(innodb)原创 2021-08-23 20:26:21 · 896 阅读 · 3 评论 -
Java进阶之路对标阿里P6(9)——Springcloud
SpringCloud 一、微服务架构 1.1 互联网 单体->垂直->SOA->微服务 1.2 概念 服务注册与发现 服务提供者把服务相关的IP、端口、协议等注册到注册中心;消费者从注册中心拿到较实时的服务列表,根据一定的策略从中选定一个服务访问。 负载均衡 将请求分配到多个服务器上,有不同的分配策略 熔断 断路保护 链路追踪 网关 1.3 Springcloud概念 是一系列框架的有序集合,利用springboot简化了分布式基础设施的开发。 解决的问题(注册发现、网原创 2021-09-11 07:46:23 · 305 阅读 · 3 评论 -
Java进阶之路对标阿里P6(10)——Dubbo
一、Dubbo Dubbo处理流程 [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-En5MnH5N-1631317508480)(C:\Users\Howey\AppData\Roaming\Typora\typora-user-images\image-20210711151633530.png)] 流程: Provider在容器启动时,向注册中心注册自己提供的服务。 Consumer在启动时,向注册中心订阅自己所需的服务。 注册中心返回服务提供者的地址列表给消费者,如有变原创 2021-09-11 07:45:28 · 186 阅读 · 0 评论 -
Java进阶之路对标阿里P6(8)——分布式理论及框架设计Netty
分布式理论及框架设计 1 socket与IO模型 1.1 socket概述 是传输层协议TCP/IP的通信基石。五种主要信息:协议、本地IP地址、本地端口、远程IP地址、远程端口 1.2 socket流程 [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-zaAvunxM-1631317458636)(C:\Users\Howey\AppData\Roaming\Typora\typora-user-images\image-20210617072816755.png)] 根据I原创 2021-09-11 07:44:52 · 237 阅读 · 0 评论 -
Java进阶之路对标阿里P6(7)——Zookeeper
Zookeeper 一、分布式问题 分布式的协同服务。 通过网络进行数据共享 通过共享存储 二、zookeeper概念 解决分布式协同的一种方案。 zookeeper是⼀个典型的分布式数据⼀致性的解决⽅案,分布式应⽤程序可以基于它实现诸如数据订阅/发布、负载均衡、命名 服务、集群管理、分布式锁和分布式队列等功能 集群角色 leader、follower、observer 会话 客户端与服务端的一个TCP长连接 节点 一种是分布式中的机器节点,一种是数据模型中的数据单元:以/分隔的路径,此处指的就是Zno原创 2021-09-11 07:43:59 · 166 阅读 · 0 评论 -
Java进阶之路对标阿里P6(6)——Cluster和web服务解决
Cluster和web服务解决 一、一致性哈希算法 hash算法——存储及查找。 对比传统的: 顺序查找(遍历所有)、二分查找、直接寻址法:在数组中存放数据,且跟数组下标一致。直接把数据作为下标,去查找。 优点:查找快 缺点:浪费空间;重复数据无法解决。 hash算法: 除留余数法 开放寻址法 在前者的基础上,如果hash冲突,就放到旁边。但有可能空间不足。 拉链法 冲突的地方纵向放置一个链表。hashmap即是如此。 hash算法设计的好,查询效率就会接近O(1),即数据均匀分布,且不浪费空间。原创 2021-09-11 07:42:54 · 187 阅读 · 0 评论 -
Java进阶之路对标阿里P6(4)——SpringBoot学习笔记(3W字)
SpringBoot学习笔记 1 应用回顾 1.1 约定大于配置 其实就是大家约定俗成的东西,就不要复杂化。达到简化使用的效果。例如,驼峰命名;数据库表对象跟java实体对象名称一致,即可映射上。这样就只有在偏离约定的时候,做一些特定的配置。 1.2 SpringBoot 概念 1.2.1 springboot介绍 springboot简化了配置项,可以容易的创建出基于Spring的、生产级别的应用程序,直接运行即可。不需要在环境配置上大费周章,版本依赖问题等。 1.2.2 springboot特性 st原创 2021-09-11 07:36:46 · 303 阅读 · 1 评论 -
Java进阶之路对标阿里P6(3)——SpringMvc深度学习(8千字)
SpringMvc笔记 1、SpringMVC的工作流程 1.1 开发过程 web.xml配置dispatcherServlet 开发处理请求的controller(Handler) 配置文件中controller扫描,SpringMVC三大件 web.xml中配置资源路径 1.2 请求流程 第⼀步:⽤户发送请求⾄前端控制器DispatcherServlet 第⼆步: DispatcherServlet收到请求调⽤HandlerMapping处理器映射器 第三步:处理器映射器根据请求Url找到具体的Ha原创 2021-09-11 07:32:49 · 180 阅读 · 0 评论 -
Java进阶之路对标阿里P6(2)——Spring深入学习(1w字)
Spring笔记 任务一 手写Spring 1.1 Spring的优势 方便解耦、简化开发。管理对象间依赖关系、封装了单例、文件解析等 AOP编程支持 oop不容易实现的,面向切面编程轻松实现 声明式事务支持 便捷的事务管理 程序测试 集成各种框架 降低了j2ee api调用难度 源码学习 1.2 Spring核心架构 web、deta access、Aop、core container、test 描述:web层处理浏览器前端的请求及界面渲染,springmvc,与其他应用的交互,远程调用能力;da原创 2021-09-11 07:30:25 · 174 阅读 · 0 评论 -
Java进阶之路对标阿里P6(1)——手写Mybatis(4千字)
Mybatis手写 第一模块 任务一:设计手写持久层框架 1、使用端:SqlMapConfig.xml存放数据源信息,及mapper.xml路径 Mapper.xml存放sql信息 2、框架端: 读取配置信息、加载配置文件 解析配置文件 解析dom4j 创建SqlSessionFactory,方法openSession() SqlSession接口,crud方法 实际编码的问题 无法加载到resource文件,target中没有编译,需要在pom中修改项目的打包方式,不能设为pom,的原创 2021-09-11 07:28:15 · 125 阅读 · 0 评论