自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

fly_miqiqi的博客

p梦自由q

  • 博客(136)
  • 收藏
  • 关注

原创 为什么新生代有两个survivor,新生代垃圾回收图解

文章目录为什么设置两个survivor如果设置一个survivor会出现内存碎片如果设置两个survivor就会完美避免内存碎片问答区域为什么不使用一个survivor区谈一谈新生代复制算法的流程最初学习JVM的时候,一直有一个疑问,为何JVM新生代会有两个survivor,它的具体流程是怎样的后来对于这句话也一直不解:Eden 和 Survivor 中还存活着的对象一次性地复制到另外一块 Survivor 空间上, 最后清理掉 Eden 和刚才用过的 Survivor 空间,一头雾水。最后上网搜了一

2020-07-29 10:45:27 604

原创 Spark连接HDFS报错:spark-warehouse is not a valid DFS filename.

删除这三个文件就可以了,原因不详Exception in thread “main” java.lang.IllegalArgumentException: Pathname /D:/adeaProject/bigData/TestSpark/spark-warehouse from hdfs://ns/D:/adeaProject/bigData/TestSpark/spark-warehouse is not a valid DFS filename.at org.apache.hadoop.hdf

2020-07-24 20:11:58 904

原创 Google浏览器任务栏图标变白

创建文件,修改后缀为.bat将下面代码复制进去点击运行taskkill /f /im explorer.exeattrib -h -i %userprofile%\AppData\Local\IconCache.dbdel %userprofile%\AppData\Local\IconCache.db /astart explorer

2020-07-14 14:03:37 1003

原创 多线程操作hibernate乐观锁报错ObjectOptimisticLockingFailureException

