自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

fd2025的博客

一步登天做不到,但一步一个脚印能做到;一鸣惊人不好做,但一股劲做好一件事,可以做;一下成为天才不可能,但每天进步一点点有可能...

转载 3.分布式消息队列-如何保证消息队列的高可用?

本系列引自自中华石杉,微信公众号石杉的架构笔记(id:shishan100) -------------------------------------------------- 面试题 如何保证消息队列的高可用? 面试官心理分析 如果有人问到你 MQ 的知识,高可用是必问的。上一讲提到...

2019-07-29 15:19:02 47 0

转载 7、分布式消息队列-如何解决消息队列的延时以及过期失效问题?消息队列满了以后该怎么处理?有几百万消息持续积压几小时,说说怎么解决?

本系列引自自中华石杉,微信公众号石杉的架构笔记(id:shishan100) ---------------------------------------------------------------- 面试题 如何解决消息队列的延时以及过期失效问题?消息队列满了以后该怎么处理?有几百万...

2019-07-29 15:14:12 60 0

转载 6、分布式消息队列-如何保证消息的顺序性?

本系列引自自中华石杉,微信公众号石杉的架构笔记(id:shishan100) ---------------------------------------------------------------- 面试题 如何保证消息的顺序性? 面试官心理分析 其实这个也是用 MQ 的时候必问...

2019-07-29 15:12:27 210 0

转载 5、分布式消息队列-如何保证消息的可靠性传输?(如何处理消息丢失的问题)

本系列引自自中华石杉,微信公众号石杉的架构笔记(id:shishan100) ---------------------------------------------------------------- 面试题 如何保证消息的可靠性传输?或者说,如何处理消息丢失的问题? 面试官心理...

2019-07-29 15:05:34 304 0

转载 4、分布式消息队列-如何保证消息不被重复消费?(如何保证消息消费的幂等性)

本系列引自自中华石杉,微信公众号石杉的架构笔记(id:shishan100) ---------------------------------------------------------------- 面试题 如何保证消息不被重复消费?或者说,如何保证消息消费的幂等性? 面试官心理分...

2019-07-29 14:57:36 493 0

转载 2.分布式消息队列-为什么使用消息队列?消息队列有什么优点和缺点?Kafka、ActiveMQ、RabbitMQ、RocketMQ 都有什么优点和缺点?

本系列引自自中华石杉,微信公众号石杉的架构笔记(id:shishan100) ---------------------------------------------------------------- 面试题 为什么使用消息队列? 消息队列有什么优点和缺点? Kafka、Activ...

2019-07-29 14:45:10 100 0

转载 常见的死锁情况及解决方法

1、死锁的第一种情况 一个用户A 访问表A(锁住了表A),然后又访问表B;另一个用户B 访问表B(锁住了表B),然后企图访问表A;这时用户A由于用户B已经锁住表B,它必须等待用户B释放表B才能继续,同样用户B要等用户A释放表A才能继续,这就死锁就产生了。 解决方法 这种死锁比较常见,是由于程...

2018-06-06 16:49:14 1051 0

原创 负载均衡集群中的session解决方案

1.什么是Session 1.1 什么是Session 用户使用网站的服务,基本上需要浏览器与Web服务器的多次交互。HTTP协议本身是无状态的,需要基于HTTP协议支持会话状态(Session State)的机制。而这样的机制应该可以使Web服务器从多次单独的HTTP请求中看到”会话”,...

2018-05-28 16:33:58 721 0

原创 Mybatis 入门教程

第一章 mybatis架构 1.1 mybatis介绍 1.2 mybatis架构 1.3 mybatis开发dao的方法 第二章 mybatis入门程序 2.1 需求 2.2 导入jar包 2.3 log4j.properties(共用文件) 2.4 SqlMapConfig.xm...

2018-05-26 21:32:56 519 0

原创 如何设计网站权限系统?

