自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

东子的博客 细节决定成败,点滴铸就辉煌。

重点关注Android、Java、IOT、JavaEE、分布式、微服务、Micronaut、SpringCloud等

  • 博客(187)
  • 资源 (9)
  • 论坛 (2)
  • 问答 (4)
  • 收藏
  • 关注

原创 使用seata-spring-boot-starter外部化配置轻松上手Dubbo的分布式事务

1.简介本文主要介绍SpringBoot2.2.2 + Dubbo 2.7.5 + Mybatis 3.4.2 + Nacos 1.1.3 +Seata 1.0.0整合来实现Dubbo分布式事务管理,使用Nacos 作为 Dubbo和Seata的注册中心和配置中心,使用 MySQL 数据库和 MyBatis来操作数据。如果你还对SpringBoot、Dubbo、Nacos、Seata、My...

2020-01-08 11:20:20 9234 1

原创 SpringBoot+Nacos+Seata实现Dubbo分布式事务管理

1.简介本文主要介绍SpringBoot2.1.5 + Dubbo 2.7.3 + Mybatis 3.4.2 + Nacos 1.1.3 +Seata 0.8.0整合, 使用 Seata 实现dubbo服务之间调用的分布式事务,使用Nacos 作为 Duubo和Seata的注册中心和配置中心,使用 MySQL 数据库和 MyBatis。如果你还对SpringBoot、Dubbo、Na...

2019-09-05 12:59:09 9008 15

原创 Spring Cloud Alibaba Sentinel 网关流量控制之Spring Cloud Gateway实战

学习本篇文章之前如果你还没有了解过Sentinel是什么的话,请先学习一下分布式系统的流量防卫兵Sentinel-入门指南。这样就这轻松学习Spring Cloud Alibaba Sentinel的使用。1.如何使用 Sentinel如果要在您的项目中引入 Sentinel,使用 group ID 为com.alibaba.cloud 和 artifact ID 为 spring-cloud...

2019-08-23 14:38:33 33790 8

原创 TDengine2.0快速入门

1、TDengine 官网https://www.taosdata.com/cn/2、TDengine 简介TDengine是涛思数据面对高速增长的物联网大数据市场和技术挑战推出的创新性的大数据处理产品,它不依赖任何第三方软件,也不是优化或包装了一个开源的数据库或流式计算产品,而是在吸取众多传统关系型数据库、NoSQL数据库、流式计算引擎、消息队列等软件的优点之后自主开发的产品,在时序空间大数据处理上,有着自己独到的优势。TDengine的模块之一是时序数据库。但除此之外,为减少研发的复杂度、系统

2021-01-26 14:38:42 1112

原创 java八股文第四章:Java 虚拟机

1、Java 内存结构堆内存由线程共享,存放 new 出来的对象,是垃圾回收器的主要工作区域。栈内存线程私有,分为 Java 虚拟机栈和本地方法栈,存放局部变量表、操作栈、动态链接、方法出口等信息,方法的执行对应着入栈到出栈的过程。方法区(元数据区)线程共享,存放已被加载的类信息、常量、静态变量、即时编译器编译后的代码等信息,JDK 1.8 中方法区被元空间取代,使用直接内存。程序计数器 每个线程都会有自己的一个程序计数器,专门记录当前这个线程目前执行到了哪一条字节码指令了2、Java

2021-01-19 15:18:36 495

原创 java八股文第三章:Java 多线程

