自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

哪有什么天生王者,不过是一步一个脚印

哪有什么天生王者,不过是一步一个脚印

转载 一直对zookeeper的应用和原理比较迷糊,今天看一篇文章,讲得很通透,分享如下

场景一 有这样一个场景:系统中有大约100w的用户,每个用户平 均有3个邮箱账号,每隔5分钟,每个邮箱账需要收取100封邮件,最多3亿份邮件需要下载到服务器中(不含附件和正文)。用20台机器划分计算的压力,从 多个不同的网路出口进行访问外网,计算的压力得到缓解,那么每台机器的计算压力也不会很大了...

2019-08-26 16:44:41

阅读数 55

评论数 0

转载 Zookeeper系列(5)--ZAB协议,消息广播,崩溃恢复,数据同步

在前一篇中,写了Zookeeper的相关概念,以及节点、acl,watcher等机制,这一篇就写一下保证ZK集群高可用及数据一致性的底层实现算法:ZAB协议。 ZAB协议概述 在前面的文章中,介绍了经典的分布式数据一致性算法Paxos算法,但事实上zookeeper并没有采用完全的Paxos算...

2019-08-26 15:20:51

阅读数 15

评论数 0

转载 JVM垃圾回收--年轻代、年老点和持久代

关键字约定 Young generation –>新生代 Tenured / Old Generation –>老年代 Perm Area –>永久代 年轻代:   所有新生成的对象首先都是放在年轻代的。年轻代的目标就是尽可能快速的收集掉那...

2019-08-22 16:49:01

阅读数 39

评论数 0

转载 JVM的垃圾回收机制

一、 技术背景你要了解吧   按照套路是要先装装X,谈谈JVM垃圾回收的前世今生的。说起垃圾回收(GC),大部分人都把这项技术当做Java语言的伴生产物。事实上,GC的历史比Java久远,早在1960年Lisp这门语言中就使用了内存动态分配和垃圾回收技术。设计和优化C++这门语言的专家们要长点心...

2019-08-22 15:57:29

阅读数 28

评论数 0

转载 常用的设计模式

1.单例模式: 实现方式: a) 将被实现的类的构造方法设计成private的。 b) 添加此类引用的静态成员变量,并为其实例化。 c) 在被实现的类中提供公共的CreateInstance函数,返回实例化的此类,就是b中的静态成员变量。 应用场景: 优点: 1.在单例模式中,活...

2019-08-21 19:05:44

阅读数 15

评论数 0

转载 装饰模式与代理模式的区别

学习AOP时,教材上面都说使用的是动态代理,可是在印象中代理模式一直都是控制访问什么的,怎么又动态增加行为了,动态增加行为不是装饰器模式吗?于是 找了很多资料,想弄清楚这两者之间到底有什么区别。结果发现这一篇英文文章讲的很清晰,就翻译一下,供参考。 首先,让我们先看一下下面的这两个UML类图,...

2019-08-21 18:56:25

阅读数 32

评论数 0

转载 Maven POM中的各种scope的行为总结

compile:默认的scope。任何定义在compile scope下的依赖将会在所有的class paths下可用。maven工程会将其打包到最终的artifact中。如果你构建一个WAR类型的artifact,那么在compile scope下引用的JAR文件将会被集成到WAR文件内。 p...

2019-08-20 11:39:09

阅读数 16

评论数 0

转载 框架类面试题

mybatis MyBatis中使用#和$书写占位符有什么区别? #将传入的数据都当成一个字符串,会对传入的数据自动加上引号;$将传入的数据直接显示生成在SQL中。注意:使用$占位符可能会导致SQL注射攻击,能用#的地方就不要使用$,写order by子句的时候应该用$而不是#。 解释一下M...

2019-08-19 12:03:44

阅读数 21

评论数 0

转载 看完就明白_spring事务的7种传播行为

事务传播行为 什么叫事务传播行为?听起来挺高端的,其实很简单。 即然是传播,那么至少有两个东西,才可以发生传播。单体不存在传播这个行为。 事务传播行为(propagation behavior)指的就是当一个事务方法被另一个事务方法调用时,这个事务方法应该如何进行。 例如:methodA事务方...

2019-08-19 09:34:54

阅读数 9

评论数 0

转载 java基础知识点

1、集合 https://blog.csdn.net/u010775025/article/details/79315361 2、map HashMap的数据结构 https://blog.csdn.net/qq_34680763/article/details/79514621 一致性h...

2019-08-18 15:41:46

阅读数 59

评论数 0

