自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(445)
  • 论坛 (1)
  • 收藏
  • 关注

原创 开通公众号啦:java4all

一直有朋友加我微信,让我开通公众号,公众号其实一直是有的,现在开更了,欢迎各位大佬关注。java4all,主要分享SpringBoot,SpringCloud,分布式事务,分布式锁,面试等相关文章。欢迎大佬关注,也欢迎大佬投稿。我的微信:w1186355422,欢迎勾搭。想进读者群的大佬,欢迎加我微信。...

2019-05-18 09:42:23 487 4

原创 聊聊分布式

欢迎关注公众号:java4all↓↓↓分布式系列目录,点击直接进入文章↓↓↓,也可进入专栏:1.分布式锁系列–01分布式锁入门介绍2.分布式锁系列–02Redis实现分布式锁3.分布式锁系列–03关于分布式锁的选型分析014.分布式锁系列–04关于分布式锁的选型分析025.分布式事务系列–SpringCloud整合byteTCC框架0.4.x版本6.分布式事务系列–SpringClo...

2019-03-30 15:13:06 590 2

原创 SpringCloud系列教程目录

↓↓↓SpringCloud教程目录,点击直接进入文章↓↓↓,也可进入专栏:SpringCloud教程(Finchley版本)-00:什么是SpringCloudSpringCloud教程(Finchley版本)-01:服务注册与发现(Eureka)SpringCloud教程(Finchley版本)-02:服务消费者SpringCloud教程(Finchley版本)-03:负载均衡(Rib...

2018-12-15 11:17:36 2605 7

原创 Elasticsearch教程目录

↓↓↓Elasticsearch教程目录,点击直接进入文章↓↓↓,也可进入专栏:1.Elasticsearch简介2.Elasticsearch和Java交互3.Elasticsearch面向文档4.Elasticsearch索引文档5.Elasticsearch检索文档6.Elasticsearch轻量搜索7.Elasticsearch请求...

2018-05-24 21:03:26 1046

原创 SpringBoot教程目录

↓↓↓点击标题可直接查看↓↓↓(1)SpringBoot项目的创建(2)SpringBoot简介及常用注解(3)SpringBoot多环境配置与使用(4)SpringBoot获取配置文件常量值(5)SpringBoot使用JPA访问数据库(6)SpringBoot使用JPA访问数据库的常见问题(7)SpringBoot整合mybatis...

2018-04-03 16:05:18 3270 2

原创 ZooKeeper系列教学

    本专题是ZooKeeper的一些列教学文章,本来博主打算自己写,但是写了两篇之后,查资料过程中发现了Sunddenly(⊙_⊙) 的博客,他的这个系列写的非常专业,而且图文并茂,就转载了过来;我在文章首行挂了原文链接,文章末尾保留了博主的版权声明,文章类型都已经设置为转载,如果有读者想要转载,请遵守原文作者版权声明要求,原创不易,请大家尊重创作者,感谢Sunddenly(⊙_⊙) 下面是此...

2018-02-11 18:06:37 3178

原创 零基础学习Docker

本篇是从零开始学Docker的目录,随时更新,可直接点击相应链接:Docker---(0)Docker 安装Docker---(1)Docker 简介Docker---(2)为什么要用DockerDocker---(3)Docker常用命令Docker---(4)Docker 部署spring web项目Docker---(5)Docker 部署SpringBoot web项目Docker---(...

2018-01-31 14:34:28 1313 1

原创 零基础学习SpringBoot

注:本系列教程,又全部进行了更为深入的重写,可关注公众号:java4all,或进入SpringBoot教程,查看最新资料。本篇是零基础学习SpringBoot专栏的目录,随时更新,可直接点击相应链接: Spring Boot---(1)SpringBoot 项目的创建Spring Boot---(2)SpringBoot多环境配置和使用Spring Boot---(3)Spri...

2018-01-26 20:38:52 3642 2

原创 java agent开发

本文主要记录下如何创建一个简单的java Agent,并配置运行。1.创建Agent类package com.java4all.grouth.agent;import java.lang.instrument.Instrumentation;/** * @description: java Agent * @author: IT云清 */public class MyAgent { public static void premain(String agentArgs, Ins

2021-01-22 11:11:13 11

转载 CQRS架构实战

1.CQRS架构图2.什么是CQRS这里只通过Udi Dahan的《Clarified CQRS》文章中的一张图片简要介绍一下:UI上有两种类型的操作:命令和查询,例如显示销量最好的5个产品就属于查询,而提交一个订单、修改密码等则属于命令。因为大部分系统都是读多写少,而且业务逻辑基本都出现在写入的一端,所以查询和命令的分离可以让我们独立的去优化查询。查询 (Query)上图中,可以看到Query不是通过DB来查询,而是通过一个专门用于查询的Read DB(上图中的Cache,它不一定是数据库

2020-12-25 12:01:05 48

原创 springboot整合nacos配置中心

1.nacos添加配置2.项目引入依赖 <dependency> <groupId>com.alibaba.boot</groupId> <artifactId>nacos-config-spring-boot-starter</artifactId> <version>0.2.1</version> </dependency>3.配置spring:

2020-12-11 10:45:53 223

原创 一致性hash算法java实现

一致性hash算法java版本简单实现package com.java4all.grouth.consistent;import java.util.LinkedList;import java.util.List;import java.util.SortedMap;import java.util.TreeMap;import org.slf4j.Logger;import org.slf4j.LoggerFactory;/** * 一致性hash算法java简易实现 * @au

2020-12-09 17:29:51 2345 14

转载 面向对象设计七大原则

面向对象设计的几大原则,在项目重构,业务拓展,业务反复变更的时候,每一次踩坑,发现代码混乱难以下手时,回头看看,都有新的体会。这些简单的原则里,所浓缩的指导思想,不断踩坑,才发现都是朴素的真理。单一职责原则(Single Responsibility Principle)每一个类应该专注于做一件事情。里氏替换原则(Liskov Substitution Principle)超类存在的地方,子类是可以替换的。依赖倒置原则(Dependence Inversion Pri

2020-11-06 09:14:22 85

原创 seata 1.3 redis模式重构性能对比

非官方数据,数据为尝试重构server端redis模式下,中间过程的测试数据。!!!测试目的比较server端redis模式下,全局锁及事务信息存储,使用string和hash两种数据结构的性能差异。此结果仅仅代表这一种场景下,和本人本地测试结果。场景较为极端,并发修改的三个库的数据均为相同的数据。场景为:order - > storage -> account分别修改数据为order insert 1条 - > storage 修改5条 -> account 修改1

2020-09-23 20:06:22 1195 2

转载 git协作常用术语

WIP   Work in progress, do not merge yet. // 开发中LGTM Looks good to me. // Riview 完别人的 PR ,没有问题PTAL Please take a look. // 帮我看下,一般都是请别人 review 自己的 PRCC Carbon copy // 一般代表抄送别人的意思RFC  —  request for comments. // 我觉得这个想法很好, 我们来一起讨论下IIRC  —  if I recall c

2020-09-21 21:45:21 95

转载 深入理解Redis Cluster和Jedis Cluster

本文转载自:https://zhuanlan.zhihu.com/p/69800024Redis Cluster是Redis官方提供的集群解决方案。由于业务的飞速增长,单机模式总会遇到内存、性能等各种瓶颈,这个时候我们总会喊,上集群啊。就跟我家热得快炸了,你总喊开空调呀一样。的确,上集群可以解决大多数问题,但是在使用集群的过程中,不可避免会遇到这样那样的问题,这个时候怎么办呢,各种百度各种群里去问吗?NO,作为开发人员,在享受第三方提供的方便前,有必要去了解其基本的工作机制,这样才能在遇到问题时快速定位,

2020-09-09 14:24:36 625 1

原创 seata redis模式重构之全局事务更新

关于重构全局事务信息存储重构过程中一个问题的思考。1.watch的必要性jedis.hmset命令的语义:如果这个map存在,就更新这个多个值;如果这个map不存在,则新建map,然后设置键值对;同时将多个 field-value (域-值)对设置到哈希表 key 中。 此命令会覆盖哈希表中已存在的域。如果 key不存在,一个空哈希表被创建并执行 HMSET 操作。如果命令执行成功,返回 OK 。当 key 不是哈希表(hash)类型时,返回一个错误。在更新全局事务session的ma

2020-09-05 22:28:45 483 2

原创 grafana踩坑记录

1.鼠标移动悬停时数据不变更2.数据显式和库里查询结果不同数据库为postgresqlsql为SELECTdate_trunc('HOUR', gmt_create) as time,project_name as metric,count(distinct(user_id)) as valueFROM log_info where project_name like 'middleground-pro%'GROUP BY time,metric;库里显式为:而页面显式为:后来

2020-08-31 12:33:40 1261

原创 java中的final关键字和effectively final

我们在给lamda传参数时,可能会出现如下情况:Variable used in lambda expression should be final or effectively final一般情况下,我们是把变量用final显式的修饰,来解决这个问题。如果不显式的修饰呢,能否解决呢?也是可以的,只要变量被判定为一个effectively final变量,也是可以的。关于这个部分的描述,可以参考java的官方文档。这个部分 说明了哪些情况下,变量可以被认定为effectively final。

2020-08-29 17:38:18 319

转载 Redis sort 排序命令详解

本文介绍redis排序命令,redis支持对list,set,sorted set元素的排序sort 排序命令格式:sort key [BY pattern] [LIMIT start count] [GET pattern] [ASC|DESC] [ALPHA] [STORE dstkey]1) sort key (list)这是最简单的情况,没有任何选项对集合自身元素排序并返回排序结果,默认为value升序。示例:代码如下:127.0.0.1:6379> lpush mimvp 12

2020-08-19 16:21:30 161

转载 高可用Redis: Redis Cluster

Redis Cluster是Redis官方提供的Redis集群功能1.为什么要实现Redis Cluster1.主从复制不能实现高可用2.随着公司发展,用户数量增多,并发越来越多,业务需要更高的QPS,而主从复制中单机的QPS可能无法满足业务需求3.数据量的考虑,现有服务器内存不能满足业务数据的需要时,单纯向服务器添加内存不能达到要求,此时需要考虑分布式需求,把数据分布到不同服务器上4.网络流量需求:业务的流量已经超过服务器的网卡的上限值,可以考虑使用分布式来进行分流5.离线计算,需要中间环节

2020-08-07 10:47:06 217

原创 tomcat调优 tomcat配置优化

1.修改内存/jvm配置调整前JAVA_OPTS="-Xms1024m -Xmx4096m -Xss1024K -XX:PermSize=512m -XX:MaxPermSize=2048m"调整后JAVA_OPTS="-Xms2048m -Xmx2048m -Xss1024K -XX:PermSize=512m -XX:MaxPermSize=2048m"参数含义:-server:启用 JDK的 server 版本;-Xms:Java虚拟机初始化时堆的最小内存;-Xmx:Java虚拟机

2020-08-06 15:49:59 369

转载 yum install nodejs 报错问题及centos环境下nodejs安装解决方案

直接yum install -y nodejs会提示找不到nodejs这个模块,参考官网,发现有以下俩种安装方式:1、安装nodesource后再执行yum install -y nodejscurl --silent --location https://rpm.nodesource.com/setup_8.x | sudo bash -或者curl --silent --location https://rpm.nodesource.com/setup_10.x | sudo bash -

2020-08-05 11:26:54 279

转载 Redis Pipeline(管道)

Redis 的 pipeline(管道)功能在命令行中没有,但 redis 是支持 pipeline 的,而且在各个语言版的 client 中都有相应的实现。 由于网络开销延迟,就算 redis server 端有很强的处理能力,也会由于收到的 client 消息少,而造成吞吐量小。当 client 使用 pipelining 发送命令时,redis server 必须将部分请求放到队列中(使用内存),执行完毕后一次性发送结果;如果发送的命令很多的话,建议对返回的结果加标签,当然这也会增加使用的内存;Pi

2020-07-22 18:40:10 168

原创 nginx rewrite 跨域

1.rewrite指令rewrite 指令语法:rewrite regex replacement [flag];作用域:server 、location、if功能:如果一个URI匹配指定的正则表达式regex,URI就按照 replacement 重写。rewrite 按配置文件中出现的顺序执行。可以使用 flag 标志来终止指令的进一步处理。如果 replacement 以 http:// 、 https:// 或 $ scheme 开始,将不再继续处理,这个重定向将返回给客户端。re

2020-07-22 14:44:28 362

原创 mysql查看数据库和表使用空间

– 1.切换USE information_schema;– 2.查看数据库使用大小SELECT concat( round( sum(data_length / 1024 / 1024), 2 ), 'MB' ) AS DATAFROM TABLESWHERE table_schema = 'user_server';– 3.查看表使用大小SELECT concat( round( sum(data_length / 1024 / 1024),

2020-07-08 10:47:20 255

原创 java操作kudu 增删改查

1. 构建 maven 工程、导入依赖 <dependency> <groupId>org.apache.kudu</groupId> <artifactId>kudu-client</artifactId> <version>1.6.0</version> </dependency>2.增删改查/**

2020-05-12 20:12:14 853

原创 There is no known eureka server; cluster server list is empty

com.netflix.discovery.shared.transport.TransportException: There is no known eureka server; cluster server list is empty at com.netflix.discovery.shared.transport.decorator.RetryableEurekaHttpClient....

2020-04-16 20:47:49 573

转载 分布式系统理论基础 - 一致性、2PC和3PC

引言狭义的分布式系统指由网络连接的计算机系统,每个节点独立地承担计算或存储任务,节点间通过网络协同工作。广义的分布式系统是一个相对的概念,正如Leslie Lamport所说[1]:What is a distributed systeme. Distribution is in the eye of the beholder.To the user sitting at the keybo...

2020-04-09 19:37:08 215

转载 Java中Properties类

本文转载自:https://www.cnblogs.com/bakari/p/3562244.html一、Java Properties类​ Java中有个比较重要的类Properties(Java.util.Properties),主要用于读取Java的配置文件,各种语言都有自己所支持的配置文件,配置文件中很多变量是经常改变的,这样做也是为了方便用户,让用户能够脱离程序本身去修改相关的...

2020-02-28 21:30:54 203

原创 JDBC的PreparedStatement获取自增id

@Override public void insert(Account account) throws ClassNotFoundException, SQLException { account = new Account(100, 1001, new BigDecimal("1000"), new BigDecimal("10"),new BigDecimal...

2020-02-04 18:30:26 1049

原创 YAMLException: incomplete explicit mapping pair; a key node is missed; or followed by a non-tabulate

使用hexo g出现如下错误,一顿排查,发现,是文章的文件名和文章的title有非法字符,原title为:ssh: connect to host github.com port 22: Connection timed out。修改名称即可。G:\blog> hexo gINFO Start processingERROR Process failed: _posts/ssh: c...

2020-01-30 21:53:13 2219

原创 ssh: connect to host github.com port 22: Connection timed out fatal: Could not read from remote repo

换了个wifi,git clone拉取代码就会报错,切回原来的wifi,又是可以的,反复尝试,最终确认,这个特定的wifi下,网页和命令行都不能访问github,甚是神奇。G:\mylearn\source-code>git pullssh: connect to host github.com port 22: Connection timed outfatal: Could not...

2020-01-30 20:59:00 2148 1

原创 Gradle sync failed: Cause: com.intellij.util.containers.HashMap cannot be cast to com.intellij.util.

使用idea导入gradle项目,报这个错误:Gradle sync failed: Cause: com.intellij.util.containers.HashMap cannot be cast to com.intellij.util.containers.MultiMap而且搜索不到任何解决方案,Stack Overflow也没有,求知道的大佬支招啊。...

2020-01-09 17:35:45 449 2

原创 seata教程-Seata 1.0版本整合教程

seata 1.0教程技术选型及版本spring-cloud-starter-alibaba-seataspring-cloud-alibaba:1.5.1.RELEASEspringcloud:Edgware.SR4seata-all:1.0.0springboot:1.5.4mybatis-spring-boot-starter.version:2.0.0java:jdk81...

2019-12-27 09:10:45 5464 8

转载 java中getClass()和getSuperClass()的讲解

为了讲解这个问题,我们先来看一下下面的代码:package com.yonyou.test; import java.util.Date; class Test extends Date{ private static final long serialVersionUID = 1L; public static void main(String[] args) { ...

2019-12-07 11:17:36 381

转载 Class的isAssignableFrom方法详解

Class的isAssignableFrom方法Class类的isAssignableFrom是个不常用的方法,感觉这个方法的名字取得不是很好,所以有必要在此解析一下,以免在看源码时产生歧义,这个方法的签名如下:public native boolean isAssignableFrom(Class<?> cls);由方法签名可见是一个本地方法,即C代码编写的。以下是JDK中...

2019-12-07 09:57:24 338

转载 Java中的bridge method(桥接方法)

java4all原创,欢迎关注摘要:Java中的bridge method(桥接方法)是什么?1.什么是桥接方法桥接方法是 JDK 1.5 引入泛型后,为了使Java的泛型方法生成的字节...

2019-12-03 09:17:00 205

原创 fineReport切换数据源

fineReport切换数据源:1.配置数据连接2.报表内选中

2019-12-02 13:22:17 639

原创 seata整合踩坑

2019-11-26 16:44:11 [restartedMain] INFO o.s.b.a.l.AutoConfigurationReportLoggingInitializer - Error starting ApplicationContext. To display the auto-configuration report re-run your application wi...

2019-11-26 20:04:58 2174 3

空空如也

IT云清的留言板

发表于 2020-01-02 最后回复 2020-01-17

空空如也

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

TA关注的人 TA的粉丝

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