Java 多线程1、synchronized修饰代码块底层实现,通过 monitorenter & monitorexit 标志代码块为同步代码块。修饰方法底层实现,通过 ACC_SYNCHRONIZED 标志方法是同步方法。修饰类 class 对象时,实际锁在类的实例上面。单例模式public class Singleton { private static volatile Singleton instance = null; private Single

2021-01-18 13:41:15 1013

原创 java八股文第二章:Java 集合框架

Java 集合框架1、List(线性结构)ArrayListObject[] 数组实现,默认大小为 10 ,支持随机访问,连续内存空间,插入末尾时间复杂度 o(1),插入第 i 个位置时间复杂度 o(n - i)。扩容,大小变为 1.5 倍,Arrays.copyOf(底层 System.ArrayCopy),复制到新数组,指针指向新数组。Vector类似 ArrayList,线程安全,扩容默认增长为原来的 2 倍,还可以指定增长空间长度。LinkedList基于链表实现,1.7 为双向链表

2021-01-18 13:40:31 643

原创 java八股文第一章:Java 基础知识

Java 基础知识1、Object 类相关方法getClass获取当前运行时对象的 Class 对象。hashCode返回对象的 hash 码。clone拷贝当前对象, 必须实现 Cloneable 接口。浅拷贝对基本类型进行值拷贝,对引用类型拷贝引用;深拷贝对基本类型进行值拷贝,对引用类型对象不但拷贝对象的引用还拷贝对象的相关属性和方法。两者不同在于深拷贝创建了一个新的对象。equals通过内存地址比较两个对象是否相等,String 类重写了这个方法使用值来比较是否相等。toStri

2021-01-18 13:39:20 1938 1

原创 MySQL触发器概念、原理与用法

1、触发器的是什么?触发器(trigger)是MySQL提供给程序员和数据分析员来保证数据完整性的一种方法,它是与表事件相关的特殊的存储过程,它的执行不是由程序调用,也不是手工启动,而是由事件来触发,比如当对一个表进行操作(insert,delete, update)时就会激活它执行。来源于百度百科简言之:你执行一条sql语句,这条sql语句的执行会自动去触发执行其他的sql语句。2、触发器创建的四个要素1.(监视地点(table)监视事件(insert/update/delete)触发

2021-01-15 14:17:17 114

原创 [CentOS_7.4]Linux编译安装ffmpeg4.3.1

[CentOS_7.4]Linux编译安装ffmpeg安装过程: 下载安装源,配置,编译,安装,设置环境变量。# wget http://www.ffmpeg.org/releases/ffmpeg-4.3.1.tar.gz# tar -zxvf ffmpeg-4.3.1.tar.gz# cd ffmpeg-4.3.1# ./configure --prefix=/usr/local/ffmpeg# make && make install等待安装完成…# vi /etc/

2021-01-12 13:31:19 320

原创 秒杀系统关注的问题

秒杀系统关注的问题服务单一职责+独立部署(秒杀服务即使自己扛不住压力,挂掉了,不能影响其他系统)秒杀链接加密防止恶意攻击,模拟秒杀请求,1000次/s攻击,防止链接暴露,自己的工作人员,提前秒杀商品库存预热+快速扣减(秒杀读多写少,无需每次实时请求校验库存,我们把库存预热,放到redis中,信号量控制进来秒杀的请求)动静分离nginx做好动静分离,保证秒杀和商品详情页的动态请求才能打到后端的集群服务,使用CDN网络,分担集群的压力恶意请求拦截网关层识别非法请求并进行拦截流量错峰使用.

2021-01-08 15:20:55 95

原创 centos7 创建普通用户

1.创建新用户adduser centos2.为新用户初始化密码passwd centos3.授权sudoerswhereis sudoersls -l /etc/sudoerschmod -v u+w /etc/sudoers4.修改&编辑sudoersvim /etc/sudoers# 找到一下这个地方添加一条即可 centos centos ALL=(ALL) ALL## Allow root to run any commands anywhere

2020-12-18 14:59:33 428

原创 MySQL 4种事务隔离级别

1.事务是什么?事务是应用程序中一系列严密的操作,所有操作必须成功完成,否则在每个操作中所作的所有更改都会被撤消。也就是事务具有原子性,一个事务中的一系列的操作要么全部成功,要么一个都不做。事务的结束有两种,当事务中的所以步骤全部成功执行时,事务提交。如果其中一个步骤失败,将发生回滚操作,撤消撤消之前到事务开始时的所以操作。2.事务的特性事务具有四个特性:原子性( Atomicity )、一致性( Consistency )、隔离性( Isolation )和持续性( Durability )。这四

2020-11-24 11:11:44 109

原创 canal +RocketMQ实现MySQL与ElasticSearch数据同步

1.引言在很多业务情况下,我们都会在系统中引入ElasticSearch搜索引擎作为做全文检索的优化方案。如果数据库数据发生更新,这时候就需要在业务代码中写一段同步更新ElasticSearch的代码。这种数据同步的代码跟业务代码耦合性非常高,并且使得代码的可读性降低,于是乎,我们能不能把这些数据同步的代码抽出来形成一个独立的模块呢?肯定是可以的。下面我会以一个CMS文章管理为例来演示canal+Rocketmq实现MySQL与ElasticSearch数据同步。2.技术栈如果你还对Spring

2020-08-20 17:16:02 2513 3

转载 关于Linux中nohup.out日志过大问题解决方法

关于Linux中nohup.out日志过大问题解决方法1 删除脚本编写脚本vi ClearNohup.sh使用vi编辑器添加如下的shell脚本#!/bin/bashthis_path=$(cd `dirname $0`;pwd) #根据脚本所在路径current_date=`date -d "-1 day" "+%Y%m%d"` #列出时间cd $this_pathecho $this_pathecho $current_datedo_split() { [ ! -d lo

2020-06-05 16:12:47 893

原创 让您轻松入门分布式事务Seata和分库分表sharding-sphere的整合

1.介绍本篇将介绍,如何进行seata1.2.0、sharding-sphere4.1.0和dubbo2.7.5 的整合,以及使用nacos作为我们的配置中心和注册中心。如果你还是一个初学者,先建议学习一下,陈建斌的七步带你集成Seata 1.2 高可用搭建,这篇文章清楚的阐述了初学者容易遇到的5个问题,并且都提供完整的解决思路。2.环境配置mysql: 5.7.12nacos: 1.2.1spring-boot: 2.2.6.RELEASEseata: 1.2.0du

2020-05-22 09:54:21 5782 3

原创 让您轻松理解java线程池

1.线程线程是调度cpu的最小单元,也叫轻量级的进程。2.两种线程模型用户级线程(ULT):指不需要内核支持而在用户程序中实现的线程,它的内核的切换是由用户态程序自己控制内核的切换,不需要内核的干涉。但是它不能像内核级线程一样更好的运用多核CPU。内核级线程(KLT):切换由内核控制,当线程进行切换的时候,由用户态转化为内核态。切换完毕要从内核态返回用户态。可以很好的运用多核CPU,就像Windows电脑的四核八线程,双核四线程一样。3.线程池线程池管理器(ThreadPool):用于创建

2020-05-18 15:54:34 174

转载 MongoDB查询操作限制返回字段的解决方案

映射(projection )声明用来限制所有查询匹配文档的返回字段。projection以文档的形式列举结果集中要包含或者排除的字段。可以指定要包含的字段(例如: {field:1})或者指定要排除的字段(例如:{field:0})。默认_id是包含在结果集合中的,要从结果集中排除_id字段,需要在 projection中指定排除_id字段({_id:0})。除了_id字段,不能在一个proje...

2020-04-27 17:30:11 491

原创 一份最全面的docker命令汇总

1.docker images: 查看镜像查看镜像,后可跟 “| grep 内容”,可根据内容进行筛选。如:docker images | grep nginxdocker images [OPTIONS] [REPOSITORY[:TAG]]OPTIONS说明:-a: 列出本地所有的镜像–digests: 显示镜像的摘要信息-f: 显示满足条件的镜像–format: 指定返回值...

2020-03-20 12:19:47 296

原创 让您轻松理解分布式事务解决方案之TCC

1.什么是TCCTCC是Try、Confirm、Cancel三个词语的缩写,TCC要求每个分支事务实现三个操作 :预处理Try、确认Confirm、撤销Cancel。Try操作做业务检查及资源预留,Confirm做业务确认操作,Cancel实现一个与Try相反的操作既回滚操作。TM首先发起所有的分支事务的try操作,任何一个分支事务的try操作执行失败,TM将会发起所有分支事务的Cancel操作...

2020-01-15 10:22:22 410

原创 让您轻松理解分布式事务解决方案之2PC

针对不同的分布式场景业界常见的解决方案有2PC、TCC、可靠消息最终一致性、最大努力通知等。1. 什么是2PC2PC即两阶段提交协议,是将整个事务流程分为两个阶段,准备阶段(Prepare phase)、提交阶段(commit phase),2是指两阶段,P是指准备阶段,C是提交阶段。举例 :张三和李四好久不见,两人一起约看电影,电影院收银员要求先买单,才能出电影票。这时张三和李四分别抱怨近...

2020-01-14 17:39:25 1609

原创 让您轻松理解分布式事务产生的场景

1.典型场景就是微服务架构微服务之间通过远程调用来实现事务控制。比如:订单微服务和库存微服务,下单的同时订单微服务请求库存服务减少库存。简言之:跨JVM进程产生的分布式事务。2.单体系统访问多个数据库实例当单体系统访问多个数据库实例时就产生分布式事务。比如:用户信息和订单信息分别在两个不同的(MySQL)关系数据库实例。用户管理系统删除用户信息,需要分别删除用户信息和用户的订单信息。...

2020-01-14 15:34:37 357

原创 分布式理论基础之CAP理论&BASE理论

1.CAP理论的含义CAP理论表示在分布式系统中一致性(C)、可用性(A)和分区容错性(P)最多只能同时满足两个。一致性:客户端更新数据成功后,在任意时刻,在系统任意对外提供服务的节点,读取到的数据都是最新写入的数据。(强一致性)。可用性:当系统出现异常时,仍能对外提供服务。分区容错:当出现网络分区时,系统的容错能力(机器之间出现网络故障,不能正常通信)。\证明CAP理论:有两台机...

2020-01-13 16:28:21 329

原创 centos7.4 安装netcat工具及测试

netcat是网络工具中的瑞士军刀,它能通过TCP和UDP在网卡中读写数据。通过与其他工具结合和重定向,你可以在脚本中以多种方式使用它。使用natcat命令所能完成的事情令人惊讶。netcat所做的就是在两台电脑之间连接并返回两个数据流,在这之后所能作的事就看你的想法了。你能建立一个服务器,传输文件,与朋友聊天,传输流媒体或者用它作为其他协议的独立客户端。1.下载wget https://s...

2020-01-13 14:39:40 790 1

原创 Centos7.4安装Nginx实战

1.什么是nginxNginx是一款使用C语言开发的高性能的http 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器。由俄罗斯的程序设计师Igor Sysoev所开发,官方测试nginx能够支支撑5万并发链接,并且cpu、内存等资源消耗却非常低,运行非常稳定。2.Nginx的应用场景http服务器。Nginx是一个http服务可以独立提供http服务。可以做网页静态服务...

2020-01-13 14:03:41 204

原创 Centos6.8下安装Rabbitmq3.6.10

1.下载Rabbitmq3.6.10安装包2.解压安装包tar -zxvf rabbitmq-server-generic-unix-3.6.10.tar.xzcd /user/local/rabbitmq/rabbitmq_server-3.6.103.配置环境变量export RABBIT_HOME=/user/local/rabbitmq/rabbitmq_server-3.6...

2020-01-13 13:54:59 395

原创 Centos6.8下安装Erlang19.3

1、下载otp_src_19.3.tar.gz wget http://erlang.org/download/otp_src_19.3.tar.gz2、解压otp_src_19.3.tar.gz tar -xzvf otp_src_19.3.tar.gz3、otp_src_18.3.tar.gz编译需要依赖下面的包gccgcc-c++unixODBC-developen...

2020-01-13 13:48:17 420

原创 CentOS7.4 上安装 zookeeper-3.4.14 服务

在 CentOS7 上安装 zookeeper-3.4.14 服务。1、创建 /usr/local/services/zookeeper 文件夹:mkdir -p /usr/local/services/zookeeper2、进入到 /usr/local/services/zookeeper 目录中:cd /usr/local/services/zookeeper3、下载 zooke...

2020-01-13 13:39:57 631

原创 centos 7.4 升级/安装 git 2.9.5

1、安装所需软件包# yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel # yum install gcc perl-ExtUtils-MakeMaker2、下载&安装# cd /usr/src# wget https://www.kernel.org/pub/software/s...

2020-01-13 13:32:07 718

原创 Centos7.4安装apache-apollo服务

1.首先去官网下载http://activemq.apache.org/apollo/download.htmlapache-apollo-1.7.1-unix-distro.tar.gz2.解压文件软件包解压后得到一个目录 apache-apollo-1.7.1[root@CentOS tools]# tar -zxvf apache-apollo-1.7.1-unix-distro...

2020-01-13 13:30:26 633

原创 centos7.6使用yum安装svn服务

1.安装#安装命令yum install -y subversion#查看安装版本号svnserve --version2.创建svn版本库#创建svn根文件夹mkdir /home/svnrepo#创建一个版本库文件夹mkdir /home/svnrepo/test#创建版本库svnadmin create /home/svnrepo/test#删除版本库 rm -...

2020-01-13 13:22:13 596

原创 使用Spring Cloud Stream和Apache Kafka Streams进行流计算(一)之WordCount入门

我们将探讨如何使用Spring Cloud Stream和Kafka Streams编写流处理应用程序。Spring Cloud Stream Horsham 版本(3.0.0)对应用程序使用Apache Kafka的方式进行了一些更改,可以使用Kafka和Kafka Streams的binders。1.Spring Cloud Stream下有几种类型的Kafka的binders?这通常是...

2019-12-09 18:25:59 1524

原创 Windows下搭建Apache Kafka2.3.1集群模式

前面我已经介绍如何搭建Apache Kafka2.3.1的单机版,今天给大家带来的是如何在Windows下搭建Apache Kafka2.3.1集群模式。前言Producer API允许程序发布数据流到一个到多个Kafka topic。Consumer API允许程序订阅一个到多个topic,并且进行消费。Streams API允许程序作为一个数据流处理,将一个或多个topic中输入的...

2019-11-14 11:16:50 290

原创 Centos7.4安装Apache Kafka2.3.1

本教程假设您是从头开始的,并且没有现有的Kafka或ZooKeeper。 由于Kafka控制台脚本在基于Unix的平台和Windows平台上有所不同,因此在Windows平台上使用bin\windows\而不是bin /,并将脚本扩展名更改为.bat。1.下载Apache Kafka2.3.1下载 2.3.1 release版本并使用tar命令解压。tar -xzf kafka_2.12-2...

2019-11-13 14:00:36 565

转载 Seata分布式事务的设计原理

在微服务架构体系下,我们可以按照业务模块分层设计,单独部署,减轻了服务部署压力,也解耦了业务的耦合,避免了应用逐渐变成一个庞然怪物,从而可以轻松扩展,在某些服务出现故障时也不会影响其它服务的正常运行。总之,微服务在业务的高速发展中带给我们越来越多的优势,但是微服务并不是十全十美,因此不能盲目过度滥用,它有很多不足,而且会给系统带来一定的复杂度,其中伴随而来的分布式事务问题,是微服务架构体系下必然需...

2019-10-22 19:01:00 576 2

原创 SpringBoot+Zookeeper+Seata实现Dubbo分布式事务管理

前面我已经写过一篇SpringBoot+Nacos+Seata实现Dubbo分布式事务管理的文章,今天为什么还要写这篇呢,是因为好多公司还在用Zookeeper作为Dubbo的注册中心和配置中心在大规模使用,还没有完全迁移到Nacos上来,所以Seata的注册中心和配置也是支持Zookeeper,但是官方没有完整的使用教程,因此,写这篇主要为了帮助使用Zookeeper的用户也可以轻松使用Seat...

2019-10-21 12:10:06 4420 3

原创 oracle11数据备份之导出sequences

oracle11数据备份之导出sequences1、将某个用户的全部sequence查询出来,并拼成创建语句。Sql代码select 'create sequence '||sequence_name|| ' minvalue '||min_value|| ' maxvalue '||max_value|| ' star...

2019-10-17 16:37:52 386

转载 天天在用消息队列,却不知道为啥要用 MQ ,这就尴尬了

转载:芋道源码文章链接:https://mp.weixin.qq.com/s/2998ryj46sLNbAsK4IwZXA

2019-09-25 13:43:48 200 1

原创 Nacos生产环境集群部署方案

1.介绍生产环境中部署nacos首先肯定是使用集群模式cluster保证高可用。2.集群部署架构图nacos 官方推荐用户把所有服务列表放到一个vip下面,然后挂到一个域名下面http://ip1:port/openAPI 直连ip模式,机器挂则需要修改ip才可以使用。http://VIP:port/openAPI 挂载VIP模式,直连vip即可,下面挂server真实ip,可读...

2019-09-25 10:33:43 9929 6

原创 Micronaut 微服务中使用 Kafka

今天,我们将通过Apache Kafka主题构建一些彼此异步通信的微服务。我们使用Micronaut框架,它为与Kafka集成提供专门的库。让我们简要介绍一下示例系统的体系结构。我们有四个微型服务:订单服务,行程服务,司机服务和乘客服务。这些应用程序的实现非常简单。它们都有内存存储,并连接到同一个Kafka实例。我们系统的主要目标是为客户安排行程。订单服务应用程序还充当网关。它接收来自客户的请求...

2019-09-25 10:16:56 725

Axis2WebService与Spring的整合

Axis2WebService与Spring的整合

2017-03-29

最新五级省市区镇村json

最新五级省市区镇村联动json文件,总计有693337个。基本覆盖了所有的。供大家使用

2019-02-28

Android多图片上传,仿照微信发说说

Android 仿照微信发说说,既能实现拍照,选图库,多图案上传 使用Retrofit2.0技术 详细见博客:http://blog.csdn.net/u010046908/article/details/50767904

2016-03-01

springcloud整合nacos和consul

SpringCloud 构建微服务系统之服务注册和发现(nacos和consul)

2018-12-26

Android中RxJava+Retrofit2.0+MVP模式的整合

Android中RxJava+Retrofit2.0+MVP模式的整合

2016-03-03

React-Native实现App底部tab切换

React-Native实现App底部tab切换,项目的引导页,点击“启动应用”,跳转到APP主页,主页底部的五个tab的实现

2016-02-28

java程序设计

java程序设计

2013-03-26

Android 访问WebServicedemo

Android 访问WebServicedemo

2016-01-12

Java 读取Excl文件 (poi-3.13)

Java 读取Excl文件 (poi-3.13)

2016-01-25

请叫我东子的留言板

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

PageHelper 如何解决插入数据同时分页查询 数据重复问题

发表于 2017-11-04 最后回复 2017-11-04

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

TA关注的人 TA的粉丝

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