自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

  • 博客(105)
  • 资源 (5)
  • 收藏
  • 关注

原创 nginx CSS JS加载失败

问题将网站部署到nginx之后,网页可以打开,但样式全都没有加载,浏览器里按下F12键,console有报错:Resource interpreted as Stylesheet but transferred with MIME type text/plain文件已经被找到,但是解析的格式不正确。原因需要引入mime.types这个文件,如果不指定mime type...

2020-01-10 15:58:12 1785

转载 IDEA中导入多module的Maven项目无法识别module的解决办法

首先举个栗子这是正常的多module工程(spring cloud项目)正常工程.png这是导入出现问题的多module工程导入出现问题的工程.png原因:出现该问题,是由于打开工程的时候IDEA只编译了最外层的pom.xml文件,而内部的各个module未被Maven自动检索到(各module的pom.xml文件未被编译)。解决方案:点击IDEA最右侧边栏...

2019-12-20 11:12:03 11796 2

原创 Spring Boot 打印初始化了哪些bean

public class Application { public static void main(String[] args) { SpringApplication.run(Application.class, args); } @Bean public CommandLineRunner commandLineRunner(App...

2019-05-15 11:14:32 1502

原创 ModuleNotFoundError: No module named 'ConfigParser'

问题:安装mysql-utilities 错误ModuleNotFoundError: No module named 'ConfigParser'pip3 install mysql-utilities Collecting mysql-utilities  Downloading https://files.pythonhosted.org/packages/b3/79/137e4...

2018-08-27 15:10:43 19867 1

原创 redis面试题总结

根据自己的学习和面试总结的,纯手工打,尽量简洁易懂,排版不好,请见谅1.redis支持的数据结构  string list hash set zset2.redis线程模型redis是单线程实现。3.redis 提供的持久机制redis 支持rdb和afo两种持久机制。rdb是定时的持久机制,宕机有可能会存在数据丢失。aof是基于操作日志的持久机制。另外如果使用了rdb备份机制,每个实例使用2G内...

2018-05-20 19:42:40 3222

原创 raft选举协议

英文动画演示raft:http://thesecretlivesofdata.com/raft/

2018-05-20 11:07:50 786

原创 linux下tomcat的shutdown命令杀不死进程

现象在Linux下执行shutdown.sh 或者 catalina.sh stop,然后查看tomcat进程发现没有完全关闭;网上查找出来解释:一般造成这种原因是因为项目中有非守护线程的存在(关于守护线程阅读下面文章)java的守护线程与非守护线程JAVA并发编程——守护线程(Daemon Thread) 两个思路,1、从程序上根本解决。 2、从tomcat上解决一: 从程序上解决(要求较高,项...

2018-03-29 16:06:53 430

原创 Error creating bean with name 'org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfigurati

2018-01-16 15:56:14.104 [main] [] [] ERROR o.s.boot.SpringApplication - Application startup failedorg.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.springfra

2018-01-16 17:59:51 26370 3

原创 MySQL 事物详解

事务(Transaction)是数据库区别于文件系统的重要特性之一,事务会把数据库从一种一致性状态转换为另一种一致性状态。在数据库提交时,可以确保要么所有修改都已保存,要么所有修改都不保存。事务的ACID特性事务必须同时满足ACID的特性:原子性(Atomicity)。事务中的所有操作要么全部执行成功,要么全部取消。一致性(Consistency)。事务开始之前和结束之后,

2017-12-14 20:23:09 335

原创 MySQL锁(1) 一致性非锁定读和一致性锁定读

一致性非锁定读(consistent nonlocking read)        一致性非锁定读是值InnoDB存储引擎通过多版本控制(multi versioning)的方式来读取当前执行时间数据库中的数据。如果被读的数据行被加了排他锁,在读取这行数据的时候并不会等待锁释放,而是读取该行的一个快照数据。 之所以称为非锁定读,因为不需要等待被访问行的X锁的释放。快照数据是指改行之前

2017-12-08 15:50:57 1549

原创 布隆过滤器(Bloom Filter)原理以及应用

布隆过滤器(Bloom Filter)是1970年由布隆提出的。它实际上是一个很长的二进制向量和一系列随机映射函数。布隆过滤器可以用于检索一个元素是否在一个集合中。它的优点是空间效率和查询时间都远远超过一般的算法,缺点是有一定的误识别率和删除困难。hash原理Hash (哈希,或者散列)函数在计算机领域,尤其是数据快速查找领域,加密领域用的极广。其作用是将一个大的数据集

2017-10-25 00:15:18 8673 2

原创 jetty maven https(SSL)配置

1.生成keystorekeytool -genkey -keystore "D:\cas\4.2\tlk_tomcat.keystore" -alias tlkTomcat -keyalg RSA密钥库口令和密钥密码我设置的tlktest,一会maven pom.xml配置需要使用2.配置pox.xml org.mortbay.jetty jetty-

2017-10-23 19:58:20 1802

原创 sso 单点登录cas使用(3): cas 4.2.7 服务端自定义登录样式

1、让cas服务端的页面默认使用中文cas.properties 的配置文件改为locale.default=zh_CN2、定制我们自己想要的登录页面2.1、修改cas.properties配置文件    在cas.properties中增加配置项:#让cas使用我们想要的页面cas.themeResolver.pathprefix=/WEB-INF/mryx-view

2017-10-19 20:47:23 1585

原创 sso 单点登录cas使用(2): cas 4.2.7 maven cas-overlay服务端数据库配置

前言正式使用cas,我们不能继续从配置文件中读取配置信息,需要从数据库中读取信息来进行用户验证。创建用户表,并插入数据CREATE TABLE `t_user` ( `id` bigint(15) NOT NULL COMMENT'主键', `account` varchar(30) DEFAULT NULL COMMENT'账号', `

2017-10-18 14:50:25 1794 1

原创 sso 单点登录cas使用(1): cas 4.2.7 maven cas-overlay部署服务端

什么是maven的overlay?overlay可以把多个项目war合并成为一个项目,并且如果项目存在同名文件,那么主项目中的文件将覆盖掉其他项目的同名文件。cas 提供了cas-overlay-template,我们可以直接下载下来在上面修改使用。下载cas-overlay-template-4.2地址:https://github.com/apereo/ca

2017-10-18 10:50:04 3470 5

原创 MySQL key_len 大小的计算

背景:      当用Explain查看SQL的执行计划时,里面有列显示了 key_len 的值,根据这个值可以判断索引的长度,在组合索引里面可以更清楚的了解到了哪部分字段使用到了索引。环境:CREATE TABLE `tmp_0612` ( `id` int(11) NOT NULL, `name` varchar(10) DEFAULT NULL, `age`

2017-09-20 21:19:29 254

转载 Dubbo超时机制导致的雪崩连接

Dubbo超时机制导致的雪崩连接2016-04-03 01:44 9333人阅读 评论(0)收藏举报2014-11-09  categories:资料  author:iigadmin来源:http://www.taobaotest.com/blogs/2535BUG作者:许晓Bug标题:Dubbo超时机制导致的雪崩连接

2017-09-12 15:04:00 462

原创 Java GC算法以及垃圾收集器

概述jvm中,程序计数器、虚拟机栈、本地方法栈随线程而生,随线程而灭;栈中的栈帧随着方法的进入和退出而有条不紊地进行着出栈和入栈操作。每一个栈帧中分配多少内存基本上是在类结构确定下来时就已知,方法结束或者线程结束时,内存就自然跟随真回收了。因此垃圾回收主要集中在Java堆和方法区,在程序运行期间,这部分内存的分配和使用都是动态的。如何判断对象是否存活引用计数算法:给对象添加一个引用计数

2017-09-11 15:38:27 375

原创 mysql blob导出为16进制问题解决

问题:remark 字段类型为:`remark` text COLLATE utf8_bin NOT NULL COMMENT '备注'导出结果为16进制,如下图:解决办法:select id, group_concat(remark) from table group by id;

2017-09-08 15:51:28 4498 1

原创 Ubuntu下jmap,jinfo Can't attach to the process

1.错误Error attaching to process: sun.jvm.hotspot.debugger.DebuggerException: Can't attach to the processsun.jvm.hotspot.debugger.DebuggerException: sun.jvm.hotspot.debugger.DebuggerException: Can't

2017-09-06 15:34:26 1105

原创 Java内存区域与内存溢出异常(jdk 6,7,8)

运行时数据区域Java虚拟机在执行Java程序的过程中会把它关联的内存划分为若干个不同的数据区域。这些区域都有各自的用途,以及创建和销毁的时间,有的区域随着虚拟机进程的启动而存在,有些区域则依赖用户线程的启动和结束而建立和销毁。根据《Java虚拟机规范(Java SE 7版)》的规定,Java虚拟机所管理的内存将会包括以下几个运行时的数据区域。如图所示:1.1程

2017-09-04 21:09:58 4382 2

原创 mysql性能优化笔记(1) 建表原则和字段设计

建表原则:1.表必须定义主键,默认为ID,整型自增。2.ID字段作为自增主键,禁止在非事务内作为上下文作为条件进行数据传递,禁止非自增非数字类型主键设计出现。3.禁止使用外键,触发器,存储过程4.常用字段与不常用字段分离5.表默认使用InnoDB,国内表字符集默认使用gbk,国际默认使用utf8的表6.单表一到两年内数据量超过500W或者数据容量超过10G考虑分表,且需

2017-08-27 11:40:45 616

转载 Java动态代理机制详解(JDK 和CGLIB,Javassist,ASM)

class文件简介及加载     Java编译器编译好Java文件之后,产生.class 文件在磁盘中。这种class文件是二进制文件,内容是只有JVM虚拟机能够识别的机器码。JVM虚拟机读取字节码文件,取出二进制数据,加载到内存中,解析.class 文件内的信息,生成对应的 Class对象:      class字节码文件是根据JVM虚拟机规范中规定的字节码组

2017-08-18 11:38:47 379

原创 Java代理(三) JDK动态代理

定义动态代理类的源码是在程序运行期间由JVM根据反射等机制动态的生成,所以不存在代理类的字节码文件。代理类和委托类的关系是在程序运行时确定。实现方式在java的动态代理机制中,有两个重要的类或接口,一个是 InvocationHandler(Interface)、另一个则是 Proxy(Class),这一个类和接口是实现我们动态代理所必须用到的。每一个动态代

2017-08-18 11:26:22 217

原创 Java代理(二) 静态代理

package com.tlk.proxy;/** * java静态代理 * 步骤: * 1.定义委托类Subject * 2.定义实现类RealSubject * 3.定义代理类Proxy * 4.客户端调用 * Created by tanlk on 2017/8/16 16:33. */public class ProxyTest { interface Su

2017-08-16 17:00:44 167

原创 Java代理(一) 背景介绍

概念为某个对象提供一个代理,以控制对这个对象的访问。 代理类和委托类有共同的父类或父接口,这样在任何使用委托类对象的地方都可以用代理对象替代。代理类负责请求的预处理、过滤、将请求分派给委托类处理、以及委托类执行完请求后的后续处理。为了保持行为的一致性,代理类和委托类通常会实现相同的接口,所以在访问者看来两者没有丝毫的区别。通过代理类这中间一层,能有效控制对委托类对象的直接访问,也可以很

2017-08-16 16:58:40 219

原创 dubbo-monitor监控安装

1、从github上下载dubbo源码进行编译     下载地址为:https://github.com/alibaba/dubbo.git2、编译源码命令:首先进入~/dubbo,运行命令mvn clean install -Dmaven.test.skip编译完后dubbo\dubbo-simple\dubbo-monitor-simple\target有dubbo-m

2017-08-15 18:09:57 374

原创 Zookeeper学习(七):ZooKeeper 实现命名服务(系统唯一ID)

系统唯一ID生成分案有很多种,例如:数据库auto_increment,UUID,Redis生成ID(Redis原子操作INCR和INCRBY),Twiitter的snowflake算法,ZooKeeper生成ID,MongoDb的ObjectId,下面我们就看一下ZooKeeper实现分布式系统唯一ID。具体步骤:1.创建持久的顺序节点              2.获取返回的节

2017-08-13 17:29:06 3742

原创 ZooKeeper 学习 (六) ZooKeeper实现数据发布订阅(即配置中心)

数据发布/订阅(Publish/Subscribe)系统,即所谓的配置中心,顾名思义就是发布者将数据发布到ZooKeeper的一个或一系列节点上,供订阅者进行数据订阅,进而达到动态获取数据的目的,实现配置信息的集中式管理和数据的动态更新。发布/订阅系统一般有两种设计模式,分别是推(Push)模式和拉(Pull)模式。ZooKeeper采用的是推拉相结合的方式:客户端向服务端注册自己需要

2017-08-13 16:13:07 1131

原创 java SPI 机制

1 SPI机制简介SPI的全名为Service Provider Interface.大多数开发人员可能不熟悉,因为这个是针对厂商或者插件的。在java.util.ServiceLoader的文档里有比较详细的介绍。简单的总结下java spi机制的思想。我们系统里抽象的各个模块,往往有很多不同的实现方案,比如日志模块的方案,xml解析模块、jdbc模块的方案等。面向的对象的设计里,我们一般推

2017-08-10 18:37:03 244

原创 ZooKeeper 学习 (五) 开源ZkClient操作ZooKeeper

我们主要从创建会话、创建节点、读取数据、更新数据、删除节点和检查节点是否存在等方面来节点如何使用ZkClient操作ZooKeeper,具体代码如下,鉴于方便,代码写到了一个类里面,虽然不易读,但所有内容都已包括。package com.tlk.zk.chapter5.zkclient;import java.util.HashMap;import java.util.List;imp

2017-08-07 23:31:37 577

原创 一致性hash算法介绍以及Java实现

一致性哈希算法(Consistent Hashing)最早在论文《Consistent Hashing and Random Trees: Distributed Caching Protocols for Relieving Hot Spots on the World Wide Web》中被提出。简单来说,一致性哈希将整个哈希值空间组织成一个虚拟的圆环,如假设某哈希函数H的值空间为0-2^

2017-08-04 16:42:29 2090

原创 ZooKeeper 学习 (四) ZooKeeper Java客户端API使用

1.创建会话import java.io.IOException;import java.util.concurrent.CountDownLatch;import org.apache.zookeeper.WatchedEvent;import org.apache.zookeeper.Watcher;import org.apache.zookeeper.Watcher.Even

2017-08-03 22:52:42 413

原创 ZooKeeper 学习 (三) 客户端zkCli.sh以及相关操作命令

zkCli.sh./zkCli.sh                                      连接本地服务器./zkCli.sh -server ip:port              连接指定IP地址服务器创建节点(create)create [-s] [-e] path data acl-s或-e分别指定节点特性:顺序或临时节点,默认情况

2017-08-02 22:14:28 1914

原创 ZooKeeper 学习 (二) ZAB协议简单总结

ZooKeeper并没有完全采用Paxos算法,而是使用了一种称为ZooKeeper Atomic Broadcast(ZAB,ZooKeeper原子消息广播协议)的协议作为其数据一致性的核心算法。包括两种基本的模式,分别是崩溃恢复和消息广播。消息广播    ZAB协议的消息广播过程使用的是一个原子广播协议,类似于一个二阶段提交过程。ZAB协议的二阶段提交过程中

2017-08-01 00:29:05 346

原创 Java性能调优工具(一) Linux命令行工具(top sar vmstat iostat)

(1)top命令第一部分    第一行:任务队列信息,等同于uptime命令    第二行:进程统计信息    第三行:CPU统计信息       us(用户空间CPU占用率)、sy(内核空间CPU占用率)    第四行:依次表示物理内存总量、已使用的物理内存、空闲物理内存、内核缓冲使用量    第五航:交换区总量、空闲交换区大小、缓冲交换区大小第二部分

2017-07-28 15:43:17 491

原创 ZooKeeper 学习 (一) ZooKeeper的基本概念

简单介绍ZooKeeper的几个核心概念,后边会深入讨论集群角色    Leader:为客户端提供读和写服务    Follower:提供读服务,参与Leader选举    Observer : 提供读服务,但不参与Leader选举会话(Session)    指客户端会话,客户端和服务器之间TCP长连接,通过心跳检测与服务器保持有效会话

2017-07-27 23:47:25 339

原创 lock tryLock lockinterruptibly 区别

ReentrantLock 锁有好几种,除了常用的lock ,tryLock ,其中有个lockInterruptibly 。1)lock(), 拿不到lock就不罢休,不然线程就一直block。 比较无赖的做法。2)tryLock(),马上返回,拿到lock就返回true,不然返回false。 比较潇洒的做法。带时间限制的tryLock(),拿不到lock,就等一

2017-07-27 18:03:32 579

原创 jstack 生成文件中的线程介绍(JVM 内部运行线程)

前段时间因为系统代码问题,造成性能瓶颈,于是就dump了一份stack出来进行分析。  stack 里面线程非常多,排查起来需要一定的经验,所以,对它们有一定了解,可以提高排查问题的效率。以下是从网上找的一些总结,有什么问题或者补充欢迎留言线程所属说明Attach ListenerJVM          Attach Liste

2017-07-27 16:21:34 717

原创 ThreadPoolExecutor 扩展

ThreadPoolExecutor 也是一个可以扩展的线程池,它提供了beforeExecute()、afterExecute()、和terminated()3个接口对线程池进行控制。即开始执行前,执行完成后,终止后具体扩展代码如下:12345678910111

2017-07-26 21:01:05 281

软考高级系统架构设计师历年真题,含详细答案

软考高级系统架构设计师历年真题,含详细答案

2024-03-21

kettle 抽取达梦数据库文档说明以及dm8驱动jar包

kettle抽取达梦数据库文档说明以及dm8驱动jar包。 大数据同步

2024-03-21

cas-overlay(MD5 数据用户校验).zip

sso 单点登录cas使用(2): cas 4.2.7 maven cas-overlay服务端数据库配置

2017-10-18

基于jeesite的springmvv mybatis shiro html5项目

基于jeesite的springmvv mybatis shiro html5项目

2017-02-16

java并发编程的艺术(方腾飞)完整版

java并发编程的艺术(方腾飞)完整版

2016-09-26

java并发编程实战pdf及源码

java并发编程实战pdf及源码

2016-05-17

程序员常用javascript特效

程序员常用javascript特效,里面说不定有你想要的特效!

2011-12-07

空空如也

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

TA关注的人

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