自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(25)
  • 资源 (12)
  • 问答 (1)
  • 收藏
  • 关注

原创 数据结构与算法面试问答

1.什么是算法?算法简单来说就是解决问题的步骤。在Java中,算法通常都是由类的方法来实现的。前面的数据结构,比如链表为啥插入、删除快,而查找慢,平衡的二叉树插入、删除、查找都快,这都是实现这些数据结构的算法所造成的。后面我们讲的各种排序实现也是算法范畴的重要领域。一、算法的五个特征①、有穷性:对于任意一组合法输入值,在执行又穷步骤之后一定能结束,即:算法中的每个步骤都能在有限时间内完成。②、确定性:在每种情况下所应执行的操作,在算法中都有确切的规定,使算法的执行者或阅读者都能明确其含义及如何执行。并且在

2022-05-18 22:31:10 383

原创 React+开发小程序

2022-05-17 21:50:26 907

原创 MySql主从复制

数据库主从复制

2022-05-13 10:13:10 155

原创 面试必问之 jvm 与性能优化

jvm面试

2022-05-11 22:51:28 199

原创 Springboot中通过@Value注解 或者@ConfigurationProperties注解 使用配置文件中的属性

通过@Value(“${属性值}”)注解实现配置文件注入引入:import org.springframework.beans.factory.annotation.Value;application.properties配置文件的属性jwt.config.key = "9685"jwt.config.ttl = 2542511在代码属性上使用@Value(“属性值")说明:使用@Value("{属性值}") 说明:使用@Value("属性值")说明:使用@Value("{属性值}”)的类

2022-05-05 22:06:35 431

原创 Zookeeper面试会问到的有哪些?

1.Zookeeper有哪些节点类型?PERSISTENT-持久节点除非手动删除,否则节点一直存在于Zookeeper上EPHEMERAL-临时节点临时节点的生命周期与客户端会话绑定,一旦客户端会话失效(客户端与zookeeper连接断开不一定会话失效),那么这个客户端创建的所有临时节点都会被移除。PERSISTENT_SEQUENTIAL-持久顺序节点基本特性同持久节点,只是增加了顺序属性,节点名后边会追加一个由父节点维护的自增整型数字。EPHEMERAL_SEQUENTIAL-临时顺序节点

2022-05-05 21:55:35 110

原创 ElasticSearch 面试 4 连问

ES 写入数据的工作原理是什么?1)客户端选择一个node(协调节点)发送请求过去。2)coordinating node(协调节点),对document(row行)进行路由,将请求转发给对应的node(主分片)3)实际的node上的primary shard(主分片)处理请求,然后将数据同步到replica node(复制节点)4)coordinating node,如果发现primary node(主分片)和所有replica node(复制节点)都搞定之后,就返回响应结果给客户端ES 查询数

2022-05-05 21:53:55 75

原创 RabbitMQ几个常用面试题

1、什么是RabbitMQ?为什么使用RabbitMQ?答:RabbitMQ是一款开源的,Erlang编写的,基于AMQP协议的,消息中间件;可以用它来:解耦、异步、削峰。2、RabbitMQ有什么优缺点?答:优点:解耦、异步、削峰;缺点:降低了系统的稳定性:本来系统运行好好的,现在你非要加入个消息队列进去,那消息队列挂了,你的系统不是呵呵了。因此,系统可用性会降低;增加了系统的复杂性:加入了消息队列,要多考虑很多方面的问题,比如:一致性问题、如何保证消息不被重复消费、如何保证消息可靠性传输等

2022-05-05 21:52:06 58

原创 SpringBoot 整合 FastDFS

2、引入依赖: org.csource fastdfs-client-java 1.29-SNAPSHOT3、在项目resources目录创建fastdfs_client.conf用来连接服务# 连接超时时间,针对socket套接字函数connect,默认为30秒connect_timeout = 20000# 网络通讯超时时间,默认是60秒network_timeout = 30000charset = UTF-8# tracker 服务器 HTTP 协议下暴露的端口http.trac

2022-04-30 23:28:15 621

原创 在centOS7.7系统对hadoop源码进行编译

在centos7.7环境下对hadoop源码进行编译,成功案例

2022-04-30 22:18:28 113

原创 使用RSA非对称加解密 实现接口安全

RSA非对称加密,实现接口安全(前端vue,后端java)

2022-04-30 21:54:42 284

原创 vue实现 DES 模拟接口签名

使用vue实现对接口进行des加密,模拟接口签名

2022-04-30 20:57:20 1440

原创 activiti工作流

activiti工作流

2022-02-25 16:30:51 312

原创 Java中显示try catch捕获异常信息(异常类别、行号)

