自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

仰望星空

在最美的年纪为最纯的梦想尽最大的努力

  • 博客(212)
  • 问答 (1)
  • 收藏
  • 关注

原创 Mac m1 电脑 idea 卡顿的问题解决

公司发的mac m1重装系统后贼卡,我一直以为是系统兼容性的问题,平时自己太忙(懒)了,一直没看,今天抽空看了一下发现是贼简单的问题,对自己无语了。其实就是下载错版本了,可以看下打开about看下自己的版本,如果不是aarch64,而是x86,那就是版本错了。然后去idea官网再下一个就好了,估计我当时下错就是没点那个下拉按钮。。。。...

2022-02-02 12:48:28 4406 5

原创 初次运行 C、C++ 程序

后记:因为入职晚加上组织架构调整又被调去了Java+Scala组,拥抱变化吧233333前言:学了2年Java,最后找的工作居然是C++的。之前搞ACM一直是在用C++,后来想做项目,了解到Java做项目可能更方便,然后转Java开发学了两年,没想到最后又转回来了,从头开始学了。

2021-06-08 18:20:05 2785

原创 RocketMq 集群模式下不同组、队列、标签下的负载均衡情况

前言:目前rocketmq的配置如下所示,突然发现当在本地调试程序时,有多个机器会订阅同一个组(一个生产、其余本地测试环境),感觉这样应该会有负载均衡,所以会导致生产环境上的rocketMq收不到消息,所以我决定先测试一下到底什么情况会负载均衡,然后再调整一下配置。# 人脸识别生产者的组名rocketmq.faceProducerGroup=face-producer-group# 人脸识别消费者组名rocketmq.faceConsumerGroup=face-consumer-group#

2021-03-11 22:23:20 1050

原创 简单分析Mysql不同方式联表查询的效率问题

前言:在项目中看别人写的后台代码发现了很多种连表查询的方式,所以来调查一下哪种连表查询方式效率较高,因为初入门,所以不涉及索引之类的,主要是分析过程,据我分析应该主要有三种联表方式。参考:https://www.cnblogs.com/wyq178/p/11576065.htmlhttps://blog.csdn.net/hzz532968708/article/details/77370497第一章 Mysql执行顺序来源:https://www.cnblogs.com/wyq178/

2021-03-04 12:20:58 3442

原创 内存实现原理浅析

前言:在看操作系统、计算机组成原理乃至JVM虚拟机等等时,都会提到内存的寻址空间,还经常会说到,如32位的系统内存寻址空间最多为2^32即4GB,也就是最大能用的内存为4GB,不禁好奇为什么会这样,上面的逻辑应该是每个地址能存储8bit数据,这样32位空间,也就能表达2^32个地址也就能存4GB,但直接的想一下,存储数据不只是要存储数据,还要存储地址,这样才能根据地址找到数据,但这样光地址都32位了,哪来的空间存储数据呢?新手入门,参考下大概意思即可参考:https://www.jianshu.com/

2021-02-22 11:18:45 890

原创 Java内部类与静态内部类区别

静态内部类与普通内部类的简介与区别、私有内部类的作用

2021-02-04 16:25:51 611

原创 RocketMq报错:the message is illegal, maybe msg body or properties length not matched

RocketMq:org.apache.rocketmq.client.exception.MQBrokerException: CODE: 13 DESC: the message is illegal, maybe msg body or properties length not matched. msg body length limit 128k, msg properties length limit 32k.

2021-01-13 22:35:15 5703 2

原创 html2canvas截图上传至后端并下载文件

html2canvas截图并下载base64编码的图片上传到后端后如何解码并下载

2020-12-24 18:14:08 1267 2

原创 Mysql InnoDB引擎中索引理解

前言:面试的时候经常问到索引,前面也只是拿面经背了背,今天看了看书查了查资料,重新理解了一下索引,文章中说的mysql没有特别说明指的都是InnoDB引擎下得mysql。参考:《Mysql技术内幕:InnoDB存储引擎》第一章 InnoDB逻辑存储结构InnoDB中所有数据都被逻辑地存放在一个空间中,称之为表空间,表空间又由段、区、页组成。1.1 表空间默认情况下,InnoDB存储引擎有一个共享的表空间ibdata1,即所有数据都存放在这个表空间中,如果用户启用了innodb_file_

