自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(120)
  • 资源 (102)
  • 收藏
  • 关注

原创 Spring boot 代码动态注册Scheduled

【代码】Spring boot 代码动态注册Scheduled。

2023-04-09 11:59:36 132

原创 Seata 分布式事务

2PC分布式事务参考https://blog.csdn.net/hfmbook/article/details/120173076Seata 分布式事务和2PC的区别,2PC在最后提交阶段可能失败,失败了 其他服务事务执行成功,可能存在数据不一致情况。Seata在这里做了一个反向补偿。当某个服务提交失败,其他都提交成功情况,seata会提交一个执行新的sql将数据 回滚到原来的样子。AT 模式一阶段 prepare 行为:在本地事务中,一并提交业务数据更新和相应回滚日志记录。二阶段 commi

2021-09-08 20:11:53 916

原创 spring boot dynamic datasource

定义数据源的KEYpackage io.app.dynamic;public enum DataSourceKey { DEFAULT,ORDER // 这里可以多个,如果数据源是完全动态的,可以不使用枚举,存在数据库里面。或者另外一种规则,可以完全自定义}定义Holder当前使用数据源的KEYpackage io.app.dynamic;import java.util.ArrayList;import java.util.List; /*如果需要调用某个数据库,需要设置 Dy

2021-09-08 19:43:47 825

原创 分布式事务2PC、3PC过程

2PC1PC阶段这里向协调者注册有事务服务,通常是使用MQ,注册成功后 执行本地事务。提交和回滚是2PC阶段2PC阶段。2PC阶段是提交。首先进行预处理(验证SQL语法,值的范围),然后想协调者commit,协调者返回成功,在执行本地事务。这时候大家能够发现一个问题。这里2PC是弱分布式事务,不不能保证两个事务能够同事执行成功,比如 订单服务的 5commit成功, 支付服务的 5commit失败。那么 订单服务的 事务将不会回滚。发生的概率很低。3PC1PC阶段这里与2PC对比,多了一

2021-09-08 10:05:11 313

原创 Java使用HotSpotVirtualMachine和JMXServiceURL获取JVM进程的内存信息

package com.jvm;import com.sun.tools.attach.VirtualMachine;import org.apache.commons.io.IOUtils;import org.apache.commons.lang3.StringUtils;import sun.tools.attach.*;import javax.management.MBeanServerConnection;import javax.management.remote.JMXCo

2021-07-21 08:25:04 452

原创 高级面试题--SpringBoot启动流程解析

写在前面:由于该系统是底层系统,以微服务形式对外暴露dubbo服务,所以本流程中SpringBoot不基于jetty或者tomcat等容器启动方式发布服务,而是以执行程序方式启动来发布(参考下图keepRunning方法)。本文以调试一个实际的SpringBoot启动程序为例,参考流程中主要类类图,来分析其启动逻辑和自动化配置原理。总览:上图为SpringBoot启动结构图,我们发现启动流程...

2019-09-03 09:13:32 35063 18

原创 阿里云主机没有swap, 来我们手动给他加一个吧

查看系统当前的分区情况:free -m可以清晰看到,swap total显示未0B,那接下来开始 创建swap分区吧block_size 是swap分区的大小,count 是分区的个数dd if=/dev/zero of=/whatever/swap bs=block_size count=number_of_block设置交换分区文件mkswap /data/swap加入...

2019-08-28 11:46:58 428

原创 Spring Boot面试通关

一.AOP 四个步骤AOP是spring面试经常问的面试题,很多人都卡在这里,我使用简单的三个步骤讲解AOP,更方便记忆1.1创建代理对象相关类:1、AbstractAutowireCapableBeanFactory2、AbstractAutoProxyCreator3、AbstractAdvisorAutoProxyCreator4、AnnotationAwareOrderCom...

2019-08-14 18:15:56 210

原创 redis+lua分布式高并发--限流算法

lua脚本 limit.lualocal key = KEYS[1]local limit = tonumber(ARGV[1])local current = tonumber(redis.call('get', key) or '0')if current + 1 > limit then return 0else redis.call("INCRBY", key,"1...

2019-08-05 13:57:09 751

原创 redis高性能分布式锁

<dependency> <groupId>org.redisson</groupId> <artifactId>redisson</artifactId> <version>2.11.5</version></dependency>import org.redisson.Redis...

2019-08-02 17:18:05 313

原创 zookeepr 实现分布式锁

引入jar包<dependency> <groupId>org.apache.curator</groupId> <artifactId>curator-framework</artifactId> <version>4.0.0</version&...

2019-07-15 19:29:08 133

原创 Redis-ShardedJedis

redis 通过key进行shard ,将key放到不同的 redis缓存数据库上public class RedisApplication { public static final Pattern KEY_TAG_PATTERN = Pattern.compile("(.{1})"); public static ShardedJedisPool jedisPool(){...

2019-07-04 15:53:01 192

原创 架构师技术选型 -- 我们如何选择MQ

参与选型的MQactivemq,RocketMQ,rabbitmqactivemq单机吞吐量:万级topic数量都吞吐量的影响:  时效性:ms级  可用性:高,基于主从架构实现高可用性  消息可靠性:有较低的概率丢失数据  功能支持:MQ领域的功能极其完备  总结:    非常成熟,功能强大,在早些年业内大量的公司以及项目中都有应用    偶尔会有较低概率丢失消息    ...

2019-06-04 17:49:43 1169

原创 spring-boot应用之Kubernetes微服务实践

一、Kubernetes 安装简介:kubernetes 是什么? 首先,它是一个全新的基于容器技术的分部署架构领先方案。这个方法虽然还很新,但它是谷歌十几年依赖大规模应用容器技术的经验积累和升华的一个重要成果。确切的说Kubernetes是谷歌严格保密十几年的秘密武器--Brog的一个开源版本。1.1 机器配置节点名称 hostname 组件 ip...

2019-03-26 19:41:15 1606

原创 微服务-调用连选型报告

什么是调用链一个业务功能可能需要多个服务协作才能实现,一个请求到达服务A,服务A需要依赖服务B,服务B又依赖服务C,甚至C仍需依赖其他服务,形成一个调用链条,即调用链。微服务为什么要使用调用链微服务是一个特别复杂的系统,微服务存在一下几个缺点:出现问题后,定位困难,需要对整个调用链路有个完善的监控链路复杂,需要清晰的链路图谱反映服务之间的依赖、调用关系整体系统性能及运行情况,需要明...

2019-01-02 10:55:35 337

原创 Docker-swarm 集群

集群列表 主机名 IP地址 备注 k8s1 192.168.18.111 主节点 k8s2 192.168.18.112 node1配置docker启动参数vim /usr/lib/systemd/system/docker.service 只需要修改复制出来的这一行,其他的不要做任何改变,节点每台机器都要做该修改E...

2018-04-14 20:14:17 423

原创 ajax跨域解决方案

1、spring 解决跨域方案1 JSONP参考该文档: http://hpgary.iteye.com/blog/2389640 2、spring 解决跨域方案2服务器端resetful接口类或者方法上加注解 @CrossOrigin,一键轻松实现跨域,类写法如下:@RestController@CrossOriginpublic class TestController ...

2018-04-08 20:27:54 386

原创 docker-compose 快速入门

简介Compose是定义和运行多容器Docker应用程序的工具安装 dockerhttps://blog.csdn.net/hfmbook/article/details/70209155安装 docker-compose根据不同的操作系统下载不同的软件 https://github.com/docker/compose/releases/ ,下载下来 后更改文件名为...

2018-03-26 16:13:17 861

原创 Mysql-GTID复制跳过错误的方法

gtid复制出现错误是个比较麻烦的问题,需要人工处理,如果直接跳过可能导致数据丢失或者数据不一致的情况,所以建议人工处理。下面我来介绍Mysql gtid复制出现错误的情况,按照下来方式处理前必需找出错误的sql和错误的数据,处理完成前将数据修改成为一致数据。1、数据库版本mysql &gt;select version()+-----------------------------...

2018-03-01 21:41:26 1838

原创 Mysql 基于GTID的复制

一、什么是GTIDGTID(GlobalTransaction ID)是Mysql5.6开始的一种新的主从复制方式,其实现方式和基于日志点的复制存在很大差异。原来基于日志点的复制方式中,从db链接主db从哪个日志文件的偏移量开始增量同步,如果偏移量设置不对就可能造成遗漏或者重复同步数据。GTID复制中,从库会讲主库上所有没有在从库上执行的事务执行一次,并且保证只执行一次。 说了这么多到底什么...

2018-02-28 09:51:35 567

原创 数据库中间件---Mycat配置

一、配置文件1.1、schema.xmlschema.xml 作为 MyCat 中重要的配置文件之一,管理着 MyCat 的逻辑库、表、分片规则、 DataNode 以及 DataSource。弄懂这些配置,是正确使用 MyCat 的前提。这里就一层层对该文件进行解析。1.1.1 熟悉schema.xmlschema 节点用于配置Mycat逻辑库,这里可以拥有多个逻辑库,...

2018-02-01 11:18:16 710

原创 数据库中间件---Mycat入门

入门宣言:不怕从零开始,只怕从未开始。1、Mycat简介(摘自Mycat权威指南 http://www.mycat.io )2013 年阿里的 Cobar 在社区使用过程中发现存在一些比较严重的问题,及其使用限制,经过 Mycat 发 人第一次改良,第一代改良版——Mycat 诞生。 Mycat 开源以后,一些 Cobar 的用户参与了 Mycat 的 开发,最终 Mycat 发展

2018-01-31 17:55:01 3103 1

原创 Java缓存技术-google guava cache

一、简介guava和ehcache一样也是本地缓存,虽然都是本地缓存,但是有着不同的使用场景。guava是谷歌提供的一个Java工具包,而Guava的Cache部分提供了一套分词完善的本地存储缓存机制,在Guave之前ConcurrentMap,因为能友好的支持并发而经常被用作本地缓存,但它毕竟不具备缓存的一些特性,比如缓存过期,缓存数据加载和刷新等。 二、使用场景1、原意消耗一些

2018-01-09 07:46:57 4617

原创 Java 动态加载jar包

最近在研发一款maven插件一键生成增删改查的插件,需要动态加载 数据库驱动包到内存中import java.io.File;import java.io.IOException;import java.lang.reflect.Field;import java.net.URL;import java.net.URLClassLoader;import org.apache.commons

2017-05-27 16:17:58 3199

原创 Linux dns-server 搭建

安装软件yum install -y bind bind-utils新增配置假如配置 www.bidcloud.local 到 12.12.12.12 上 新增配置文件 /var/named/bigcloud.local.zone$TTL 1D@ IN SOA ns.bigcloud.local. admin.bigcloud.local. ( 201

2017-05-20 21:30:48 960 1

原创 Activemq 消息服务

1、简介ActiveMQ 自己看百科2、下载安装 去 apache 官网下载,http://archive.apache.org/dist/activemq/ 3、安装a、解压tar -xvf apache-activemq-5.14.4-bin.tar.gz b、拷贝到/usr/local下mv apache-activemq-5.14.4 /usr/local/

2017-04-17 11:29:53 474

原创 Java大端字节和小端字节

1、什么是大端和小端1) Little-Endian就是低位字节排放在内存的低地址端,高位字节排放在内存的高地址端。2) Big-Endian就是高位字节排放在内存的低地址端,低位字节排放在内存的高地址端。举例说明:例如数字0x12345678在内存中表现形式为:1)大端模式:低地址 -----------------> 高地址0x12  |  0x34  |  0x56  |  

2017-04-17 11:29:47 8442

原创 Mysql 事务

SQL标准定义了4类隔离级别,包括了一些具体规则,用来限定事务内外的哪些改变是可见的,哪些是不可见的。低级别的隔离级一般支持更高的并发处理,并拥有更低的系统开销。一、Read Uncommitted(读取未提交内容)在该隔离级别,所有事务都可以看到其他未提交事务的执行结果。本隔离级别很少用于实际应用,因为它的性能也不比其他级别好多少。读取未提交的数据,也被称之为脏读(Dirty Read)

2017-04-17 11:29:40 2010 2

原创 Spring Boot 动态创建Bean

1、通过注解@Import导入方式创建a、新建MyImportBeanDefinitionRegistrar注册中心import org.springframework.beans.factory.support.BeanDefinitionRegistry;import org.springframework.beans.factory.support.GenericBeanDefi

2017-04-17 11:29:33 7150

原创 Java EhCache

1、配置文件ehcache-setting.xml <!--缓存配置name:缓存名称。 maxElementsInMemory:缓存最大个数。 eternal:对象是否永久有效,一但设置了,timeout将不起作用。 timeToIdleSeconds:设置对象在失效前的允许闲置时间(单位:秒)。仅当eternal=false对象不是永久有效时使用,可选属

2017-04-17 11:29:24 424

原创 Linux安装svn

1、查找svn安装的软件 yum list | grep subversion 安装红色区域的那一个即可 安装命令如下:  yum install -y subversion 2、查找版本号svnserve --version 3、创建仓库目录 可自定义mkdir -p /home/svn/svnfile 4、初始化仓库svnadmin create

2017-04-17 11:29:18 223

原创 ansible 安装 httpd-2.4.25 启动httpd

一、下载httpd, apr, apr-util 源码包httpd 源码包http://httpd.apache.org/download.cgi#apache24 apr和apr-util源码包http://apr.apache.org/download.cgi 二、编译httpd 1、解压三个软件包,将apr和apt-util解压放入httpd-2.4.25/srcli

2017-04-17 11:29:10 1396

原创 Spring security 安全设置

1、CSRF攻击CSRF 又称跨域请求伪造,攻击方通过伪造用户请求访问受信任站点。   举个例子用户通过表单发送请求到银行网站,银行网站获取请求参 数后对用户账户做出更改。在用户没有退出银行网站情况 下,访问了攻击网站,攻击网站中有一段跨域访问的代码, 可能自动触发也可能点击提交按钮,访问的url正是银行网 站接受表单的url。因为都来自于用户的浏览器端,银行将 请求看作是用户发起

2017-04-17 11:29:02 4363

原创 Spring Boot Mvc 单元测试

1、开发 都是需要保存测试代码的,mvc也不例外,都需要写测试代码,下面写了一个简单的mvc 但愿测试的代码. import org.junit.Test;import org.junit.runner.RunWith;import org.springframework.beans.factory.annotation.Autowired;import org.sprin

2017-04-17 11:28:55 1420

原创 spring boot 采用https启动

1、生成密钥文件,keytool 是java的一个命令  keytool -genkey -alias hpgary -storetype PKCS12 -keyalg RSA -keysize 2048 -keystore keystore.p12 -validity 3650   2、放到spring boot项目的 resource源码包下    3、修改配置文件 ap

2017-04-17 11:28:47 1331

原创 初探Spring Security

一、简介Spring Security是Spring社区的一个顶级项目,也是 Spring Boot官方推荐使用的Security框架。除了常规的 Authentication和Authorization之外,Spring Security还 提供了诸如ACLs,LDAP,JAAS,CAS等高级特性以满足复杂场景下的安全需求二、理解1、从AAA说起【中文名称】:鉴权、授权和计费

2017-04-17 11:28:41 1022

原创 docker && dockerfile

# docker 一、简介Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。  二、安装 # Centos 7yum install -y docker #启动/etc/init.d/docker start  三、日常操作#a、下载镜...

2017-04-17 11:28:33 519

原创 Linux-NFS

NFS 1、简介NFS(Network File System)即网络文件系统,是FreeBSD支持的文件系统中的一种,它允许网络中的计算机之间通过TCP/IP网络共享资源。在NFS的应用中,本地NFS的客户端应用可以透明地读写位于远端NFS服务器上的文件,就像访问本地文件一样。 Ubuntu系统搭建nfs服务器安装 nfs-kernel-server apt-get

2017-04-17 11:28:22 244

原创 Java Benchmark 基准测试

import java.util.Arrays;import java.util.concurrent.TimeUnit;import org.openjdk.jmh.annotations.Benchmark;import org.openjdk.jmh.annotations.BenchmarkMode;import org.openjdk.jmh.annotations.

2017-04-17 11:28:13 8788 1

原创 keepalived 高可用,监控web服务器状态

一、keepalived 高可用,监控web服务器状态4.1 安装 两台机器,一组一丛 yum install -y keepalived 主机器配置,虚拟ip为:192.168.1.100vrrp_instance VI_1 { state MASTER # 备用服务器上为BACKUP interface eth0 virtual_rout

2017-04-17 11:28:05 1598

html5小游戏-中国象棋

html5 小游戏 中国象棋,运行浏览器许支持html5

2014-07-22

html5小游戏-超级玛丽

html5小游戏-超级玛丽,运行此游戏 浏览器需要支持html5

2014-07-22

jquery密码显示或者隐藏

jquery密码显示或者隐藏,能兼容各种主流浏览器

2014-07-22

jquery小游戏-台球

jquery小游戏-台球,兼容性好,能兼容各种主流浏览器

2014-07-22

jquery小游戏--美女拼图游戏

jquery小游戏--美女拼图游戏,兼容性好,将一张图拆分成多张图 可以拖动图片

2014-07-22

jquery消息提示窗口

能兼容 IE8、360、FireFox、Chrome、Safari、Opera、傲游、搜狗、世界之窗.等各种浏览器!代码调用简单 通用性好

2014-07-22

jquery日历控件

很好的jquery日历控件,兼容性非常好!能兼容谷歌,火狐,360 IE等各种浏览器!

2014-07-22

精简flash播放器

精简flash播放器,使用方便有有列表功能。播放界面可自定义

2014-07-17

跨平台的播放器

跨平台的播放器跨平台的播放器跨平台的播放器

2014-07-14

HTML5+实现网页版【捕鱼达人游戏】

HTML5+实现网页版【捕鱼达人游戏】,使用html5实现 是个非常好的学习例子

2014-06-26

javascript植物大战僵尸

javascript 植物 大战 僵尸,很实用

2014-06-26

1500个前端开发常用JavaScript特效

1500个前端开发常用JavaScript特效

2014-06-26

JavaScript放大镜插件magnifier实现图像放大效果

JavaScript放大镜插件magnifier实现图像放大效果

2014-06-26

HTML5音乐播放器效果非常漂亮

HTML5音乐播放器效果非常漂亮,不要犹豫 下载了绝对不吃亏!

2014-06-26

jquery实现选择图片预览,兼容各大主流浏览器

jquery实现选择图片预览功能,能兼容各大主流浏览器.如谷歌 IE 360 火狐等

2014-06-25

兼容性非常好的js日历控件

兼容性非常好的js日历控件,可以兼容IE,谷歌,火狐等主流浏览器!

2014-06-23

俄罗斯方块源代码,竟然只有60行,强悍

俄罗斯方块源代码,竟然只有60行

2014-06-14

javascript图片自动旋转

javascript图片自动旋转,打开可直接运行 代码简单易懂

2014-06-06

java 二维码带图片生成

java 二维码带图片生成,有解析二维码和生成二维码的代码,可以直接使用,很方便

2014-05-05

maven的认识和使用

maven的认识和使用,此文档对maven的pom.xml文件有详细的说明

2014-05-05

省市区地区数据5级.zip

全国5级省市区数据sql脚本,可以直接导入数据库,非常完成 在国家地区网站上爬

2019-07-12

bootstrap后台管理界面

bootstrap后台管理界面

2017-06-04

bootstrap-后台页面模版

bootstrap 后台模版 html5

2017-04-12

elasticsearch 5.2.2IK分词 编译jar包

elasticsearch ik分词,可以让搜索更精准

2017-03-24

spring boot + mybatis + maven 自动生成Mapping

maven 自动生成 mybatis 代码,

2017-02-16

hadoop snappy加密包

hadoop采用snappy加密时需要的压缩文件。解压文件覆盖${hadoop_home}/lib/native 下,然后重启hadoop相关服务, bin/hadoop checknative 检查是否成功

2015-12-16

linux 编译hadoop需要的protobuf文件

linux 编译hadoop需要的protobuf文件, hadoop编辑过程

2015-11-08

easyui典型的后台界面

easyui典型的后台界面,界面精美,实用性强。

2015-01-14

jQuery-单击文字或图片内容放大显示且含圆角投影效果

jQuery-单击文字或图片内容放大显示且含圆角投影效果,有特效哦。

2015-01-07

jQuery优酷TV首页图片轮播特效

jQuery优酷TV首页图片轮播特效. 使用非常简单。

2015-01-05

maven+spring+jdbc+mvc项目整合

maven+spring+jdbc+mvc项目整合,代码容易简单 有详细的说明。

2014-11-16

jelly验证码,不用写java代码

jelly 一句话搞定验证码,不用写java代码,便可随机验证码和风格。

2014-11-11

webSocket网页聊天

webSocket网页聊天,实现了html和服务器之间的实时交互.

2014-10-22

纯java htmlToPdf无水印

采用pd4md生成将html转换成为pdf文件,可以在线将jsp转换成为pdf。使用代码极为简单 有标准官方文档

2014-09-12

java xfire webService服务器端

java xfire webService服务器端,开发简单有文档说明。

2014-08-13

SQLite数据库工具

有两个工具,1个读取很方便 便于查询数据编辑数据等,一个可以导出excel数据,使用两款工具sqlite数据库基本可以想怎么玩怎么玩了

2014-08-12

js俄罗斯方块

一款简单的俄罗斯方块小游戏,支持键盘操作。思路清晰,结构清楚。

2014-08-12

安卓手机实现摇一摇功能

安卓手机实现摇一摇功能,代码简单通用易懂!

2014-08-05

新华书店-图书管理系统-使用jsp+jdbc

新华书店图片管理系统,使用jsp+jdbc开发,没有使用框架。比较适合初学者入门学习。也可以作为面试的项目

2014-07-30

安卓扫雷源代码

基于Android平台的扫雷游戏,有很详细的说明

2014-07-25

空空如也

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

TA关注的人

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