在实际开发过程中有的时候,我们需要对比如:IO操作的代码块 进行try异常处理,这个时候通过catch很好的解决了返回异常信息给前端。但是会产生一个新问题:隐藏了异常的真正原因,无法从根本上解决代码异常问题,这个时候我们可以在catch里来获取代码块真正异常的行号,异常原因等。

2022-02-25 16:14:07 6463

原创 netty-websocket-spring-boot-starter基于netty的轻量级的高性能socket服务器

netty-websocket-spring-boot-starter基于netty的轻量级的高性能socket服务器

2022-02-25 15:56:12 1540

原创 springboot 整合 mongodb实现相关业务操作

MongoDB 介绍依赖引入配置操作指定的库:修 改 器MongoDB 是由C++语言编写的,是一个基于分布式文件存储的开源数据库系统。在高负载的情况下,添加更多的节点,可以保证服务器性能。MongoDB 旨在为WEB应用提供可扩展的高性能数据存储解决方案。MongoDB 将数据存储为一个文档,数据结构由键值(key=>value)对组成。MongoDB 文档类似于 JSON 对象。字段值可以包含其他文档,数组及文档数组。依赖引入 <!--mongodb 依赖--> &l

2022-02-25 15:36:08 69

原创 juc包下的并发容器 线程池及任务超时管理

JUC 并发工具包:java.util.concurrent包:定义了并发编程中很常用的实用工具类。1.ConcurrentHashMap对应的非并发容器:HashMap目标:代替Hashtable、synchronizedMap,支持复合操作原理:JDK6中采用一种更加细粒度的加锁机制Segment“分段锁”,JDK8中采用CAS无锁算法。2.CopyOnWriteArrayList对应的非并发容器:ArrayList目标:代替Vector、synchronizedList原理:利用高并

2021-09-25 21:17:18 191

原创 Java多线程

并发编程的优点:利用多核CPU的计算能力,利用好多线程机制可以大大提高系统的并发能力及性能;面对复杂的业务模型,并行程序会比串行程序更适应业务需求,而并发编程更适合这种业务拆分。缺点:内存泄漏,线程安全,死锁等并发编程的三要素:原子性:原子是不可再分割的最小单元,原子性是指一个或多个操作要么全部执行成功,要么全部执行失败。可见性:一个线程对共享变量的修改,另一个线程能看到(synchronized,volatile)有序性:程序的执行顺序按照代码的先后顺序线程安全的问题原因有:线程切换带来

2021-09-25 21:10:47 87

原创 mongodb高级命令 及 增删改查 高级操作 局部更新详解

1、启动服务:/usr/local/mongodb/bin/mongod -f /usr/local/mongodb/mongod.conf2、以默认用户进入系统: ./mongo3、以其它用户身份进入系统: ./mongo --host 127.0.0.1 --port 27017 -u admin -p 123456以其它用户身份进入系统: ./mongo -u admin -p 1234564、列出当前的数据库:show dbs5、进入数据库(或者定义新的数据库名):use admin

2021-09-25 21:03:34 215

原创 使用dockerfile制造镜像 发布springboot项目

发布springboot项目:一、将springboot打好jar包解释:把之前打过的包通通干掉。1.1 、mvn package clean -Dmaven.test.skip=true 1.1 、mvn package clean '-Dmaven.test.skip=true'解释:重新打包。1.2、mvn package -Dmaven.test.skip=true 1.2、mvn package '-Dmaven.test.skip=true' **在windo

2021-09-25 20:58:24 97

原创 一个轻量的java缓存方式ExpiringMap

一个轻量的java缓存方式ExpiringMap,可以设置map过期时间一、简单介绍应用程序中引入缓存能够降低数据库方面的压力,比如常用的Redis缓存中间件。但是在有些小场景下,使用Redis不仅增加了系统的复杂性和不确定性,还有点大材小用。而ExpiringMap适合缓存那些被频繁查询以及数据量不是很大的数据信息。它具有如下功能:可以设置存储元素的过期时间;可设置最大的数据元素存储量;设置过期协议,过期协议分有两种:ExpirationPolicy.CREATED和ExpirationPoli

2021-05-24 16:25:23 667

原创 java并发包中的线程池种类特性

1、new Thread的弊端a. 每次new Thread新建对象性能差。b. 线程缺乏统一管理,可能无限制新建线程,相互之间竞争,及可能占用过多系统资源导致死机或oom。c. 缺乏更多功能,如定时执行、定期执行、线程中断。相比new Thread,Java提供的五种线程池的好处在于:a. 重用存在的线程,减少对象创建、消亡的开销,性能佳。b. 可有效控制最大并发线程数,提高系统资源的使用率,同时避免过多资源竞争,避免堵塞。c. 提供定时执行、定期执行、单线程、并发数控制等功能。2、Jav

