自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 22.05.12--22.06.19(本周作业)

服务治理: 服务治理是微服务架构中最为核心和基础的模块,它主要用来实现各个微服务实例的自动化注册和发现。 服务注册: 在服务治理框架中,通常都会构建一个注册中心,每个服务单元向注册中心登记自己提供的服务,包括服务的主机与端口号、服务版本号、通讯协议等一些附加信息。注册中心按照服务名分类组织服务清单,同时还需要以心跳检测的方式去监测清单中的服务是否可用,若不可用需要从服务清单中剔除,以达到排除故障服务的效果。 服务发现: 在服务治理框架下,服务间的调用不再通过指定具体的实例地址来实现,而

2022-06-19 19:30:36 262 1

原创 22.05.29--22.06.12(本周作业)

目录1.springboot启动流程2.springboot是如何内嵌Tomcat的spring boot 框架凭借极简配置,一键运行和强大的第三方框架集成等特点,受到广大开发者的青睐,基本成为java开发中必不可少的基础的框架。spirng boot带给我们这么多便利的背后,它都做了些什么,让我们就跟随spirng boot的整个启动流程一探究竟。spring boot 启动流程分析 - 掘金SpringBoot 系列-内嵌 Tomcat 的实现原理解析 - 掘金...

2022-06-12 17:39:49 280

原创 5.29作业

1. 上手追踪下源码,自己画一遍循环依赖流程图/时序图(上节课内容)[七] Bean的实例化-循环依赖 | 叶良辰の学习笔记2. SpringMvc的运行流程图解SpringMVC执行流程:SpringMVC执行流程SpringMVC执行流程:1.用户发送请求至前端控制器DispatcherServlet2.DispatcherServlet收到请求调用处理器映射器HandlerMapping。3.处理器映射器根据请求url找到具体的处理器,生成处理器执行链HandlerExe

2022-05-29 17:59:38 222

原创 2022/5/22 作业

目录1. IOC的理解(what why how)?Spring如何解决循环依赖问题?2.AOP的理解(what why how)?1. IOC的理解(what why how)?Spring如何解决循环依赖问题?控制反转,将对象的创建交给容器去管理。首先,需要明确的是spring对循环依赖的处理有三种情况:1. 构造器的循环依赖:这种依赖spring是处理不了的,直接抛出BeanCurrentlylnCreationException异常。2. 单例模式下的setter循

2022-05-22 19:48:57 236

原创 MyCat

目录背景:如何去实现分库分表?1.什么是MyCat2.MyCat的分片策略执行原理背景:如何去实现分库分表?当数据库进行分库分表后,数据由一个数据库分散到多个数据库中。此时系统要查询时需要切换不同的数据库进行查询,那么系统如何知道要查询的数据在哪个数据库中?当添加一条记录时要向哪个数据库中插入呢?这些问题处理起来都是非常麻烦的。这种情况下可以使用一个数据库中间件mycat来解决相关的问题。接下来了解一下什么是mycat。1.什么是MyCatMyCat是目前最流行.

2022-05-16 11:34:54 282

原创 分库分表基础知识

目录1.什么是分库分表2.分库分表的方式2.1垂直分库2.2垂直分表2.3水平分库2.4水平分表总结1.什么是分库分表简单来说,就是指通过某种特定的条件,将我们存放在同一个数据库中的数据分散存放到多个数据库(主机)上面,以达到分散单台设备负载的效果。分表:如果一个表的属性太多,可以拆分成多个表来分开存储属性分库分表解决的问题分库分表的目的是为了解决由于数据量过大而导致数据库性能降低的问题,将原来单体服务的数据库进行拆分。将数据大表拆分成若干数据表组成,.

2022-05-15 22:04:49 1826

原创 2022/5/15-作业

1. ForkJoinPool的理解ForkJoinPool充分利用多cpu的优势,把一个任务拆分成多个“小任务”,把多个“小任务”放到多个处理器上并行执行;当多个“小任务”执行完成之后,再将这些执行结果合并起来。感觉有点像二分法。ForkJoinPool 的工作特点 是“工作窃取”,何为工作窃取,ForkJoinPool底层维护着一个双端队列,当一个线程的任务队列执行完毕后,其他线程的任务队列还没有执行完毕,这时,已经执行完毕的线程就会到另一个线程的双端任务队列的尾部去偷取任务执行。2. .

2022-05-15 20:05:10 145

原创 MangoDB

