自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 理解ConcurrentHashMap

咱从面试角度入手ConcurrentHashMap是线程安全的数组,是HashTable的替代品,同为线程安全,其性能要比HashTable更好HashMap不是线程安全:在并发环境下,可能会形成环状链表(扩容时可能造成,具体原因自行百度google或查看源码分析),导致get操作时,cpu空转,所以,在并发环境中使用HashMap是非常危险的HashTable是线程安全的:HashTable和HashMap的实现原理几乎一样,与HashMap的差别:HashTable不允许key和value为null;H

2023-03-02 17:02:45 290

原创 经典数据结构之HashMap

HashMap是开发中使用非常频繁的键值对形式的工具类,主要是用起来十分方便,但是需要注意的是HashMap他不是线程安全的哦,多线程场景下可以使用ConcurrentHashMap,面试中经常会提到HashTable,但是已经过时了的一个工具,虽说线程安全但是性能低下,HashMap从Java 8开始,源码做了一定的修改,以此来提升其性能;可以试想一下,如果这两个值都为8的话,而当前链表的节点数量为7,此时一个新的节点进来了,计算出hash值和这七个节点的hash值相同,即发生了hash冲突。

2023-03-02 15:22:21 911

原创 JAVA之多线程

进程与线程进程:进程是程序的一次动态执行过程,它经历了从代码加载、执行、到执行完毕的一个完整过程;同时也是并发执行的程序在执行过程中分配和管理资源的基本单位,竞争计算机系统资源的基本单位。线程:线程可以理解为进程中的执行的一段程序片段,是进程的一个执行单元,是进程内可调度实体,是比进程更小的独立运行的基本单位,线程也被称为轻量级进程。一个程序至少一个进程,一个进程至少一个线程。

2023-02-20 18:44:16 913

转载 接口优化性能提升 18连击!

问个问题:看完问题后再看看这段代码 (大家心中有何感想😎😎😎)所以优化点就有了 批量插入 耗时操作,应当考虑用异步处理,这样可以降低接口耗时。假设一个转账接口,匹配联行号,是同步执行的,但是它的操作耗时有点长,优化前的流程:为了降低接口耗时,更快返回,你可以把匹配联行号移到异步处理,优化后:除了转账这个例子,日常工作中还有很多这种例子。比如:用户注册成功后,短信邮件通知,也是可以异步处理的~至于异步的实现方式,你可以用线程池,也可以用消息队列实现。在适当的业务场景,恰当地使用缓存,是可以大

2022-12-06 18:01:11 280

原创 JSON.parse解析json字符串遇换行符报错 原因以及如何解决

因为正确的答案是 '"\\n"'parse 解析的是 stringify 后的结果, 对于字符串 "\n" 的 stringify 结果是 '"\\n"'一般来说, 你可以直接在编辑器敲回车来换行. 但是在代码中, 你要在字符串中存储一个换行符, 在 `` 多行字符串没有出来之前, 你是无法在 "" 里面敲回车的, 只能用转义字符 \n 代替, 虽然你写下的是两个, 但是这个字符串的长度为1, 在使用这个字符串时 \n 就被解释为码点为 0x0a 的字符所以如果要记录字面的 \n, 那么 stringify

2022-12-06 15:47:56 4875

原创 SQL使用技巧

SQL日常开发必须掌握的技能,使用SQL的过程中呢还是有很多地方需要注意,一不小心就大大提升性能哦!!那么怎么使用SQL会更好呢???

2022-12-01 15:54:01 347

转载 Lambda表达式写代码,谁用谁爽,开发速度提高了10倍

1.List转Map2.filter() 过滤3.foreach 遍历4.groupingBy 分组5.sorted+Comparator 排序6.distinct 去重7.findFirst 返回第一个8.anyMatch 是否至少匹配一个元素9.allMatch 匹配所有元素10.map 转换11.Reduce12.peek 打印日志13.Max 、Min 最大最小14.count 统计15.常用函数式接口

2022-11-30 18:00:45 184

转载 GitHub 前 CTO:全面微服务是最大的架构错误!微服务正在统治世界,甚至有可能正在成为新的默认选项?

近日,GitHub 前 CTO Jason Warner 在推特上表示,“我确信过去十年中,最大的架构错误之一就是全面使用微服务。”从单体应用到微服务的规划顺序,Warner 的建议是:单体>应用程序>服务>微服务。Warner 表示,这是一种思维方式而非规则。“任何构建过大型分布式系统的人都知道他们并不真的那样工作,但还必须适应它。”其次,Warner 表示认为,公司所处的阶段很重要。如果是一家 5-50 人的公司,只需坚持使用单体。Warner 先对服务和微服务的定义进行了阐释。

2022-11-18 11:04:11 129

转载 GPRC 和RPC 有什么区别?GPRC和RPC的区别是什么?

RPC(Remote Procedure Call)是远程过程调用,rpc是一种协议,grpc是基于rpc协议实现的一种框架。

2022-11-17 18:17:49 2115

转载 微服务与宏服务?故事线-基本概念(理解)

微服务(micro services):一个新兴的软件架构,分解了单个应用程序和服务。宏服务(macro services):并非一个全新的什么架构,而是一种单体和微服务的折中理念。实际上微服务并没有规定应该拆多细,所以说宏服务的关键是微服务拆拆分分的技巧,以降低其复杂度。

2022-11-17 17:33:24 519

原创 Mysql 查询多(N)条重复数据,想要获取这些重复数据最近一条(有创建时间字段) 利用 ORDER BY + GROUP BY

