上一页 1 ··· 41 42 43 44 45 46 47 48 49 ··· 54 下一页
摘要: 组合模式就是对象嵌套对象的模式,组合模式是以树形结构呈现。 一、概念①、什么是组合模式?组合模式又叫部分整体模式,是用于把一组相似的对象当做一个单一的对象。组合模式依据树型结构来组合对象,用来表示部分以及整体层次。这种类型的设计模式属于结构性模式,它创建了对象组的树形结构。②、主要解决的问题?它在树 阅读全文
posted @ 2021-04-19 11:29 郭慕荣 阅读(69) 评论(0) 推荐(0) 编辑
摘要: 同步刷盘、异步刷盘RocketMQ的消息是存储到磁盘上的,这样既能保证断电后恢复,又可以让存储的消息量超出内存的限制。RocketMQ为了提高性能,会尽可能地保证磁盘的顺序写。消息在通过Producer写入RocketMQ的时候,有两种写磁盘方式:1)异步刷盘方式:在返回写成功状态时,消息可能只是被 阅读全文
posted @ 2021-04-18 09:37 郭慕荣 阅读(920) 评论(0) 推荐(0) 编辑
摘要: redis常用的方式有单节点、主从模式、哨兵模式、集群模式。 单节点在生产环境基本上不会使用,因为不能达到高可用,且连RDB或AOF备份都只能放在master上,所以基本上不会使用。另外几种模式都无法避免两个问题:1、异步数据丢失。2、脑裂问题。 所以redis官方针对这种情况提出了红锁(Redlo 阅读全文
posted @ 2021-04-16 10:47 郭慕荣 阅读(1569) 评论(0) 推荐(0) 编辑
摘要: 在分布式环境中,很多场景,如:秒杀、ID生成... 都需要分布式锁。分布式锁的实现,可以基于redis的setnx,zk的临时节点。。。今天我们介绍一种redis官方推荐的方法——redission。1、pom.xml <dependency> <groupId>org.redisson</grou 阅读全文
posted @ 2021-04-13 17:52 郭慕荣 阅读(344) 评论(0) 推荐(0) 编辑
摘要: kafka是需要集成zookeeper的; 在本电脑中:zookeeper的位置是:D:\data\tools\zookeeper-kafka-3.6.2\bin;kafka的位置是:D:\data\tools\kafka_2.12-2.2.1 zookeeper的启动是点击:zkServer.cm 阅读全文
posted @ 2021-04-04 13:15 郭慕荣 阅读(1287) 评论(0) 推荐(0) 编辑
摘要: 这个问题在面试中经常会被问到的,synchronized在1.6之后做了什么优化,其实对synchronized一些底层的理解还是很重要的。 一:Synchronized实现原理1、Java对象头首先,我们要知道对象在内存中的布局:已知对象是存放在堆内存中的,对象大致可以分为三个部分,分别是对象头、 阅读全文
posted @ 2021-04-02 11:01 郭慕荣 阅读(1201) 评论(0) 推荐(1) 编辑
摘要: 前言Java内存模型是Java程序员学习JVM前必须要掌握的基础知识 ,也是面试中经常会被问到的问题点。但是要真正完全弄清楚它,还是有点难度的,因为Java内存模型是不可见的,它并不是一个真实的东西,它只是一个概念、一个规范。 计算机硬件体系介绍,CPU多级缓存要想完全搞清楚Java内存模型,先要了 阅读全文
posted @ 2021-04-02 10:45 郭慕荣 阅读(2015) 评论(0) 推荐(1) 编辑
摘要: 问:索引建立越多越好吗?数据量小的表不需要建立索引,因为建立索引会增加额外的开销。数据变更需要维护索引,因此更多的索引意味着更多的维护成本。更多的索引意味着更多的存储空间。 B+树,最好是使用主键递增的这种方式,如果使用其他的方式,B+树是一个二叉树,要维护这个B+树,结构会发生很大的变化。数据结构 阅读全文
posted @ 2021-04-01 14:05 郭慕荣 阅读(599) 评论(0) 推荐(0) 编辑
摘要: 本文使用 ThreadPoolExecutor实现一个带优先级的线程池,其实正常的实现方式是使用优先级队列(java.util.PriorityQueue / java.util.concurrent.PriorityBlockingQueue)这种方式没办法同步的获取结果, 编程上有点复杂, ja 阅读全文
posted @ 2021-03-22 15:59 郭慕荣 阅读(1356) 评论(0) 推荐(0) 编辑
摘要: 垂直分表: 垂直分表在日常开发和设计中比较常见,通俗的说法叫做“大表拆小表”,拆分是基于关系型数据库中的“列”(字段)进行的。通常情况,某个表中的字段比较多,可以新建立一张“扩展表”,将不经常使用或者长度较大的字段拆分出去放到“扩展表”中。ps:在字段很多的情况下,拆分开确实更便于开发和维护(曾见过 阅读全文
posted @ 2021-03-18 16:15 郭慕荣 阅读(170) 评论(0) 推荐(0) 编辑
上一页 1 ··· 41 42 43 44 45 46 47 48 49 ··· 54 下一页