1.简介1.1使用场景游戏场景,使用MongoDB存储游戏用户信息,用户的装备、积分等直接以内嵌文档的形式存储,方便查询、更新(一个角色的所有信息就用一个文档存储) 物流场景,使用MongoDB存储订单信息,订单状态在运送过程中会不断更新,以MongoDB内嵌数组的形式来存储,一次查询就能讲订单所有的变更读取出来。(如果是Mysql进行存储的话,那频繁的去update物流信息,造成效率更低了) 社交场景,使用MongoDB存储用户信息,以及用户发表的朋友圈信息,通过地理位置索引实现附近的人、地点

2022-05-15 19:54:50 971

原创 5.8 作业

目录1.Synchronized和ReentrantLock的区别?2.Synchronized底层如何实现?锁升级过程2.1锁升级过程3.锁有哪几种分别有什么特点?4.手写快速排序?多线程快速排序?1.Synchronized和ReentrantLock的区别?synchronized是java关键字,reentrantLock是java的一个类 synchronized只能实现非公平锁,而reentrantLock可以实现公平锁和非公平锁两种 synchroni.

2022-05-08 17:00:58 275

原创 常见的数据结构

目录1.数组(Arrays)2.链表3.栈4.队列5.Map和哈希表6.树7.堆1.数组(Arrays)数组是最简单也是最常见的数据结构,他们的特点是可以通过索引(位置)轻松访问元素它们是做什么用的?想象一下有一排剧院椅。每把椅子都分配了 一个位置,因此每个观众都会从他将要坐的椅子上分配一个号码(索引)。这是一个数组。将问题扩展到整个剧院(椅子的行和列),您将拥有一个二维数组(矩阵)特性元素的值按照顺序存储,并通过从0到数组长度的...

2022-04-30 21:56:31 4460

原创 集合基础和应用

目录1.集合框架2.Collection2.1 ArrayList2.1.1 基本结构2.1.2add方法2.2 LinkedList2.2.1基本结构2.2.2add方法2.2.3get方法链表的随机查找效率很低的,因为需要遍历一半的链表O(n/2)3.Stack栈4.Queue队列5.1. LinkedList插⼊快? ArrayList, LinkedList 随机插⼊,头尾插⼊效率⽐较?2.Map2.1Map继承结构2...

2022-04-30 13:14:39 1529

原创 设计模式-1

1.单一职责一个类里面只有一个功能职责,如果一个类里面包含了普通用户,访问客户,VIP会员多种功能职责,这就不符合单一原则。所以我们要保证一个类里面写一个功能职责,如普通用户类对应的功能全是普通用户的,不包含其他访问客户和VIP客户而。具体的实现:抽象出所有用户共有的方法封装到一个接口中。访问客户,普通用户,VIP都去实现这个接口,并且重写接口中的方法2.开闭原则对扩展开放,对于修改关闭。比如说圆的半径π的精确度问题,如果每次去修改直接变量π,这样会破坏服务的稳定性。所以我们可以重新创建一个

2022-04-29 22:16:13 104

原创 泛型的基本概念和使用

泛型提供了编译时类型安全检测机制,该机制允许程序员在编译时检测到⾮法的类型。泛型的本质是参数化类型,也就是说所操作的数据类型被指定为⼀个参数1.泛型使⽤泛型方法public static < E > void printArray( E[] inputArray ){ for ( E element : inputArray ){ System.out.printf( "%s ", element ); }}<? extends

2022-04-29 16:48:17 258

原创 反射的基础概念

目录1.API的使用1.1 获取class对象1.2获取Constructor/Field/Method 调⽤对应⽅法1.3反射实现的原理1.4性能开销1.5作用在运行时,知道一个类的名字可以动态获取类的方法和属性,知道一个对象的名字,可以动态的调用对象的属性和方法1.API的使用1.1 获取class对象使用数据类型.class的方式获取对应类型的Class对象 使用引用/对象.getClass()的方式可以获取对应类型的Class对象 使⽤包装类...

2022-04-29 12:32:55 547

原创 异常基础和面试常考点