主要解决方案是在捕捉异常的时候使用递归方法对乐观锁重试try{ spamMessageFeeReceipt=genSpamMessageFeeReceipt(jsonObject,distribute);}catch (Exception e){ if(e instanceof ObjectOptimisticLockingFailureException){ spamMessageFeeReceipt=genSpamMessageFeeReceipt(jsonObjec

2020-07-09 17:08:14 951

原创 dubbo启动报错:org.apache.dubbo.config.ProtocolConfig#0“ contains illegal character, only digit

在此对项目大佬“宋颂”深表感谢1. 查看报错日志点击进入重点类2. 在抛出异常处打断点,查看堆栈信息找线索向下检查发现在检查ProtocolConfig对象的name属性时报错发现protocol处没有配置name属性将name属性配置上项目启动成功...

2020-07-02 11:34:45 3979 4

原创 SpringBoot和SpringCloud

微服务优概论微服务架构优缺点优点:易于开发和维护:一个微服务只关注一个业务功能,业务清晰,代码量少修改代码容易部署,启动快:单个微服务代码量少技术栈不受限制:按需伸缩集群:结合微服务业务特点,随意增删节点缺点:运维要求高:需要保证多个微服务正常运行与协作分布式固有的复杂性:系统容错,网络延迟,分布式事务等重复劳动:多个微服务都会使用的功能会造成代码重复微服务设计原则单一职责...

2020-04-13 23:18:14 181

原创 十大排序算法&&Java实现

文章目录算法分类1、 冒泡排序(交换排序)1.1、基本思想1.1、算法具体描述1.2、Java代码实现2、快速排序(交换排序)3、简单选择排序(选择排序)3.1、基本思路3.1、算法具体描述3.3、Java实现算法分类比较类算法:通过比较决定元素的次序,时间复杂度不能突破O(nlogn)。非线性时间比较器非比较类算法:不同比较,可以突破基于比较排序的事件下界。线性时间比较器1、 冒泡...

2020-04-09 23:42:18 163

原创 促销系统之秒杀功能模块

文章目录秒杀活动需要解决的问题针对秒杀活动对症下药服务单一原则按钮控制库存预热Lua脚本示例订单生成、库存扣减与支付逻辑秒杀链接加盐redis集群Nginx限流&降级&熔断秒杀活动需要解决的问题高并发引起的缓存雪崩,缓存击穿,缓存穿透超卖,商家预估卖100个可以赚点还可以营销,结果多卖出200个,不发货用户投诉,平台封店,发货就血亏,怎么办。恶意请求。验证码,后台逻辑效验...

2020-03-24 23:37:53 1411

原创 Kafka面试题

文章目录什么是kafkakafka的设计是什么样的kafka的应用场景使用kafka优缺点kafka性能好体现在哪什么是传统的消息传递方法kafka和传统技术有什么优势kafka的zk是什么??我们可以在没有Zookeeper的情况下使用Kafka吗?kafka如何消费消息kafka如何提高远程用户吞吐量如何减少ISR扰动,broker什么时候离开ISRkafka为什么需要复制请说明如果首选的副本...

2020-03-24 13:35:17 806

原创 Spring框架

文章目录说一下mybatis和hibernate的区别说一下Hibernate的状态转换关系说一下对Spring的理解,IOC和AOP在项目中是怎么用的AOP的两种实现方式,说一下哪一个效率更高一些,为什么说一下mybatis和hibernate的区别共同点:MyBaits和HiBernate都是通过ORM对象关系映射框架,都是持久层数据框架。不同点:HiBernate它重量级的框架,...

2020-03-23 23:26:02 224

原创 JVM内存模型和垃圾回收机制

文章目录说一下JVM内存模型介绍一下垃圾回收算法有哪些如何判断一个对象是否可回收错误的垃圾回收机制会出现什么状况说一下CMS垃圾回收器和G1收集器的特点CMS垃圾回收器G1垃圾回收器JVM类加载机制-热部署双亲委派模型JVM类执行机制说一下JVM内存模型栈主要存放方法执行的本地变量、对象引用,方法执行前就先创建栈帧入栈,执行完出战堆主要存放对象、数组,我们所说的新生代、老年代、永久代就是指...

2020-03-23 23:11:52 184

原创 常用Linux日志查看命令

文章目录more分页-按页显示文件信息less分页tail 末尾循环查看日志查看web应用程序运行日志解决运行时异常、出错是一项基本功。web系统中通常会通过log4j框架向外部日志文件写入程序运行时的某些日志日志输出了程序中约定的一些变量:可能是订单号、服务号、请求ID日志的作用:当哪个订单处理失败了,哪个服务运行异常了,可以根据日志文件的这些标签信息定位日志中的记录,然后通过变量的值...

2020-03-23 21:13:06 305

原创 行转列,列换行

文章目录行转列基础数据查出聚合后的第一个分组数据查出每个用户每门课的分数对各门功课各分数段进行统计 分数段 数学 语文 英语1. 查出每个用户所处的分数段2. 查出每门课每个分数段的人数(对课程+分数段进行聚合)使用case when不用加() 把case when看作一个普通函数,类似date 聚合时不加别名通过列转行技巧反转行转列基础数据行转列基础数据SELECT * FROM...

2020-03-21 10:33:27 478

原创 理解mysql锁和事务

文章目录三种锁定机制表级锁定行级锁定 InnoDb页级锁定mysql的myism存储引擎表级锁有两种模式MyIsam表锁优化查询表级锁争用情况缩短锁定时间分离能并行操作合理利用读写优先级InnoDb存储引擎InnoDb锁定模式及实现机制InnoDb对记录加锁的方式InnoDb实现行锁的三种算法那么什么时候使用记录锁,什么时候使用Next-key锁呢?使用间隙锁的目的InnoDb行锁的特点Inn...

2020-03-17 14:35:40 253

原创 数据库sql优化

文章目录SQL优化怎么判断sql优化的sql编写技巧执行计划的使用优化案例组合索引组合索引的使用效果:mysqsl只能使用一次索引么SQL优化怎么判断sql优化的系统级别表象CPU消耗严重+IO等待严重+页面响应时间过长+日志超时等错误top命令查看Prometheus、Grafana监控工具查看sql语句级表象语句冗长+执行时间过长+全表扫描+执行计划中rows、cost很大...

2020-03-15 23:16:41 238

原创 RPC简介和框架选择

文章目录什么是Restful架构什么是RPC有了Rest为何还要RPCSpringCloud和Dubbo的区别什么是Restful架构Rest是Representational State Transfer的缩写词a) 每一个uri代表一种资源b) 客户端和服务端之间传递这种资源的表现层c) 客户端通过四个Http动词,对服务端资源进行操作,实现"表现层状态转换"GET 用来获取资源...

