自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(20)
  • 资源 (7)
  • 收藏
  • 关注

转载 Hash算法解决冲突的方法

Hash算法解决冲突的方法一般有以下几种常用的解决方法1, 开放定址法:所谓的开放定址法就是一旦发生了冲突,就去寻找下一个空的散列地址,只要散列表足够大,空的散列地址总能找到,并将记录存入公式为:fi(key) = (f(key)+di) MOD m (di=1,2,3,……,m-1)※ 用开放定址法解决冲突的做法是:当冲突发生时,使用某种探测技术在散列表中形成一个探测序列。沿此序...

2019-11-28 18:19:18 574

转载 innodb下的悲观锁和乐观锁

****悲观锁与乐观锁****悲观锁,也叫悲观并发控制,当事务A对某行数据应用了锁,并且当这个事务把锁释放后,其他事务才能够执行与该锁冲突的操作,这里事务A所施加的锁就叫悲观锁。看到这里,会发现,我们之前学习的共享锁和排他锁(行锁,间隙锁,next-key lock)都属于悲观锁。乐观锁,也叫乐观并发控制,它假设多用户并发的事务在处理时不会彼此互相影响,各事务能够在不产生锁的情况下处理各...

2019-11-28 14:50:55 716

转载 innodb下的记录锁,间隙锁,next-key锁

****你需要知道的****之前我们介绍了排他锁,其实innodb下的记录锁(也叫行锁),间隙锁,next-key锁统统属于排他锁。****行锁****记录锁其实很好理解,对表中的记录加锁,叫做记录锁,简称行锁。****生活中的间隙锁****编程的思想源于生活,生活中的例子能帮助我们更好的理解一些编程中的思想。生活中排队的场景,小明,小红,小花三个人依次站成一排,此时,如何让新来的...

2019-11-28 14:50:15 548

转载 java:给定字符串,求其最长不重复子串