第1章 权限管理原理知识 1.1 什么是权限管理 1.2 用户认证 1.2.1 概念 1.2.1 用户认证流程 1.2.2 关键对象 1.3 用户授权 1.3.1 概念 1.3.2 授权流程 1.3.3 关键对象 1.3.4 分配权限 1.3.5 权限模型 1.3.5 权限控制(授权核...

2018-05-24 18:22:06 6222 1

原创 工厂方法模式-factory method

1.工厂方法模式定义 定义一个用于创建对象的接口,让子类决定实例化哪一个类,Factory Method 使一个类的实例延迟到其子类。 工厂方法模式的解决思路: 那就是不解决,采取无为而治的方式; 2.工厂方法模式的结构和说明 工厂方法模式的结构如图: Product: 定义工厂方法所创建的对象的...

2020-01-04 23:36:07 59 0

原创 单例模式双重检查加锁为什么需要加上volatile关键字?

public class DoubleCheckedLocking {![在这里插入图片描述](https://img-blog.csdnimg.cn/20200104212259644.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVp...

2020-01-04 21:23:50 180 0

原创 组合模式-Composite

1.看一个学校院系展示需求 编写程序展示一个学校院系结构:需求是这样,要在一个页面中展示出学校的院系组成,一个学校有多个学院,一个学院有多个系。如图: 2 传统方案解决学校院系展示(类图) 3. 传统方案解决学校院系展示存在的问题分析 将 学院看做是学校的子类, 系是学院的子类,这样实际...

2020-01-02 08:52:01 40 0

原创 享元模式-FlyWeight

1. 展示网站项目需求 小型的外包项目,给客户 A 做一个产品展示网站,客户 A 的朋友感觉效果不错,也希望做这样的产品展示网 站,但是要求都有些不同: 有客户要求以新闻的形式发布 有客户人要求以博客的形式发布 有客户希望以微信公众号的形式发布 2. 传统方案解决网站展现项目 直接复制粘贴...

2020-01-02 08:07:41 35 0

原创 模板方法模式-Template Method

1. 豆浆制作问题 编写制作豆浆的程序,说明如下:: 制作豆浆的流程 选材—>添加配料—>浸泡—>放到豆浆机打碎 通过添加不同的配料,可以制作出不同口味的豆浆 选材、浸泡和放到豆浆机打碎这几个步骤对于制作每种口味的豆浆都是一样的 请使用 模板方法模式 完成 (说明:因为模板方法...

2020-01-01 16:16:58 62 0

原创 命令模式-Command

1. 智能生活项目需求 看一个具体的需求 我们买了一套智能家电,有照明灯、风扇、冰箱、洗衣机,我们只要在手机上安装 app 就可以控制对这些家电工作。 这些智能家电来自不同的厂家,我们不想针对每一种家电都安装一个 App,分别控制,我们希望只要一个 app就可以控制全部智能家电。 要实现一个 ...

2020-01-01 08:24:47 22 0

原创 观察者模式-Observer

1. 天气预报项目需求,具体要求如下 气象站可以将每天测量到的温度,湿度,气压等等以公告的形式发布出去(比如发布到自己的网站或第三方)。 需要 设计开放型 API,便于 其他第三方也能接入气象站获取数据。 提供温度、气压和湿度的接口 测量数据更新时,要能实时的通知给第三方 2. 天气预报设计方...

2019-12-31 22:46:41 19 0

原创 中介者模式-Mediator

1. 智能家居项目 智能家居项目: 智能家庭包括各种设备,闹钟、咖啡机、电视机、窗帘 等 主人要看电视时,各个设备可以协同工作,自动完成看电视的准备工作,比如流程为:闹铃响起->咖啡机开始 做咖啡->窗帘自动落下->电视机开始播放 2. 传统方案解决智能家庭管理问题 3....

2019-12-31 22:22:44 25 0

原创 备忘录模式-Memento

1、场景 考虑这样一个应用,功能是,模拟运行针对某个具体问题 的多个解决方案,记录运行过程的各种数据,在模拟运行完成之后,方便对这多个解决 方案进行比较的评价,从而选定最优的解决方案。 由于都是解决同一个具体的问题。这多个解决方案并不是完全不一样的,假定它们的前半部分运行时完全一样的,只是在后半部...

2019-12-31 21:31:56 36 0

原创 状态模式-state

1、实现在线投票 需求: 在线投票,要实现控制统一用户只能头投一票,如果一个用户反复投票,而且投票次数超过5次,则判定为恶意刷票,要取消该用户投票的资格,当然同时也要取消他所有的投票;如果一个用户的投票次数超过8次,将进入黑名单,禁止再登录和使用系统。 2、传统的解决方案 public class...

2019-12-29 22:37:51 21 0

原创 策略模式- Strategy

1、编写鸭子项目,具体要求如下: 有各种鸭子(比如 野鸭、北京鸭、水鸭等, 鸭子有各种行为,比如 叫、飞行等) 显示鸭子的信息 2 传统方案解决鸭子问题的分析和代码实现 传统的设计方案(类图) 2) 代码实现 抽象类 Duck public abstract class Duck...

2019-12-29 19:20:57 26 0

原创 职责链模式(Chain Of Responsibility)

1、OA 系统采购审批需求 学校OA系统的采购审批项目:需求是 采购员采购教学器材 如果金额 小于等于5000, 由教学主任审批 (0<=x<=5000) 如果金额 小于等于10000, 由院长审批 (5000<x<=10000) 如果金额 小于等于30000, 由副校长...

2019-12-27 08:26:20 34 0

原创 java 查看只有main函数的类,启动了几个线程

public class OnlyMain { public static void main( String[] args ) { //Java 虚拟机线程系统的管理接口 ThreadMXBean threadMXBean = ManagementFact...

2019-12-09 09:27:18 50 0

原创 linux sz rz的安装命令

yum install -y lrzsz

2019-11-08 15:44:57 25 0

原创 centos安装git时出错提示make[1]: *** [perl.mak] Error 2

centos安装git时出错提示make[1]: *** [perl.mak] Error 2 解决: yum install perl-ExtUtils-MakeMaker package

2019-11-08 15:44:01 232 0

转载 从零开始JVM实战

购买路径: 扫描二维码即可购买。。。

2019-07-04 09:39:08 562 1

原创 Spring BeanFactory 和 FactoryBean 的区别

BeanFactory 指 的 是 IOC 容 器 的 编 程 抽 象 , 比 如ApplicationContext,XmlBeanFactory 等,这些都是 IOC 容器的具体表现,需要使用什么样的容器由客户决定,但 Spring 为我们提供了丰富的选择。 FactoryBean 只是一个...

2019-05-18 11:57:24 44 0

原创 如何防止单例模式被JAVA反射攻击

public class InnerStaticSingleton { private static boolean initialized = false; //默认使用的时候,会先初始化内部类 // 如果没有使用的时候,内部类是不会加载的 private InnerStaticSin...

2019-05-15 10:14:16 128 0

原创 JDK版本对应的十进制

JDK1.8 = 52 JDK1.7 = 51 JDK1.6 = 50 JDK1.5 = 49 JDK1.4 = 48

2019-05-09 17:34:51 197 0

原创 Thread类的getAllStackTraces()方法获取虚拟机中所有线程的StackTraceElement对象,可以查看堆栈

for (Map.Entry<Thread, StackTraceElement[]> stackTrace : Thread.getAllStackTraces().entrySet()) { Thread thread = (Thread) stackTrace.getKey...

2019-05-09 16:21:09 261 0

原创 java虚拟机内存分配策略

优先分配到eden 大对象直接分配到老年代 长期存活的对象分配到老年代 空间分配担保 动态对象年龄判断

2019-05-09 10:56:58 32 0

原创 java 垃圾回收可以作为GCRoots的对象

虚拟机栈(局部变量表) 方法区中的类属性所引用的对象 方法区中常量所引用的对象 本地方法栈中引用的对象

2019-05-09 09:22:58 236 0

转载 java中的异常处理

java 异常需要解决一下3个问题: 哪里发生异常 谁来处理异常 如何处理异常 下面就围绕这三个问题来探讨如何才能建立一套完善的异常处理机制: 首先:需要明确在哪里发生异常。在代码中通过try-catch来发现异常,但是有些程序员往往将大段代码定义在一个try-catch块内,这样非常不利于定...

2019-03-23 17:34:05 66 0

原创 ConcurrentHashMap源码解析

ConcurrentHashMap源码解析 ConcurrentHashMap源码解析 jdk8之前的实现原理 jdk8的实现原理 变量解释 初始化 初始化table put操作 hash算法 获取table中对应的元素f 链表或红黑树操作 table 扩容 get操作 ...

2018-08-19 16:17:29 153 0

原创 java 线程池

线程池 线程池 线程池概述 创建一个线程池并提交线程任务 线程池源码解析 参数认识 构造方法 提交任务 addWorker 执行任务 关闭线程池 线程池概述 什么是线程池 为什么使用线程池 线程池的优势 第一:降低资源消耗。通过重复利用已创建的线程降低线程创建和销毁造...

2018-08-19 16:16:03 112 0

转载 彻底理解Java的Future模式

文章来源:https://www.cnblogs.com/cz123/p/7693064.html 作者:大诚挚 彻底理解Java的Future模式 场景:假如你突然想做饭,但是没有厨具,也没有食材。网上购买厨具比较方便,食材去超市买更放心。 实现分析:在快递员送厨具的期间...

2018-06-19 20:23:19 212 0

转载 轻松学习java可重入锁(ReentrantLock)的实现原理

转载地址:https://blog.csdn.net/yanyan19880509/article/details/52345422作者:那个天真的人前言相信学过java的人都知道 synchronized 这个关键词,也知道它用于控制多线程对并发资源的安全访问,兴许,你还用过Lock相关的功能,...

2018-06-13 06:39:49 112 0

原创 Notepad++ 插件的安装

Notepad++ 插件的安装 1.1 Notepad++下载 下载地址:https://notepad-plus-plus.org/download/v7.3.3.html 注:只有32位的才能安装插件,所以下载时要注意下载32位的 Included plugins: N...

2018-06-11 17:08:01 1801 0

原创 Jmeter实现多用户登录测试

场景:测试某些接口时,需要测试多用户,而且接口的测试需要预先登录,这就需要Jmeter批量加载用户的用户名、密码进行登录。 1.1 首先模拟注册 首先写测试类,循环插入用户名、密码 1.2 模拟用户登录 在登录成功过后获取sessinId,session.getId() 然后把用户名...

2018-06-09 17:10:42 6733 1

原创 Jmeter 接口压力测试需要登录的接口

1. Jmeter 接口压力测试需要登录的接口 1.1 找到JSESSIONID 以Firefox为例: 按下F12 ,根据下面方法找到JSESSIONID 1.2 Jmeter里新增HTTP cookie 管理器 增加HTTP cookie 管理器 ...

2018-06-09 14:23:34 1736 0

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