2020-03-09 23:24:32 259

原创 部署和后期维护

文章目录Docker基础知识普通部署jar包部署war包部署基于Docker部署编写启动脚本编写Dockerfile在开发机器编译docker镜像到服务器编译运行docker容器DockerCompose定义运行多容器启动项目SecureRandom产生随机数性能优化 -Djava.security.egd=file:/dev/./urandomDocker基础知识[root@localho...

2020-03-08 10:59:23 420

原创 SpringBoot和SpringCloud

文章目录SpringBootSpringBoot的web开发Thymeleaf引擎SpringCloud相关概念应用DemoRibbon和Feign的区别:SpringBootSpringBoot的web开发Thymeleaf引擎Thymeleaf是一个java类库,是一个html5的模板引擎,可以作为MVC的View层SpringCloudSpringCloud开发的程序适合部署在d...

2020-03-08 01:09:04 262

原创 SpringSecurity、Shiro、Oauth2.0、Cas

文章目录认证和授权总流程认证授权SpringSecurity授权源码流程基于配置文件进行权限控制基于角色的权限控制认证和授权总流程AnonymousAuthenticationFilter在所有认证过滤器最后,判断SpringSecurityConetxt中是否存在Authentication,若不存在则设置一个AnonymousAuthentication。认证授权系统配置信息:权限...

2020-03-07 02:24:06 3185 3

原创 微服务安全中心的架构

文章目录创建微服务基础服务1. 创建订单,库存模块2. 创建认证服务器:3. 创建资源服务器:知道自己是资源服务器,知道自己叫啥,知道自己怎么验证令牌4. 持久化客户端配置,持久化基于Zuul网关开发实现基于网关的安全逻辑具体实现转发配置流量控制配置ZuulFilter接口微服务最重要的是解耦,而不是代码重复创建微服务基础服务1. 创建订单,库存模块2. 创建认证服务器:添加依赖:b...

2020-03-04 23:43:54 661

原创 API安全

文章目录jwt(Json Web Token)引入jwt扩展jwt信息通过refresh_token刷新令牌使用jwt实现ssoCAS vs oauth2API安全API安全的目标CIAAPI的风险和解决防止注入攻击API风险的防范具体流控 429太多请求认证参数效验密码加密Http加密审计日志授权 401认证失败 403认证成功,但授权失败登陆sesison固定攻击SSO 单点登录(...

2020-03-04 17:06:50 668

原创 《kafka权威指南》之管理和监控kafka

文章目录kafka集群的管理主题操作分区操作kafka集群的管理主题操作使用kafka-topic.sh工具可执行主题的大部分操作增加主题-指定zk,主题,分区,副本数sh kafka-topics.sh --create --zookeeper hadoop01:2181 --replication-factor 1 --partitions 1 --topic topicname...

2020-03-04 00:44:23 193

原创 《kafka权威指南》之可靠的数据传输

文章目录可靠性保证Kafka做出的四个保证kafka可靠性保证的核心kafka的复制机制不恰当的垃圾回收配置(**)broker配置复制系数1不完全的首领选举2最少同步副本3可靠的使用生产者发送确认配置生产者重试参数额外的错误处理可靠的使用消费者消费者可靠配置(4个)注意事项可靠性保证保证:是指确保系统在不同环境下能够发生一致的行为ACID(原子性,一致性,隔离性,持久性)是关系型数据库普遍...

2020-03-03 23:47:52 176

原创 Kafka之流式处理

文章目录什么是数据流数据流的属性3种编程范式流式处理的概念时间状态流和表的二元性时间窗口流式处理的设计模式Stremas示例什么是数据流数据流的属性数据流是无边界(无限且持续增长)数据集的抽象表示例如:信用卡交易,包裹递送,游戏物体的移动数据流(事件流)的其他属性事件流是有序的 先存钱再花钱事件流是不可变的 订单取消并不是说它就消失了事件流是可重播的 让现代业务领域的流式处...

2020-03-03 12:37:33 2245

原创 《kafka权威指南》之深入Kafka

文章目录集群节点节点ID控制器复制处理请求Kafka 如何进行复制Kafka 如何处理来自生产者和消费者的请求Kafka 的存储细节,比如文件格式和索引。集群节点节点IDbroker启动的时候,它通过创建临时节点把自己的ID注册到ZooKeeper中,当有broker加入或退出集群时,这些节点就可以获得通知。关闭broker时,节点也会消息,但是ID还继续存在,若再启用相同ID...

2020-02-27 23:23:22 224

原创 《kafka权威指南》之生产者和消费者

文章目录Kafka生产者kafka生产消息到broker步骤生产者的配置属性生产者发送消息的方式序列化器自定义序列化Kafka生产者kafka可以用做消息队列,消息总线,数据存储平台ProducerRecord={Topic,partition,key,value}kafka生产消息到broker步骤生产者封装为ProducerRecord消息对象将消息通过序列化器序列化为字节数组...

2020-02-26 19:19:51 278

原创 《kafka权威指南》之基本配置和调优

文章目录什么是kafkakafka关键字介绍kafka基本指令kafka基本配置kafka集群需要多少个brokerbroker配置操作系统调优生产环境调优什么是kafkaKafka是一基于发布/订阅的分布式消息系统,它不仅能高效并实时的吞吐数据,而且还可以通过副本冗余机制保证数据安全kafka关键字介绍序列号(offset):每个分区都会append多个有顺序,不可变的消息生产者(p...

2020-02-26 12:27:41 234

原创 基于回调的观察者模式

文章目录回调机制的简单的理解:比较经典的回调方式:示例基于监听的事件处理回调的简单理解同步回调异步回调函数Java回调机制进阶回调进阶(基于回调的"观察者"模式的实现)回调机制和监听机制实现事件触发功能的区别事件机制的简单的理解事件处理模型中,主要涉及三类对象:事件驱动编程epoll原理基于监听的事件处理&基于回调的事件处理回调机制的简单的理解:A类通过某函数实现功能,但A的执行却并不...

2020-02-25 23:42:49 473

原创 行为型模式:职责链模式、命令模式、迭代器模式、观察者模式、策略模式、模板方法模式

文章目录职责链模式职责链数据结构职责链模式实现职责链优缺点职责链适用环境行为型模式:关注系统中对象之间的交互,以及相互通信协作,进一步明确对象的职责类行为型模式:通过多态来分配父子的职责。对象行为型模式:通过对象关联等方式职责分配职责。职责链模式职责链模式:将请求的发送者与接收者解耦,让接收请求的对象连接成一条链,并且沿着这条链传递请求,直到有一个能处理它为止。职责链数据结构抽象处理...

2020-02-24 00:02:08 641

原创 消息队列面试大全

文章目录消息队列引入你在项目种使用过消息队列么?公司使用什么消息架构消息队列和异步调用的区别那些业务场景使用了消息队列消息队列的优点消息中间件的缺点Kafka概述简述kafka架构下的重要关键字么为什么要选择kafka分布式构建三把斧:缓存+异步+数据分组支付状态:未支付,支付成功,支付失败,待退款,已退款快递状态:代发货,待收货,已收货,退货-商家待收货,退货-商家已收货订单状态:订单打...

2020-02-23 20:51:50 170

原创 缓存三种常用算法(FIFO、LRU、LFU)

文章目录FIFO算法LRU(最近最久未使用)算法LFU(最近最少使用)算法FIFO算法FIFO思想是先进先出,这是最简单最公平的一种思想。空间满的时候,最先进入的数据先被淘汰。FIFO算法描述:设计一种缓存结构,构造时确定大小set(key,value) 将键值对插入该结构,当缓存满,将最先进入缓存的数据置换掉get(key):返回key的value值实现策略:维护一个FIFO队列...

2020-02-23 12:55:11 1426 1

原创 设计模式之结构型模式:适配器模式、桥接模式、组合模式、装饰器模式、代理模式、

文章目录什么是结构型模式适配器模式适配器的数据结构适配器的实现缺省适配器适配器优缺点什么是结构型模式关注如何将现有类或对象组织在一起形成更加强大得结构,7种结构型设计模式,使用不同得方式组合类与对象,使之可以协同工作。适配器模式如果在系统种存在不兼容得接口,可以通过引入一个适配器使原本不兼容得两个类能够一起协同工作适配器的数据结构目标抽象类:定义客户端直接调用的接口方法适配器类:作...

2020-02-21 22:26:15 853

原创 创建型模式:工厂方法模式、抽象工厂模式、建造者模式、原型模式

文章目录几种设计模式简单工厂模式抽象工厂模式几种设计模式创建型模式(五种):单例模式、原型模式、工厂方法模式、抽象工厂模式、建造者模式。结构型模式(七种):适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。行为型模式(十一种):策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式简单工厂...

2020-02-21 17:12:56 744

原创 Redis面试题大全

文章目录redis单线程为什么这么快redis单线程如何处理这么多的并发客户端连接redis是怎样实现持久化的redis4.0混合持久化通过缓存淘汰策略,解决数据热点问题redis怎么进行选举的怎么认定某个集群节点出现故障怎么对redis集群水平扩展怎么删除redis集群的节点使用哈希槽的好处redis单线程为什么这么快因为redis数据都存储在内存中,所有的运算都是内存级别的运算(纳秒),而...

2020-02-20 20:35:36 309

原创 《Redis设计与实现》之多机数据库实现

文章目录复制旧版复制功能同步命令传播旧版复制功能缺陷新版复制功能部分重同步的实现数据结构复制偏移量复制积压缓冲区-保存最近传播的写命令根据需要调整复制积压缓冲区的大小服务运行IDpsync命令的实现复制的实现心跳检测检测主从服务器网络状态检测命令丢失redis集群节点集群数据结构cluster meet命令的实现集群指令槽指派记录槽指派的数据结构传播节点槽指派信息cluster addslots命...

2020-02-20 00:55:37 259

原创 《Redis设计与实现》之单机数据库实现

文章目录服务器数据库键空间以及生存时间,过期时间键空间详解设置键的生存时间移除键的生存时间计算键的生存时间,判定过期键过期键的三种删除策略redis删除过期键的策略RDB持久化服务器数据库redis客户端都有自己的目标数据库,默认为0号数据库,使用select进行切换struct redisServer{ int dbnum; //服务的数据库数量,由数据库配置databas...

2020-02-18 23:10:50 195

原创 《Redis设计与实现》之数据结构与对象

文章目录第一遍略读笔记字符串链表字典有序集合压缩列表整数集合redis对象对象类型和编码字符串对象列表对象哈希对象集合对象有序集合对象类型检查与多态命令内存回收和共享内存回收内存共享第一遍略读笔记字符串SDS用法:字符串值,AOF缓冲区,输入缓冲区sds={int len; //判定师傅穿是否结束int free; //表示空闲长度char buf[]; //保存二进制数据...

2020-02-18 19:33:13 224

原创 跳跃表原理与Java实现

文章目录跳跃表总结问题优化思路调表的搜索调表的插入跳跃表的性质对比实现跳跃表总结解决了有序链表结构查找特定值困难的问题,查找特定值的时间复杂度为O(logn),他是一种可以代替平衡树的数据结构问题假如我们要用某种数据结构来维护一组有序的int型数据的集合,并且希望这个数据结构在插入、删除、查找等操作上能够尽可能着快速,那么,你会用什么样的数据结构呢?数组:采用二分法可以在0(logn)...

2020-02-18 13:35:14 289

原创 redis主从同步

文章目录CAP原理最终一致性主从同步增量同步快照同步增加从节点CAP原理CAP原理就是:当网络分区/断开时,一致性和可用性两难全。C - Consistent ,一致性A - Availability ,可用性P - Partition tolerance ,分区容忍性最终一致性redis主从数据是异步同步的,所以redis不满足“一致性”redis主从网络断开,任然提供服务,...

2020-02-17 23:05:41 98

原创 Redis持久化,管道,事务操作

文章目录redis持久化RDB快照原理AOF原理管道redis事务watch操作redis持久化因为redis数据都在内存,需要持久化保证数据因为故障不丢失。redis持久化有两种:AOF和快照。快照:是内存的全量备份AOF: 是日志的增量备份RDB快照原理redis使用os的多进程COW(copy on write)机制来实现快照持久化AOF原理日志存储的是redis服务器顺...

2020-02-17 22:37:23 181

空空如也

空空如也

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

TA关注的人

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