问题描述:输入:abdca 返回:abdc方法一:暴力解析:遍历出给定字符串的所有子串,判断其中是否有重复字符,没有则记录长度,与下一次也无重复字符的子串比较长度,最长的即为所求。代码:public static String noDuplicate(String str) { if(str==null||str.length()==0){ ...

2019-11-28 12:36:49 3623 2

转载 分布式事务之深入理解什么是2PC、3PC及TCC协议?

原本是想着在这篇文章中直接介绍RocketMQ的事务消息特性,但是在梳理的过程中作者发现对于分布式事务的概念,可能还会有很多同学不理解或者理解得不是很深刻的地方,而跳过这些基本概念直接去学习上层的实践可能并不是一件很好的事情,因此在这篇文章中,作者打算重点给大家先介绍下分布式事务相关的基本概念,诸如分布式事务、2PC、3PC、TCC之类的基本问题,之后再单独去介绍RocketMQ事务消息相关的实践...

2019-11-27 17:57:17 810

转载 ZK的选举算法

一、前言  前面学习了Zookeeper服务端的相关细节,其中对于集群启动而言,很重要的一部分就是Leader选举,接着就开始深入学习Leader选举。二、Leader选举2.1 Leader选举概述  Leader选举是保证分布式数据一致性的关键所在。当Zookeeper集群中的一台服务器出现以下两种情况之一时,需要进入Leader选举。  (1) 服务器初始化启动。  ...

2019-11-27 17:50:51 1092

转载 Mysql加锁过程详解(8)-理解innodb的锁(record,gap,Next-Key lock)

Record lock单条索引记录上加锁,record lock锁住的永远是索引,而非记录本身,即使该表上没有任何索引,那么innodb会在后台创建一个隐藏的聚集主键索引,那么锁住的就是这个隐藏的聚集主键索引。所以说当一条sql没有走任何索引时,那么将会在每一条聚集索引后面加X锁,这个类似于表锁,但原理上和表锁应该是完全不同的。Gap lock在索引记录之间的间隙中加锁,或者是在某...

2019-11-27 17:20:13 787

转载 mysql 多列索引对应的b+tree结构

一:表数据说明有如下的一张表:我们对firstName,lastName,birthday这三列建立一个复合索引,即key(firstName,lastName,birthday);二:复合索引记录排序规则我们知道索引结构中的数据都是按照顺序排列的,上面的索引首先会按照firstName排序即按照字母顺序排列,firstName相同的情况下按照lastName排序,lastName相同...

2019-11-26 18:16:17 1244

转载 ZAB协议-zk

参考文章:https://blog.csdn.net/chengyuqiang/article/details/79190061https://blog.csdn.net/wangyangzhizhou/article/details/52698555https://blog.csdn.net/yangguosb/article/details/80254240ZK中使用的是ZAB协议,...

2019-11-22 17:58:29 621

转载 缓存穿透、缓存击穿、缓存雪崩及其解决方案

前言:缓存的使用场景设计一个缓存系统,不得不要考虑的问题就是:缓存穿透、缓存击穿与失效时的雪崩效应。1.缓存穿透  缓存穿透是指查询一个一定不存在的数据,因为缓存中也无该数据的信息,则会直接去数据库层进行查询,从系统层面来看像是穿透了缓存层直接达到db,从而称为缓存穿透,没有了缓存层的保护,这种查询一定不存在的数据对系统来说可能是一种危险,如果有人恶意用这种一定不存在的数据来频繁请求系统...

2019-11-22 12:06:18 615

转载 关于【缓存穿透、缓存击穿、缓存雪崩、热点数据失效】问题的解决方案

在我们的平常的项目中多多少少都会使用到缓存,因为一些数据我们没有必要每次查询的时候都去查询到数据库。特别是高 QPS 的系统,每次都去查询数据库,对于你的数据库来说将是灾难。今天我们不牵涉多级缓存的知识,就把系统使用到的缓存方案,不管是一级还是多级的都统称为缓存,主要是为了讲述使用缓存的时候可能会遇到的一些问题以及一些解决办法。我们使用缓存时,我们的业务系统大概的调用流程如下图:...

2019-11-22 12:04:41 548

转载 Java8:使用Lambda表达式增强版Comparator排序

package com.server.model;/** * Created by jstarseven on 2016/3/21. */public class Human { private String name; private int age; @Override public String toString() { ret...

2019-11-20 10:48:18 753

转载 Redis的key和value大小限制

Redis的key和value大小限制今天研究了下将java bean序列化到redis中存储起来,突然脑袋灵光一闪,对象大小会不会超过redis限制?不管怎么着,还是搞清楚一下比较好,所以就去问了下百度,果然没多少人关心这个问题,没找到比较合适的答案,所以决定还是去官网找吧。找到两句比较关键的话,截图如下。https://redis.io/topics/data-types...

2019-11-19 12:06:43 8519

转载 spring和springmvc的父子容器的关系

首先,必须先理解spring在web容器的是如何运行的。1 对于一个web应用,当其部署在web容器上时,web容器就会给其提供一个全局的上下文环境ServletContext. 这个上下文环境将为后面的所有的spring有关的容器提供宿主环境,相当于是提供一个仓库。后面的所有的容器都将装在里面。补充:什么是ServletContex对象?ServletContext对象是...

2019-11-11 12:02:29 623

转载 spring与springmvc父子容器

转载地址:http://www.tianshouzhi.com/api/tutorials/spring1、spring和springmvc父子容器概念介绍在spring和springmvc进行整合的时候,一般情况下我们会使用不同的配置文件来配置spring和springmvc,因此我们的应用中会存在至少2个ApplicationContext实例,由于是在web应用中,因此最终实例化的是...

2019-11-11 12:00:04 599

转载 Java 高并发缓存与Guava Cache

一.背景缓存是我们在开发中为了提高系统的性能,把经常的访问业务的数据第一次把处理结果先放到缓存中,第二次就不用在对相同的业务数据在重新处理一遍,这样就提高了系统的性能。缓存分好几种:(1)本地缓存。(2)数据库缓存。(3)分布式缓存。分布式缓存比较常用的有memcached等,memcached是高性能的分布式内存缓存服务器,缓存业务处理结果,减少数据库...

2019-11-07 18:10:47 991

原创 缓存击穿后单机只用一个线程命中Db策略

private ConcurrentHashMap<Integer, FutureTask<ShopDto> shopTaskMap = new ConcurrentHashMap<Integer, FutureTask<ShopDto>();public ShopDto loadShop(int shopId) { ShopDto dto = ...

2019-11-07 17:52:26 578

转载 LRU、FIFO缓存实现以及LinkedHashMap源码

  本篇将描述如何使用LinkedHashMap实现LRU以及FIFO缓存,并将从LinkedHashMap源码层面描述是如何实现这两种缓存的。1.缓存描述  首先介绍一下FIFO、LRU两种缓存:    FIFO(First In First out):先见先出,淘汰最先近来的页面,新进来的页面最迟被淘汰,完全符合队列。    LRU(Least recently used):最...

2019-11-07 13:48:00 645

转载 Jackson 解析json数据之忽略解析字段注解@JsonIgnoreProperties

jackson json转实体 com.fasterxml.jackson.databind.exc.UnrecognizedPropertyException由于vo中缺少json的某个字段属性引起2种解决方法1:vo中添加注解@JsonIgnoreProperties(ignoreUnknown = true)2. mapper.configure(Deserializati...

2019-11-04 11:54:06 2541

转载 Java 使用IE浏览器下载文件,文件名乱码问题

使用Servlet实现文件下载功能时,使用IE下载出现文件名乱码;网上常见的解决办法是通过"user-agen"来判断浏览器:if (req.getHeader("user-agent").toLowerCase().contains("msie")) { // IE filename = URLEncoder.encode(filename, "UT...

2019-11-01 12:21:05 1618

Zookeeper资源文件

2017-03-20

Zookeeper基础知识

2017-03-20

Zookeeper初识

2017-03-20

使用exe4j 制作java启动程序的 等候界面

使用exe4j 制作java启动程序的 等候界面,使用了 JDK6 自带splash功能。 备注 exe/jre 文件夹中 包含了 jre ,但由于大小问题,无法上传。

2014-06-12

jquery浮动窗

基于jquery 的悬浮窗功能,有一些基本的功能

2014-01-23

java在线预览office

java使用openoffice swftools flexpaper2.1.9 实现在线预览功能

2013-12-21

空空如也

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

TA关注的人

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