自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 Dubbo|注解/API/XML三种使用方式

使用Springboot+Zookeeper演示Dubbo的三种使用方式,官网有简单的介绍和示例,这里实战一番加深理解。1.准备工作1.1安装ZookeeperZookeeper(3.5.6版本)以单机形式在linux上安装,并通过命令开启服务。开启zk服务:zkServer.sh start开启zk服务查看zk服务:zkServer.sh status查看zk服务备注:Zookeeper在Linux上的安装可自行百度,这里不做过多介绍。不过注意,若启动过程发生“o

2020-08-29 16:20:06 860

转载 Dubbo——与SpringBoot整合的三种方式

https://blog.csdn.net/rubulai/article/details/84843975https://blog.csdn.net/qq_33404395/article/details/85046493

2020-08-29 16:12:55 593

转载 Springboot .properties或.yml配置文件读取pom.xml文件值

有时候配置文件需要读取pom文件配置<properties></properties>中间自定义属性值的时候可以用@@获取例:@package.parameter@然后还需要在pom.xml中打开过滤才可以  <build> <resources> <resource>          <!--指定resources插件处理哪个目录下的资源文件-->

2020-08-29 14:35:46 3225

转载 【Gerrit】Gerrit工作流程及使用手册

http://lipeng1667.github.io/2017/01/18/gerrit-guide/Update at 2019-08-04今天偶然看了下图片的流量,发现这篇讲Gerrit的流量好高,果然一看这篇blog的阅读量已经好几万了。为了不误导大家,我还是做下更新:本人已经很久不使用Gerrit了,现在用GitLab,界面非常美观,使用方法也很简单,而且也能满足之前的代码审核的要求。所以大家也都转去GitLab吧。关于GitLab的搭建和使用网上应该有很多介绍,这里就不做过多的介绍

2020-08-27 21:32:14 852

转载 BST删除操作(二叉搜索树)

BST的删除操作向来被认为难度很大,因为它不同于插入,定位到了那个该插入的位置选择左边/右边进行插入即可,而删除操作则需要分成以下三种情况进行讨论,删除难度从上到下依次递增:case1 叶子结点 case2 只有左子树/只有右子树的结点 case3 左子树和右子树都存在的结点其实case1,case2的难度系数都不大,重难点就是在于处理case3这种情况的结点case1 叶子结点直接将结点删除(树少了ta照样长得很茁壮,没有人会记得一片叶子的存在) case2 要删除的结点用一个指针进行保存

2020-08-27 20:31:40 755

转载 Quarkus框架入门之三:Quarkus与Spring Boot启动性能对比

开篇为什么要从安逸的Spring全家桶切换到Quarkus框架呢?Quarkus有什么优势?除了能够编译成Native Application外,还有什么值得我们使用它的吗?Spring启动优化是个大难题,有专门出书写Spring启动优化的,特别是启动是的Bean扫描,当应用达到一定规模后,启动非常慢,一般开发人员又不太敢屏蔽一些Bean的初始化(谁知道会导致什么未知问题)。Quarkus的一大优势就是快速启动,本文通过一个简单的应用对比以下传统Spring Boot项目与Quarkus项目的应用启

2020-08-23 10:33:39 2246 2

转载 Quarkus框架入门之二:依赖控制

前言Spring框架最开始被我熟知就是AOP和IOC,其中IOC在开发过程中更是被广泛使用,如果切换到一个新的框架没有了依赖注入和控制反转,那么可以说一夜回到解放前了。那么,Quarkus框架中有没有对应的功能呢?当然也有,Quarkus基于CDI规范提供了依赖注入的相关功能,本文将进行简单介绍。CDI-Contexts and Dependency Injection简单介绍CDI(Contexts and Dependency Injection),即上下文依赖注入,是J2EE6发布的

2020-08-23 10:25:03 1133

转载 Quarkus框架入门之一:Quarkus框架介绍及简单示例

开篇最近几年,Spring全家桶横扫其它Java框架,已然成为事实标准,单体应用使用Spring Framework+Spring Boot,服务治理Spring Cloud,生态完善,各种组件层出不穷。曾经还玩过JFinal和Nutz等国内的开发框架,但是仅仅是私下玩玩,实际工作过程中,还是Spring的天下,很少会选择其它小众的框架(谁知道会不会有填不完的大坑)。最近在社区闲逛的时候,发现一个Red Hat开源的Java框架Quarkus,定位为GraalVM和OpenJDK HotSpot量身定