转载 线程的几种状态极其转换

线程在一定条件下,状态会发生变化。线程一共有以下几种状态: 1、初始化状态(New):新创建了一个线程对象。 2、就绪状态(Runnable):线程对象创建后,其他线程调用了该对象的start()方法。该状态的线程位于“可运行线程池”中,变得可运行,只等待获取CPU的使用权。即在就绪状态的进程...

2019-08-17 08:55:55

阅读数 29

评论数 0

转载 编译时多态、运行时多态

转载自https://blog.csdn.net/qq_38962004/article/details/79690627 根据何时确定执行多态方法中的哪一个,多态分为两种情况:编译时多态和运行时多态。如果在编译时能够确定执行多态方法 中的哪一个,称为编译时多态,否则称为运行时多态。 一...

2019-08-16 07:56:09

阅读数 39

评论数 0

转载 手写一个迷你版的Tomcat

转载自公众号java团长 前言 Tomcat,这只3脚猫,大学的时候就认识了,直到现在工作中,也常会和它打交道。这是一只神奇的猫,今天让我来抽象你,实现你! Tomcat   Write MyTomcat Tomcat是非常流行的Web Server,它还是一个满足Servlet规...

2018-10-11 12:51:07

阅读数 77

评论数 0

转载 分布式锁简单入门以及三种实现方式介绍

转载地址 很多小伙伴在学习Java的时候,总是感觉Java多线程在实际的业务中很少使用,以至于不会花太多的时间去学习,技术债不断累积!等到了一定程度的时候对于与Java多线程相关的东西就很难理解,今天需要探讨的东西也是一样的和Java多线程相关的!做好准备,马上开车! 学过Java多线程的应该...

2018-09-07 10:44:01

阅读数 55

评论数 0

原创 一次线上网络问题的排查

现象描述 那天晚上项目准备发布预发环境,发布的内容是接入微信修改结算银行卡信息的接口,测试环境测试完全没有问题,但是发布到预发环境后发现功能不能用。那么问题来了,为什么测试环境没问题但是预发环境有问题呢? 排查步骤 1、查看日志发现是获取证书时网络请求失败,请求超时   2、查看代码...

2018-08-21 13:52:27

阅读数 212

评论数 0

转载 彻底解决mysql中文乱码

mysql是我们项目中非常常用的数据型数据库。但是因为我们需要在数据库保存中文字符,所以经常遇到数据库乱码情况。下面就来介绍一下如何彻底解决数据库中文乱码情况。1、中文乱码1.1、中文乱码create table user(name varchar(11));    # 创建user表insert...

2018-07-04 09:56:52

阅读数 101

评论数 0

转载 类与继承

对于面向对象的程序设计语言来说,类毫无疑问是其最重要的基础。抽象、封装、继承、多态这四大特性都离不开类,只有存在类,才能体现面向对象编程的特点,今天我们就来了解一些类与继承的相关知识。首先,我们讲述一下与类的初始化相关的东西,然后再从几个方面阐述继承这一大特性。以下是本文的目录大纲:  一.你了解...

2018-07-04 09:50:36

阅读数 63

评论数 0

转载 Spring Boot 自动配置的“魔法”是如何实现的?

原文地址Spring Boot是Spring旗下众多的子项目之一,其理念是约定优于配置,它通过实现了自动配置(大多数用户平时习惯设置的配置作为默认配置)的功能来为用户快速构建出标准化的应用。Spring Boot的特点可以概述为如下几点:内置了嵌入式的Tomcat、Jetty等Servlet容器,...

2018-07-03 20:44:24

阅读数 41

评论数 0

转载 iptables命令

Linux iptables常用命令iptables 是 Linux 中重要的访问控制手段,是俗称的 Linux 防火墙系统的重要组成部分。这里记录了iptables 防火墙规则的一些常用的操作指令。下面的操作以 CentOS 为基础介绍,应该对不同的 Linux 发行版都差不多。在 CentOS...

2018-06-29 20:33:01

阅读数 251

评论数 0

翻译 mysql select语句优化之GROUP BY Optimization

实现GROUP BY子句的最常用方法是扫描整个表并创建一个新的临时表,其中每个组中的所有行都是连续的,然后使用此临时表来查找组并应用聚合函数(如果有)。在某些情况下,MySQL可以做得比这更好,通过使用索引访问避免创建临时表。使用GROUP BY索引的最重要前提条件是,所有GROUP BY列引用的...

2018-06-21 23:23:16

阅读数 390

评论数 0

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