2020-12-23 18:22:26 396 1

原创 跨域报错:Response to preflight request doesn‘t pass access control check: No ‘Access-Control-Allow-Origi

在编写一个简单POST跨域请求时碰到了这个问题,我看了下网上的答案,感觉我好像也都做到了,但是就是不行,我将核心问题进行了抽象,抽象为下面的代码:前端是这样的:$.ajax({ type: "post", url: "http://localhost:8081/test/testUploadPhoto", dataType: "json", data:{ canvasPhotoBase64Data:"dataUrl", }, beforeSend:

2020-12-21 16:45:02 19717 3

转载 阿里电商架构演变之路

前言:从网上找的首届阿里中间件技术峰会上的一个报告,2017年7月的,报告的名字叫阿里电商架构演变之路,感觉不错所以看了一遍,在此记录一下,复制了其中大部分内容,并进行了整理,然后在晦涩之处用自己的语言解释了一下,用于个人复习。参考:https://yq.aliyun.com/articles/147755https://developer.aliyun.com/article/161190目录第一章 淘宝1.0第二章淘宝2.02.1 1.0架构出现的问题2.2 2.0架构.

2020-12-05 22:42:45 1147

原创 多master模式部署RocketMQ

前言:目前项目打算把一些操作都通过RocketMq改成异步的,现在系统是只有一台单点RocketMq,担心万一挂了就太影响使用了,所以打算部署成集群的,网上看到RocketMq有四种不同的部署模式,针对我这种只有两台电脑的,我打算部署成多master模式。参考:https://blog.csdn.net/qq_36147908/article/details/107844959https://blog.csdn.net/leexide/article/details/80035468第一章

2020-11-29 19:39:54 843 1

原创 用RocketMq+CountDownLatch优化人脸识别在工程运用时的速度

前言:先说明这个不是优化人脸识别的算法,这个是解决人脸识别在工程中遇到的一些速度慢的问题。项目中有个需要人脸识别的功能,比较慢,学弟是这样做的,因为我目前还不大熟悉人脸识别的算法,据学弟口述流程是这样的,用户上传的照片传到后台后,学弟调用旷视接口判断照片的可用性,如果可以的话,就再调用xx接口提取体征值,提取完体征值后保存到数据库,最后返回给用户识别的结果,目前这样有点慢。第一章 原代码1.1 controller层接收用户上传的左、正、右脸的照片并提交给service层处理@Reques

2020-11-15 14:39:43 400 1

原创 数据库分库分表入门

前言:想搞一下读写分离,看到读写分离经常和分库分表一起出现,所以一起来探究下分库分表到底是什么与其使用场景第一章 什么是分库分表第二章 使用场景

2020-11-05 23:18:47 281

原创 IP寻址与分配

前言:需要几台服务器做点实验,如搭建个主从数据库、MQ、缓存集群、分布式系统什么的,实验室刚好有几台服务器可以玩玩,但是得理清一下它们得关系,所以看看IP的寻址策略,首先把实验室的网络状况搞清楚。第一章 ip地址的寻址策略第二章 如何给局域网的电脑分配IP第三章 分析实验室电脑的关系...

2020-11-04 22:37:49 1237 1

原创 SpringBoot+Mybatis动态切换数据源

前言:目前在接手学校的一个项目,架构是SSM,用到了读写分离,学弟改成把项目改成了SpringBoot,因为流量不大,所以取消了读写分离,为了确保项目的没问题,同时多学点知识,决定先复盘一下之前SSM项目的读写分离,然后学习一下在SpringBoot中实现读写分离。参考:https://www.cnblogs.com/panxuejun/p/6770515.html第一章 SSM项目中的读写分离(仅讲解)1.1Spring中的DataSourceDataSource是一个Spring接口,.

2020-11-01 13:00:51 1743 13

原创 Mybatis入门

前言:之前一直在用SpringJPA和JdbcTemplate,Mybatis用过一段时间但是忘了,今天从最基础的地方从新复习一遍Mybatis,具体讲解不多,主要看代码吧。第一章 原生Java操作数据库public class MysqlDemo { static final String DB_URL = "jdbc:mysql://localhost:3306/mysql_learn?serverTimezone=GMT%2B8"; static final String U

2020-10-30 12:35:55 233

转载 分布式事务初步理解

前言:经常听到这个词,来学习一下,从各个博客上摘抄了一下,供本人复习之用。参考:https://blog.csdn.net/bjweimengshu/article/details/79607522(解释什么是分布式事物的,写的很好,建议入门的直接去看)还有一个是在微信公众号上看的,公众号叫无敌码农,文章名叫 分布式事务之深入理解什么是2PC、3PC及TCC协议,也写的很好,其它的文章也不错。第一章 什么是分布式事务注:我这里就是总结下,关于什么是分布式事务可以去看https://blo

2020-10-22 17:40:29 331

转载 高并发系统设计入门

前言:终于有时间能来研究研究自己感兴趣的东西了,这里假设我们系统部署的机器是 4 核 8G,数据库服务器是 16 核 32G,这也算是高并发的一个主干,后面会单独摘出来其中的一些技术细节来讲,如如何分库分表、分布式事务是什么等等,因为本篇文章大部分算是转载的,所以就标个转载了,不过本人对原文章还是进行了微调以及加进了自己的一些想法,供本人复习之用。参考:https://www.jianshu.com/p/4f35b3ad47bc(此篇文章绝大部分转载于此博客)第一章 估算网站的访问量此时假设你的

2020-10-22 12:46:52 332

原创 AQS实现ReentrantLock和CountLatchDown详解

前言:之前AQS、ReentrantLock、CountLatchDown大概原理都看懂了,面试的时候一问能说个大概,感觉这样也就行了,跟背课文一样背源码也没什么意思,但是根据被拒的情况可能只说个大概不能满足面试官,今天结合源码好好看一遍,适合有一定基础的同学。第一章AQS概要第二章 基于AQS实现ReentrantLock第三章 基于AQS实现CountLatchDown第四章ReentrantLock和booleanlock这个是因为我之前看过bool...

2020-10-11 22:06:57 617

原创 JUC阻塞队列BlockingQueue

前言:最近面试和手动创建线程池时都用到了阻塞队列,不由得产生好奇,探究一下原理参考:https://www.cnblogs.com/tjudzj/p/4454490.htmlhttps://www.cnblogs.com/it-science/p/5721104.html第一章 基础使用JUC中实现一个阻塞队列一般都会实现BlockingQueue接口,主要方法说明第二章 实现原理网上说的主流的阻塞队列实现有两种,分别是ArrayBlockingQueue和Linked.

2020-10-11 20:00:03 285

原创 AQS详解

前言:之前AQS、ReentrantLock、CountLatchDown大概原理都看懂了,面试的时候一问能说个大概,感觉这样也就行了,跟背课文一样背源码也没什么意思,但是根据被拒的情况可能只说个大概不能满足面试官,今天结合源码好好看一遍,适合有一定基础的同学。参考:https://blog.csdn.net/u013728021/article/details/87358517https://www.cnblogs.com/waterystone/p/4920797.html第一章 AQS

2020-10-05 22:16:13 1603

原创 CAS详解

前言:只知道CAS是比较修改貌似在面试中还是不够,面试还需要知道CAS的缺陷,CAS的应用场景,CAS的底层实现

2020-10-03 12:39:08 1356

原创 Java网络编程入门(四)

前言:这是本人在慕课网上学习 一站式学习Java网络编程 全面理解BIO/NIO/AIO 时所做的笔记,供本人复习之用,在入门二和三中讲述了如何实现一个BIO聊天室和NIO的基本概念后,本文主要讲述如何实现一个基于NIO的聊天室,不保证一定准确。目录第一章 NIO编程模型第二章 ChatServer第三章 ChatClient3.1 客户端3.2 处理读入的类第一章 NIO编程模型我们要在单个线程中处理多个IO操作,首先我们有一个Selector,我们在服务器端启动我们的Se

2020-10-02 14:52:48 236

原创 Java网络编程入门(三)

前言:这是本人在慕课网上学习 一站式学习Java网络编程 全面理解BIO/NIO/AIO 时所做的笔记,供本人复习之用,本文主要讲述NIO的概念,并比较下不同类型IO(阻塞式、非阻塞式等)的速度,不保证一定准确。目录第一章 NIO概述1.1 由来1.2 基本概念第二章 Buffer2.1 写模式2.2 读模式第三章 Channel第四章 多方法实现本地文件拷贝第五章 Selector5.1 channel的状态5.2 基本操作第一章 NIO概述1.1

2020-10-02 12:02:28 251

原创 简单工厂模式

前言:感觉是时候学点设计模式优化下代码了第一章 简单工厂模式1.1 计算器原始代码第二章 策略模式

2020-09-28 22:18:56 172

原创 Java网络编程入门(二)

前言:这是本人在慕课网上学习 一站式学习Java网络编程 全面理解BIO/NIO/AIO 时所做的笔记,供本人复习之用,本文主要讲述BIO,并实现一个基于BIO的聊天室,不保证一定准确。目录第一章 一个简单的客户端、服务端通信的例子第二章 BIO编程模型2.1 基于BIO的聊天室2.2 聊天室服务端2.3 聊天室客户端第一章 一个简单的客户端、服务端通信的例子懒得讲解了,直接上代码,应该都能看懂1.1 服务端package bio;import java.io.

2020-09-25 13:15:16 246

原创 JVM内存模型再理解

前言:之前看过JVM的内存模型,无非是方法区、堆、本地栈、程序计数器、虚拟机栈,然后区别哪个是线程私有,哪个是线程共享,大概是干什么的,存的是什么,其余的似乎没了解太多,如看常量池到底存储在哪?什么样的东西会存储在常量池?类的元信息存储在元空间,类的元信息包括什么?所以今天重新学了一下JVM内存模型,说点高级内容,知识来源于网络,不保证一定没问题,这块网上好像也没个准信,等以后有机会再深入一下吧。第一章 JVM内存模型概要根据 JVM 规范,JVM 内存共分为程序计数器,虚拟机栈、本地方法栈,堆、方

2020-09-24 21:40:43 176

原创 SSM项目Bean的加载时机与DispatcherServlet的执行流程分析

前言:对SSM项目中bean的加载时机产生了兴趣,我们都知道Spring项目启动时会扫描所有模式注解、xml中的配置,以把相关的类注册成bean,那我们SSM项目是跑在服务器上的,不像SpringBoot直接执行main,它是在什么时候执行的注册bean的操作呢。同时它不像普通的web项目会配置很多servlet,SpringMVC靠一个DispatcherServlet来分发所有请求,个人对这个也比较好奇,想求证一下DispatcherServlet是不是靠getBean来获取对应的处理函数(Reques

2020-09-23 18:04:01 466

原创 Spring中Bean的加载与SpringBoot的初始化流程

前言:一直对它们之间的关系感到好奇,SpringBoot既然是Spring的封装,那么SpringBoot在初始化时应该也会有Bean的加载,那么是在何时进行加载的呢?参考:https://blog.csdn.net/qq_36688143/article/details/84968036https://blog.csdn.net/q610376681/article/details/87928766https://blog.csdn.net/q610376681/article/detai

2020-09-23 08:46:31 5111

原创 Java高并发编程详解学习笔记(五)

前言:要秋招了,复习一下应对秋招,纠结该先看啥,最后决定先学习《Java高并发编程详解》,此博客为看书所写的笔记,因为是笔记,所以会只记比较重要的东西,不适合初学者。第一章 volatile关键字介绍当开启两个线程同时操作某个数据时,一个对线程对数据进行读操作,一个对数据进行写操作,一个线程可能会感知不到另一个线程对数据做的修改,即在一个线程中修改某个数的值,另一个线程感知不到。这样是为什么呢,可以看下面的解释。1.1 机器硬件CPU在计算机中,所有的运算操作都是由CPU的寄存器来完成的,C

2020-09-16 21:43:59 253

原创 对Mysql可重复读的进一步分析

前言:今天复习数据库的时候,又看到了可重复读,对其实现方式,以及应用中会遇到的一些问题做了思考参考:https://blog.csdn.net/qq_29857681/article/details/90576491https://blog.csdn.net/wwd0501/article/details/85322142第一章 实现方式https://blog.csdn.net/qq_29857681/article/details/90576491第二章 关于锁与事务的开启.

2020-09-13 22:28:26 189 1

原创 Java高并发编程详解学习笔记(四)

前言:要秋招了,复习一下应对秋招,纠结该先看啥,最后决定先学习《Java高并发编程详解》,此博客为看书所写的笔记,因为是笔记,所以会只记比较重要的东西,不适合初学者。参考:https://blog.csdn.net/weixin_42447959/article/details/81675512第一章 类的加载过程ClassLoader的主要职责就是负责加载各种class文件到JVM中,ClassLoader是一个抽象的的class,给定一个class的二进制文件名,ClassL..

2020-09-13 22:20:27 326

原创 Java高并发编程详解学习笔记(三)

前言:学了一些高并发编程的知识了,打算针对几个难点敲点代码加深一下理解。第一章 interrupt当线程进入阻塞状态时,另一个线程调用被阻塞线程的interrupt()方法,将会使被阻塞线程中断阻塞,一个线程在阻塞的情况下被打断会抛出异常。可以看到,线程被打断并抛出异常后,继续执行。public class Interrupt { public static void main(String[] args) { Thread thread = new Thread(

2020-08-04 15:25:38 269

原创 Java编程题笔试常用API

前言:有家有公司联系上了我,然后要在牛客网参加一场笔试,之前搞ACM的时候都是用的C++,现在做后端开发都用java了,想用java答题了,虽然java麻烦点,但是从长远看,更有利于我java水平的提高,所以总结了一下java在编程题中常用的API,到时候好查,不保证一定没问题,只是我自己的理解,事关面试很重大还是要自己敲一遍的,出问题别找我。参考:https://blog.csdn.net/weixin_43217942/article/details/83043120https://www.

2020-07-14 17:30:52 1623

原创 Java高并发编程详解学习笔记(二)

前言:要秋招了,复习一下应对秋招,纠结该先看啥,最后决定先学习《Java高并发编程详解》,此博客为看书所写的笔记,因为是笔记,所以会只记比较重要的东西,不适合初学者。第三章 ThreadAPI的详细介绍第四章 线程安全与数据同步第五章 线程间通信...

2020-06-27 21:36:08 292

原创 Java高并发编程详解学习笔记(一)

前言:要秋招了,复习一下应对秋招,纠结该先看啥,最后决定先学习《Java高并发编程详解》,此博客为看书所写的笔记,因为是笔记,所以会只记比较重要的东西,不适合初学者。参考:https://blog.csdn.net/q610376681/article/details/87922812目录第一章 快速认识线程1.1 线程的生命周期1.2 模板设计模式在Thread中的应用1.3 策略模式在Thread中的使用第二章 深入理解Thread构造函数2.1 线程的命名2.2

2020-06-25 01:03:53 568

原创 Java String,StringBuilder,StringBuffer初步理解

前言:做文件操作的时候又用到了String,因为之前看过String的一点东西,一直担心会不会内存溢出啥的,还有StringBuilder和String,所以找了篇帖子来系统学一下。参考:...

2020-06-24 03:22:04 200

原创 Js函数与对象初步理解

前言:虽然是后端开发,但是总是会有前端的工作,在这里学习了一下JS对象的创建方式,以便更好地学习Vue参考:https://www.cnblogs.com/honkerzh/p/10270624.htmlhttps://www.cnblogs.com/juggdxy/p/8245491.html第一章 JS函数1.1 函数首先弄明白何为函数呢,按照犀牛书的说法,函数简单的说...

2020-06-23 08:48:47 320

原创 RocketMQ入门

前言:公司要把ActiveMQ全部下架全换成RocetMQ了,正巧我负责的项目有部分用到了RocketMQ,所以来学习一下参考:https://yq.aliyun.com/articles/66129?spm=5176.100240.searchblog.73.utoU93https://www.jianshu.com/p/824066d70da8https://www.jianshu.com/p/2838890f3284https://blog.csdn.net/qq_34462387

2020-06-22 05:18:19 612

空空如也

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

TA关注的人

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