2020-08-23 10:13:22 1864

转载 译文:在GraalVM中部署运行Spring Boot应用

GraalVM是一种高性能的多语言虚拟机,用于运行以JavaScript等基于LLVM的各种语言编写的应用程序。对于Java应用也可作为通常JVM的替代,它更具有性能优势。GraalVM带来的一个有趣功能是它能够在创建JVM应用程序的提前编译(create ahead-of-time:AOT)本机镜像,从而保证了更快的启动时间和更低的内存占用。在本文中,我们将重点介绍如何创建Spring应用的本机二进制文件。GraalVM Native Image 101Java应用程序使用编译为字节码javac。

2020-08-23 10:00:53 3074

转载 浅谈单链表与双链表的区别

昨天面试官面试的时候问了我一道关于链表的问题:情境如下面试官:请说一下链表跟数组的区别?我:数组静态分配内存,链表动态分配内存;数组在内存中连续,链表不连续;数组利用下标定位,时间复杂度为O(1),链表定位元素时间复杂度O(n);数组插入或删除元素的时间复杂度O(n),链表的时间复杂度O(1)。根据以上分析可得出数组和链表的优缺点如下:数组的优点随机访问性强(通过下标进行快速定位) 查找速度快数组的缺点插入和删除效率低(插入和删除需要移动数据) 可能浪费内存(因为是连续的.

2020-08-23 09:59:21 719

转载 raft 有关竞选超时 vs 心跳超时的疑惑

raft协议这两个超时时间是比较重要的,看着有些疑惑,集群刚启动的时候,心跳会超时,这时候follower是直接成为candidator么?还是还要在心跳超时的基础上等待一个竞选超时才变成 candidator? 成为candidator并且发送投票请求给follower,这个candidator这时候本身等待投票是有个超时的,这个超时也是竞选超时么? 心跳超时和竞选超时哪个大?心跳超时一般设置为多少? 集群已经正常运转leader刚挂掉的时候,我们是依靠心跳超时还是竞选超时来触发选举流程?.

2020-08-23 09:58:06 2148

转载 【mysql】关于checkpoint机制

一、简介思考一下这个场景:如果重做日志可以无限地增大,同时缓冲池也足够大,那么是不需要将缓冲池中页的新版本刷新回磁盘。因为当发生宕机时,完全可以通过重做日志来恢复整个数据库系统中的数据到宕机发生的时刻。但是这需要两个前提条件:1、缓冲池可以缓存数据库中所有的数据;2、重做日志可以无限增大因此Checkpoint(检查点)技术就诞生了,目的是解决以下几个问题:1、缩短数据库的恢复时间;2、缓冲池不够用时,将脏页刷新到磁盘;3、重做日志不可用时,刷新脏页。 当数据库发生宕机时,数据库不需要重做

2020-08-22 12:56:04 1047

转载 Paxos共识算法详解

在一个分布式系统中,由于节点故障、网络延迟等各种原因,根据CAP理论,我们只能保证一致性(Consistency)、可用性(Availability)、分区容错性(Partition Tolerance)中的两个。对于一致性要求高的系统,比如银行取款机,就会选择牺牲可用性,故障时拒绝服务。MongoDB、Redis、MapReduce使用这种方案。对于静态网站、实时性较弱的查询类数据库,会牺牲一致性,允许一段时间内不一致。简单分布式协议Gossip,数据库CouchDB、Cassandra使用这种方

2020-08-22 12:48:16 1348

转载 MySQL中binlog和redo log的一致性问题

MySQL中binlog和redo log的一致性问题本人目前在从事MySQL内核的开发和维护工作,以后会写一些MySQL的知识分享。关于MySQL中binlog和redo log的一致性问题,在网上看过一些文章,感觉不是特别清楚,所以自己总结后和大家分享一下,文章如有问题,欢迎指教。redo log 和 binlogredo log在MySQL InnoDB中,redo log是用来实现事务的持久性,即当事务在提交时,必须先将该事务的所有操作日志写到磁盘上的 redo log file进

2020-08-22 12:31:57 799

转载 TCP/IP 协议是如何保证数据可靠性的?

原文:网络基础:TCP协议-如何保证传输可靠性TCP协议传输的特点主要就是面向字节流、传输可靠、面向连接。这篇博客,我们就重点讨论一下TCP协议如何确保传输的可靠性的。确保传输可靠性的方式TCP协议保证数据传输可靠性的方式主要有:  1: 校验和  2: 序列号  3: 确认应答  4: 超时重传  5: 连接管理  6: 流量控制  7: 拥塞控制校验和计算方式:在数据传输的过程中,将发送的数据段都当做一个16位的整数。将这些整数加起来。并且前面的进位不能丢弃,补在后...

2020-08-22 11:29:09 1859

转载 mysql事务、redo日志、undo日志、checkpoint详解

转载:https://zhuanlan.zhihu.com/p/34650908事务: 说起mysql innodb存储引擎的事务,首先想到就是ACID(不知道的请google),数据库是如何做到ACID的呢?举个例子: 数据库数据存放的文件称为data file;日志文件称为log file;数据库数据是有缓存的,如果没有缓存,每次都写或者读物理disk,那性能就太低下了。数据库数据的缓存称为data buffer,日志(redo)缓存称为log buffer;既然数据库数据有缓...

2020-08-22 11:27:16 663

原创 Spring的@Bean只能放在@Configuration里面吗?

首先来看几个问题:- 1.@Bean方法只能定义在@Configuration里面吗?- 2.@Bean方法定义在@Configuration里面和定义在@Component里面有啥区别?- 3.@Bean方法可以是private static的吗?- 4.@Bean方法啥时候必须得定义成static的?先说一下答案:只要是@Component注解修饰的类里面都可以定义@Bean,并且都可以注册到Spring容器里面。其实不仅仅是@Component,只要是被@Component修饰的注

2020-08-19 17:09:54 2323 1

转载 使用MockMvc与SpringBootTest和使用WebMvcTest之间的区别

我是Spring Boot的新手,我正在尝试了解SpringBoot中的测试工作原理。我对以下两个代码片段之间的区别有点困惑:代码段1:@RunWith(SpringRunner.class)@WebMvcTest(HelloController.class)public class HelloControllerApplicationTest { @Autowired private MockMvc mvc; @Test public void ge

2020-08-18 15:04:16 2173

转载 SpringBoot Test及注解详解

一、Spring Boot Test介绍Spring Test与JUnit等其他测试框架结合起来,提供了便捷高效的测试手段。而Spring Boot Test 是在Spring Test之上的再次封装,增加了切片测试,增强了mock能力。整体上,Spring Boot Test支持的测试种类,大致可以分为如下三类:单元测试:一般面向方法,编写一般业务代码时,测试成本较大。涉及到的注解有@Test。 切片测试:一般面向难于测试的边界功能,介于单元测试和功能测试之间。涉及到的注解有@RunWith

2020-08-18 15:02:12 6859 1

转载 阿里云镜像市场mysql默认密码在哪里?如何修改?

问题说明小编在阿里云上够买了云服务器,因为省事,不想依次安装Java运行环境(jdk+mysql+tomcat),之前依次在linux安装jdk,mysql,tomcat还是比较繁琐的,为了节省时间,以后都采用镜像市场里面的。所以在镜像市场上找了免费的Java运行环境镜像:https://market.aliyun.com/products/53400005/cmjj014493.html?spm=5176.730005.productlist.d_cmjj014493.265b3524Heeo1

2020-08-17 19:00:26 1600

转载 阿里云-Java迁移+阿里云服务器ECS部署JavaWeb项目详细教程

一、https://developer.aliyun.com/article/703121二、https://developer.aliyun.com/article/703125三、https://developer.aliyun.com/article/707359阿里云服务器ECS部署JavaWeb项目详细教程这两天在阿里云买了个ECS服务器,研究了一下项目部署的一些流程,因为是第一次使用云服务器部署项目,过程中踩了很多坑,但是最终还是成功部署并跑了起来,在这里做个总结,出个比较详细的

2020-08-17 17:43:07 879

转载 二叉搜索树详解(Java实现)

二叉搜索树定义#二叉搜索树,是指一棵空树或者具有下列性质的二叉树:若任意节点的左子树不空,则左子树上所有节点的值均小于它的根节点的值; 若任意节点的右子树不空,则右子树上所有节点的值均大于它的根节点的值; 任意节点的左,右子树也分别为二叉搜索树; 没有键值相等的节点。用Java来表示二叉树#public class BinarySearchTree{ // 二叉搜索树类 private class Node { // 节点类 int data; .

2020-08-16 10:27:11 623 1

转载 2020-08-16

BST的删除操作向来被认为难度很大,因为它不同于插入,定位到了那个该插入的位置选择左边/右边进行插入即可,而删除操作则需要分成以下三种情况进行讨论,删除难度从上到下依次递增:case1 叶子结点 case2 只有左子树/只有右子树的结点 case3 左子树和右子树都存在的结点其实case1,case2的难度系数都不大,重难点就是在于处理case3这种情况的结点case1 叶子结点直接将结点删除(树少了ta照样长得很茁壮,没有人会记得一片叶子的存在) case2 要删除的结点用一个指针进行保存

2020-08-16 08:41:22 552

转载 分布式锁Redlock

分布式锁,存在无法解决的问题,一起回顾如下1、为了提高单redis的可用性,给master挂了一个从slave节点,因为主从复制是异步的,会出现不同客户端同时获取锁的情况客户端1在master中获得了锁, 在锁同步到slave之前,master宕机,还未来得及将锁同步到slave slave升级为master 客户端2在新的master中获取了锁这样客户端1、客户端2就同时持有了同一个资源的锁2、客户端1获取锁,因网络延时,客户端长时间阻塞,锁过期,这时客户端2获取锁,与此同时客户端1的

2020-08-12 10:08:59 785

转载 Redlock(redis分布式锁)原理分析

Redlock:全名叫做 Redis Distributed Lock;即使用redis实现的分布式锁;使用场景:多个服务间保证同一时刻同一时间段内同一用户只能有一个请求(防止关键业务出现并发攻击);官网文档地址如下:https://redis.io/topics/distlock这个锁的算法实现了多redis实例的情况,相对于单redis节点来说,优点在于 防止了 单节点故障造成整个服务停止运行的情况;并且在多节点中锁的设计,及多节点同时崩溃等各种意外情况有自己独特的设计方法;..

2020-08-11 23:20:10 699 1

转载 老板:kill -9 的原理都不知道就敢在线上执行?

相信很多程序员对于Linux系统都不陌生,即使自己的日常开发机器不是Linux,那么线上服务器也大部分都是的,所以,掌握常用的Linux命令也是程序员必备的技能。但是,怕就怕很多人对于部分命令只是一知半解,使用不当就能导致线上故障。前段时间,我们的线上应用报警,频繁FGC,需要紧急处理问题,于是有同事去线上重启机器(正常程序应该是先采集堆dump,然后再重启,方便排查是否存在内存泄露等问题)。但是在重启过程中,同事发现正常的重启命令应用无反应,然后尝试使用kill命令"杀"掉Java进程,但是仍

2020-08-11 21:22:54 590

转载 MySQL中的semi-join

http://www.linuxidc.com/Linux/2015-05/117523.htmhttps://cloud.tencent.com/developer/article/14277021. 背景介绍什么是semi-join?所谓的semi-join是指semi-join子查询。 当一张表在另一张表找到匹配的记录之后,半连接(semi-jion)返回第一张表中的记录。与条件连接相反,即使在右节点中找到几条匹配的记录,左节点 的表也只会返回一条记录。另外,右节点的表一条记录也不会返回。

2020-08-04 14:18:30 718

Zookeeper资源文件

2017-03-20

Zookeeper基础知识

2017-03-20

Zookeeper初识

2017-03-20

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

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

2014-06-12

MyEclipse 基于X-File 的Web service及调用实例详解

MyEclipse 基于X-File 的Web service及调用实例详解

2014-02-24

jquery浮动窗

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

2014-01-23

java在线预览office

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

2013-12-21

空空如也

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

TA关注的人

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