目录1.异常分类2.使用异常的注意点3.异常性能分析4.常见面试题1.throw和throws的区别?1.异常分类Exception和Error都是继承了Throwable类Exception是程序正常运行中,可以预料的意外情况,可以捕获进行相应的处理。Error是正常情况下,不大可能出现的情况,导致程序中断,不需要捕获。如OOM溢出Exception又可以分为:检查时异常和非检查时异常,检查时异常,必须显示的捕获,非检查时异常,就是所谓的运行时异常(空指针异常,

2022-04-29 11:50:52 321

原创 Java基础

目录1.Java平台1.1面向对象1.1.1 面向对象的三大特性1.1.2 面向对象和面向过程1.2 概述1.3 Java代码是如何运行的2.数据类型2.1基本类型2.2包装类型2.2.1自动装箱/拆箱2.2.2局限性2.3字符串2.3.1 String2.3.2 StringBuffer VS StringBuilder2.3.3字符串缓存2.3.4常见面试题1.Java平台1.1面向对象面向对象编程也叫OOP,...

2022-04-28 21:33:17 977

原创 如何搭建Eureka Server 高可用集群

1.如何搭建Eureka Server 高可用集群在互联网应用中,服务实例很少有单个的。如果EurekaServer只有一个实例,该实例挂掉,正好微服务消费者本地缓存列表中的服务实例也不可用,那么这个时候整个系统都受影响。在生产环境中,我们会配置Eureka Server集群实现高可用。Eureka Server集群之中的节点通过点对点(P2P)通信的方式共享服务注册表。我们开启两台 Eureka Server 以搭建集群。由于是在个人计算机中进行测试很难模拟多主机的情况,Eureka配置se

2022-04-25 16:17:41 1003

原创 SpringCloud Eureka基本使用

目录1.注册中心的对比​2.Eureka 基础架构​3.Eureka交互流程4.搭建单例Eureka Server服务注册中心1.引入pom1.1lagou-parent中引入Spring Cloud 依赖环境1.2引入-Eureka server依赖3.写yml4.主启动5.访问注册中心6.商品微服务和页面静态化微服务注册到Eureka6.1 pom文件中添加Eureka Client依赖6.2yml配置Eureka服务端信息6...

2022-04-25 14:00:51 1072

原创 22.04.17--22.04.24(本周作业)

目录1.Java内存模型(Java Memory Model)的理解? 注意不是运行时数据区(Java Runtime Area)2. ConcurrentHashMap的put源码分析1.Java内存模型(Java Memory Model)的理解? 注意不是运行时数据区(Java Runtime Area)类加载器(ClassLoader) 运行时数据区(Runtime Data Area) 执行引擎(Execution Engine) 本地库接口(Native Interfa

2022-04-23 18:42:09 669

原创 SpringCloud微服务

目录1.微服务架构1.1单体应用架构1.2垂直结构1.3 SOA应用架构1.4微服务应用架构1.5微服务中架构中的核心概念2.SpringCloud综述2.1SpringCloud是什么?2.2SpringCloud解决什么问题?2.3SpringCloud的核心组件2.4 SpringCloud体系结构2.5Spring Cloud 与 Dubbo 对比2.6Spring Cloud 与 Spring Boot 的关系1.微服务架构...

2022-04-21 10:12:36 234

原创 SpringBoot原理深入及源码剖析

目录1、SpringBoot原理深入及源码剖析2、依赖管理问题:(1)为什么导入dependency时不需要指定版本?2.1.spring-boot-starter-parent依赖​2)问题2: spring-boot-starter-parent父依赖启动器的主要作用是进行版本统一管理,那么项目运行依赖的JAR包是从何而来的?2. spring-boot-starter-web依赖3.自动配置问题:Spring Boot到底是如何进行自动配置的,都把哪些组件进行了自动

2022-04-19 12:42:36 3059

原创 SpringBoot基本应用

1.SpringBoot 是什么?SpringBoot是开发微服务的基础和基石,尽可能的让Spring应用程序快速跑起来,减少你的配置文件2.SpringBoot优点为了解决spring的配置重量级和项目依赖管理的问题优点起步依赖:起步依赖就是将具备某种功能的依赖坐标打包到一起,并提供一些默认的功能自动配置:自动将一些配置类的bean注册进ioc容器,我们可以需要的地方使用@autowired或者@resource等注解来使用3.最基本的3个小依赖spring-boo...

2022-04-19 11:43:08 876

原创 22.04.10--22.04.17(本周作业)

目录1.算法题:有效的括号 https://leetcode-cn.com/problems/valid-parentheses/2. Java运行时数据区都有哪几块组成线程私有的:1、程序计数器:2、虚拟机栈:3、本地方法栈:线程共享的:1、堆2、方法区3. 类加载过程第一步:加载​​​​​​​​​​​​​​第二步:验证​​​​​​​​​​​​​​第三步:准备​​​​​​​​​​​​​​第四步:解析第五步:初始化4. gc的理解.

2022-04-17 18:57:54 376

原创 22.3.28-22.4.10 (本周作业)

目录* 两数之和 https://leetcode-cn.com/problems/two-sum/* 判断链表是否有环 https://leetcode-cn.com/problems/linked-list-cycle/* ==*三数之和== https://leetcode-cn.com/problems/3sum/* 环形链表2 https://leetcode-cn.com/problems/linked-list-cycle-ii/2. 创建一个对象的详细流程?(JVM相关)

2022-04-10 11:20:26 358

原创 22.03.21--22.03.27(本周作业)

目录1、接口和抽象类的区别?1、抽象类是什么:1. 1、示例代码2、接口是什么:2.1、示例代码3、接口和抽象类的区别4、使用选择2、反射是如何使用的?反射为很么慢?2.1、反射是什么?2.2、反射能做什么?2.3、反射的实现原理2.4、反射慢的原因3、什么是面向对象?面向对象和面向过程的区别?3.1、面向对象3.2、面向对象和面向过程的区别4、HashMap的数据结构?put的过程?1. 存储结构2.put的过程1、接口和..

2022-03-27 17:50:43 758

原创 Navicat图形化界面远程连接服务器数据库

1.使用Navicat工具输入远程服务器的IP地址发现报错,是因为我们root用户的权限只支持本地访问,所以我们要去服务器里面修改权限2.解决方案使用root权限登录数据库后选择mysql库mysql -u root -puse mysql;查看mysql库中的user表的host值后修改为通配符%select host from user where user='root';update user set host='%' where user='root';flus

2021-12-29 16:41:11 894

原创 Windows安装mysql8并设置开机自启动

1.下载并且安装mysql8下载地址百度网盘:链接:https://pan.baidu.com/s/1nLRO5-USfVg9jKA_uOaeFA提取码:92152.确认安装,进入mysql的bin目录下面所有的命令都必须在管理员模式下的命令行下进行,先cd跳转到mysql对应的bin目录下,然后在进行如下命令操作。安装好mysql以后,在bin目录下有个mysqld.exe,运行这个程序就可以添加mysql服务mysqld.exe --install3.设置开机自动运行..

2021-12-29 15:41:18 3266

原创 CentOS7安装mysql8最简单最快的方法

1.下载Mysql8的repo源先在/usr目录下创建一个mysql目录,然后在目录下进行如下操作:mkdir /usr/mysqlcd /usr/mysqlwget mysql80-community-release-el7-4.noarch.rpm2.安装rpm包rpm -ivh mysql80-community-release-el7-4.noarch.rpm3.安装Mysql8yum install mysql-server4.启动服务servic

2021-12-29 14:18:18 521

原创 CentOS7安装Tomcat并且部署项目

1.Tomcat的下载和安装官网下载:https://tomcat.apache.org/download-80.cgi百度网盘链接:https://pan.baidu.com/s/1-nMjrpo1psAgQai1lcFXKg提取码:bfpa安装方式:将下载好的Tomcat安装包通过Xftp工具传输到CentOS系统中,使用tar命令解压即可。2.启动和关闭命令startup.shshutdown.sh3.关闭防火墙关闭防火墙,不然其他主机访问不了,实际工作中不建议全..

2021-12-29 14:05:59 378

原创 CentOS7使用Xshell和Xftp连接虚拟机并安装jdk

帮助初学者快速掌握对Linux服务器的操作以及安装Jdk环境

2021-12-28 17:04:09 2836 1

原创 Centos7安装mysql8最全最详细文章

1.通过命令下载mysql8,wget https://dev.mysql.com/get/Downloads/MySQL-8.0.15-LINUX-GLIBC2.12-x86_64.tar.xz2.通过命令xz -d MySQL-8.0.15-LINUX-GLIBC2.12-x86_64.tar.xz解压成tar3.通过命令tar xf MySQL-8.0.15-LINUX-GLIBC2.12-x86_64.tar4.通过命令mv mysql-8.0.15-linux-glib..

2021-01-30 21:53:25 264

原创 Linux系统搭建Springboot项目环境并部署运行

1.第一步安装jdk8,下载jdk链接地址(https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html),选择如下版本利用Wincp+puttty软件(一种远程连接服务器的可视化工具)将下载好的jdk-8u271-linux-x64.tar.gz上传到Linux服务器里面的tmp文件夹里面进入终端命令行模式,执行如下命令1.cd /usr/2.mkdir java3.cd /tmp4.sudo

2021-01-12 13:02:23 10130 11

空空如也

空空如也

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

TA关注的人

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