Mysql 查询多(N)条重复数据,想要获取这些重复数据最近一条(有创建时间字段) 利用 ORDER BY + GROUP BY

2022-11-14 17:49:33 5488

原创 业务开发时,接口不能对外暴露怎么办?

业务开发时,接口不能对外暴露怎么办?在业务开发的时候,经常会遇到某一个接口不能对外暴露,只能内网服务间调用的实际需求。面对这样的情况,我们该如何实现呢?今天,我们就来理一理这个问题,从几个可行的方案中,挑选一个来实现

2022-10-31 16:18:28 106

转载 android 解决错误:Intel HAXM is required to run this AVD

android 解决错误:Intel HAXM is required to run this AVD

2022-07-14 20:58:27 1516

原创 Android Studio 手机运行

Android Studio自带的虚拟机(AVD)运行较慢,可以用数据线连载电脑上,将编辑好的Android应用安装到手机上运行以华为手机为例:此时Android Studio即可检测到我们的手机,显示在手机上就会下载app,然后就能在手机上进行展示

2022-07-12 15:19:28 3548

转载 Android Studio创建虚拟机AVD时出现HAXM未安装的问题

Android Studio创建虚拟机AVD时出现HAXM未安装的问题在Android Studio中创建AVD虚拟机时下载安装HAXM提示都是install sucessfully,重复下载安装也是提示安装成功,并没有安装失败haxm is not installed.或者正被Hyper-V独占使用的问题。但是一运行AVD就出现错误:Intel HAXM is required to run this AVD.HAXM is not installed.Install Intel HAXM for

2022-07-12 09:32:43 9080 9

原创 Dubbo 知识点

为什么要用 Dubbo?随着服务化的进一步发展,服务越来越多,服务之间的调用和依赖关系也越来越复杂,诞生了面向服务的架构体系(SOA)也因此衍生出了一系列相应的技术,如对服务提供、服务调用、连接处理、通信协议、序列化方式、服务发现、服务路由、日志输出等行为进行封装的服务框架。就这样为分布式系统的服务治理框架就出现了......

2022-06-29 12:30:29 254

转载 RabbitMQ常见问题

⭐RabbitMQ怎么实现消费端限流?⭐RabbitMQ怎么实现消费的可靠投递?⭐RabbitMQ过期时间设置、死信队列、延时队列怎么设计?

2022-06-29 11:44:39 258

转载 RabbitMQ是什么?

一、RabbitMQ是什么?一款基于AMQP用于软件之间通信的中间件 。消费并不需要确保提供方存在,实现了服务之间的高度解耦AMQP,即Advanced Message Queuing Protocol,高级消息队列协议,是应用层协议的一个开放标准,为面向消息的中间件设计。消息中间件主要用于组件之间的解耦,消息的发送者无需知道消息使用者的存在,反之亦然。AMQP的主要特征是面向消息、队列、路由(包括点对点和发布/订阅)、可靠性、安全。RabbitMQ是一个开源的AMQP实现,服务器端用Erlang语言编写,

2022-06-29 11:07:01 4959 4

原创 微服务项目使用Mybatis踩大坑[已解决]

微服务项目使用Mybatis踩大坑[已解决]

2022-06-25 16:53:05 177

原创 【已解决】web.xml中添加标签报错报红

【已解决】web.xml中添加标签报错报红

2022-04-15 11:56:42 980 1

原创 【Springboot使用JDK11】Spring Boot 警告:An illegal reflective access operation has occurred

【Springboot使用JDK11】Spring Boot 警告:An illegal reflective access operation has occurred

2022-04-11 12:25:33 4499

原创 常用的Linux命令(面试/工作必备)

常用的Linux命令(面试/工作必备)

2022-04-10 18:24:06 6412 2

原创 Linux系统部署JDK

Linux系统部署JDK

2022-04-07 19:46:13 3022

原创 centos7下javac:未找到命令的问题

centos7下javac:未找到命令的问题

2022-04-07 19:44:33 274

转载 【已解决】linux开启端口 error: unrecognized arguments: -add-port=8080/tcp

【已解决】 linux开启端口 error: unrecognized arguments: -add-port=8080/tcp

2022-04-07 18:41:38 3698

原创 【linux防火墙]error: unrecognized arguments: -add-port=8080/tcp

【linux防火墙]error: unrecognized arguments: -add-port=8080/tcp

2022-04-07 18:24:36 5584

原创 Mp相关设置-----涉及到的表带有前缀

Mp相关设置-----涉及到的表带有前缀 ###Cause: Java.sjql.SQLSyntaxErrorException: Table 'mydb.city' doesn't exist

2022-04-05 18:43:43 574

原创 【如何解决GIT提交master分支】解决failed to push some refs to git

【如何解决GIT提交master分支】解决failed to push some refs to git

2022-04-05 17:56:51 634

原创 [已解决]Springboot单元测试时注入bean失败的问题

[已解决]SpringBoot单元测试时注入bean失败的问题

2022-04-05 17:26:54 7690

原创 java.lang.IllegalStateException: No parameter name specified for argument of type [java.lang.Integer

Springmvc绑定参数出现的异常java.lang.IllegalStateException: No parameter name specified for argument of type [java.lang.Integer

2022-04-04 18:33:50 1713

原创 [解决IDEA打包异常]Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.22.2:test

[解决IDEA打包异常]Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.22.2:test

2022-04-04 15:29:09 601

JAVA之多线程(基础图)

JAVA之多线程(基础图)

2023-02-20

空空如也

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

TA关注的人

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