2021-05-24 16:23:12 130

原创 为什么要使用kafka消息队列

1.为什么要使用 kafka?为什么要使用消息队列?缓冲和削峰:上游数据时有突发流量,下游可能扛不住,或者下游没有足够多的机器来保证冗余,kafka在中间可以起到一个缓冲的作用,把消息暂存在kafka中,下游服务就可以按照自己的节奏进行慢慢处理。解耦和扩展性:项目开始的时候,并不能确定具体需求。消息队列可以作为一个接口层,解耦重要的业务流程。只需要遵守约定,针对数据编程即可获取扩展能力。冗余:可以采用一对多的方式,一个生产者发布消息,可以被多个订阅topic的服务消费到,供多个毫无关联的业务使用。健

2021-05-21 17:56:13 1934

原创 实战 2000w 数据大表的优化过程,提供三种解决方案

实战 2000w 数据大表的优化过程,提供三种解决方案方案概述方案一:优化现有mysql数据库。优点:不影响现有业务,源程序不需要修改代码。成本最低;缺点:有优化瓶颈,数据量过亿就玩完了。方案二:升级数据库类型,换一种100%兼容mysql的数据库。优点:不影响现有业务,源程序不需要修改代码。缺点:多花钱方案三:一步到位,大数据解决方案,更换newsql/nosql数据库。优点:扩展性强,成本低,没有数据容量瓶颈。缺点:需要修改源程序代码以上三种方案,按顺序使用即可,数据量在亿级别一下的没必

2021-05-21 17:29:26 245

原创 Hutool是一个小而全的Java工具类库

Hutool是一个小而全的Java工具类库Hutool是一个小而全的Java工具类库,通过静态方法封装,降低相关API的学习成本,提高工作效率,使Java拥有函数式语言般的优雅,让Java语言也可以“甜甜的”。Hutool中的工具方法来自每个用户的精雕细琢,它涵盖了Java开发底层代码中的方方面面,它既是大型项目开发中解决小问题的利器,也是小型项目中的效率担当;Hutool是项目中“util”包友好的替代,它节省了开发人员对项目中公用类和公用工具方法的封装时间,使开发专注于业务,同时可以最大限度的避免

2021-05-21 17:14:40 91

hadoop3.3.0在centos7.7环境编译环境资源,附hadoop编译流程详细说明

资料包含 hadoop编译流程详细说明 apache-ant-1.9.16-bin.tar.gz cmake-3.22.4.tar.gz protobuf-2.5.0.tar.gz snappy-1.1.4.tar.gz cyrus-sasl-2.1.26-23.el7.x86_64.rpm cyrus-sasl-devel-2.1.26-23.el7.x86_64.rpm cyrus-sasl-gssapi-2.1.26-23.el7.x86_64.rpm cyrus-sasl-lib-2.1.26-23.el7.x86_64.rpm cyrus-sasl-md5-2.1.26-23.el7.x86_64.rpm cyrus-sasl-plain-2.1.26-23.el7.x86_64.rpm cyrus-sasl-scram-2.1.26-23.el7.x86_64.rpm

2022-04-30

01、python基础.rar

python基础视频课程

2021-05-21

SpringBoot 中实现跨域的5种方式.pdf

SpringBoot 中实现跨域的5种方式

2021-05-21

七牛云OSS对象存储上传.rar

七牛云OSS对象存储上传文件

2021-05-21

elasticsearch 全文搜索引擎在centOs8.x环境下 安装配置服务搭建.rar

elasticsearch 全文搜索引擎在centOs8.x环境下 安装配置服务搭建

2021-05-20

springboot整合 shrio+jwt的登录及权限控制.rar

springboot整合 shrio+jwt的登录及接口权限控制

2021-05-20

Swagger 接口文档 接入springboot 的 教程及 logback-spring.xml输出不同级别的日志信息(附件).rar

Swagger 接口文档 接入springboot 的 教程及 logback-spring.xml输出不同级别的日志信息(附件)

2021-05-20

Mybatis-plus相关操作.pdf

Mybatis-plus相关操作

2021-05-20

springBoot application.properties基础配置大全.pdf

springBoot常用application.properties基础配置大全

2021-05-20

springboot 整合spring-boot-starter-mail 发邮件.rar

springboot 整合spring-boot-starter-mail 发邮件

2021-05-20

SpringBoot 实现文件上传到本地目录 并返回可访问的文件地址.rar

SpringBoot 实现文件上传到本地目录 并返回可访问的文件地址

2021-05-20

第1章-课程介绍及项目框架搭建.7z

java秒杀系统方案优化-高性能高并发实站第一节视频课程 附源码

2021-05-20

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

TA关注的人

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