自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

路西法Lucifer

原创博客

  • 博客(183)
  • 资源 (17)
  • 收藏
  • 关注

原创 springcloud-nacos-seata 实现分布式事务

分布式事务组件seata的使用demo,AT模式,集成nacos、springboot、springcloud、mybatis-plus,数据库采用mysql;ps:github代码:transaction_example1. 服务端配置1.1 Nacos-server启动命令(standalone代表着单机模式运行,非集群模式):cd binsh startup.sh ...

2020-07-01 14:57:08 17545 6

原创 Elastic-Job (四)Elastic-Job+Spring Boot 实现订单取消

附:可以参考:Elastic-Job (一)实现Simple作业对于Script类型作业,官方文档给的解释是:Script类型作业: Script类型作业意为脚本类型作业,支持shell,python,perl等所有类型脚本。只需通过控制台或代码配置scriptCommandLine即可,无需编码。执行脚本路径可包含参数,参数传递完毕后,作业框架会自动追加最后一个参数为作业运行时...

2020-06-26 13:44:52 886

原创 Linux CentOS7.5搭建高可用Hadoop分布式集群环境

1.Linux环境准备1.1 关闭防火墙(三台虚拟机均修改)firewall-cmd --state #查看防火墙状态 systemctl start firewalld.service #开启防火墙 systemctl stop firewalld.service #关闭防火墙 systemctl disable firewalld.service #禁止开机启动防火墙1.2 配置静态IP地址(三台虚拟机均修改)附:虚拟机Linux配置静态ip[roo

2020-06-11 21:55:15 1375 2

原创 Linux centos7.5 编译hadoop源码

为什么要编译hadoop? 由于Apache给出的hadoop的安装包没有提供带c程序访问的接口,所以我们在使用本地库(本地库可以用来做压缩,以及支持c程序等等)的时候就会出现问题,需要对hadoop源码包重新编译。1、linux准备环境1.1 关闭防火墙(学习使用)[root@localhost ~]# systemctl status firewalld[root@localhost ~]# systemctl stop firewalld[root@local...

2020-06-10 12:49:18 526

原创 通过canal将mysql中数据同步到elasticsearch

环境:mysql 5.7,elasticsearch 7.4.2,canal.deployer-1.1.5这里我要做的是通过canal将MySQL中修改的数据同步到elasticsearch当中。一、MySQL配置1.1 修改MySQL的配置文件[root@localhost local]# vim /etc/my.cnf[root@localhost local]# systemctl restart mysqldmy.cnf: (新增部分)附:MySQL官方文档#开启.

2020-05-24 00:33:16 3634

原创 Docker 安装elasticsearch、kibana

1、下载镜像文件(elasticsearch:7.4.2、 kibana:7.4.2)[root@localhost ~]# docker pull elasticsearch:7.4.2Trying to pull repository docker.io/library/elasticsearch ...7.4.2: Pulling from docker.io/library/elas...

2020-05-08 10:35:01 1055 3

原创 Elastic-Job (三)SpringBoot整合Simple作业

项目结构:ZookeeperProperties :读取application.yml中的自定义配置package com.lucifer.study.autoconfig;import lombok.Data;import org.springframework.boot.context.properties.ConfigurationProperties;/** *...

2020-05-05 18:13:11 1849

原创 Elastic-Job (二)实现Dataflow作业

附:可以参考:Elastic-Job (一)实现Simple作业对于Dataflow类型作业,官方文档给的解释是:可通过DataflowJobConfiguration配置是否流式处理。 流式处理数据只有fetchData方法的返回值为null或集合长度为空时,作业才停止抓取,否则作业将一直运行下去; 非流式处理数据则只会在每次作业执行过程中执行一次fetchData方法和process...

2020-05-04 23:26:54 1388

原创 【Sharding-JDBC】(六)实现数据脱敏

使用sharding-jdbc实现数据脱敏,比如用户表中的password字段,日常开发都会进行数据脱敏,对其进行加密。项目结构:pom.xml:<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http:/...

2020-05-02 23:39:00 2297

原创 【RocketMQ】(五)利用Redssion分布式锁和RocketMQ消息的最终一致性 实现并发场景下单扣减库存

一、项目结构:1、 父工程pom.xml:(父工程只有一个pom.xml)<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-i...

2020-04-21 19:48:58 1816 1

原创 【RocketMQ】(四)解决分布式事务-RocketMQ实现可靠消息最终一致性

RocketMQ实现可靠消息最终一致性的原理图:一、项目结构: rocketmq-transaction工程分为三个子模块,base-framework-mysql-support模块(作为基础模块,被其它服务模块引用)存放数据库相关jar包和配置类,order-service模块是订单微服务,storage-service是库存微服务模块;<?...

2020-04-15 16:52:18 1723 1

原创 使用Logstash将MySQL数据同步到Elasticsearch

附:logstash官网下载地址1.准备环境jdk8;Logstash-7.4.2;Elasticsearch-7.4.2.2、1.解压Logstash压缩包,并在Logstash文件夹中创建sync文件夹。2.创建logstash-db-sync.conf,foodie-items.sql空文件。3.配置logstash-db-sync.conf:同步配置lo...

2020-03-10 15:12:29 698

原创 【Sharding-JDBC】 (五)整合mybatis-plus 解决分布式事务(基于XA)

官网解释:功能支持数据分片后的跨库XA事务 两阶段提交保证操作的原子性和数据的强一致性 服务宕机重启后,提交/回滚中的事务可自动恢复 SPI机制整合主流的XA事务管理器,默认Atomikos,可以选择使用Narayana和Bitronix 同时支持XA和非XA的连接池 提供spring-boot和namespace的接入端不支持项服务宕机后,在其它机器上恢复提交/回滚中的数...

2020-01-19 11:10:14 4380 11

原创 Spring Boot整合EasyExcel导入导出

1、所需部分jar包: <dependency> <groupId>com.alibaba</groupId> <artifactId>easyexcel</artifactId> <version>1.1.2-beat1</version></dependency&g...

2019-11-09 00:53:19 4293 3

原创 springboot 接口加签验签常见的几大问题及解决方案

springboot接口验签遇到的常见的几种问题以及解决办法: 1、request.getInputStream()不能重复读取 2、验签接口对body也参与加密,但是文件上传接口,相同参数每次产生的签名不一样 3、用request包装对象后,接口的MultipartFile参数 读取为空,但过滤器中可以读取到是有值的

2022-10-14 22:45:07 2324 1

原创 springboot过滤器转发请求到其它服务,并响应前端

通过调用 A服务,经过过滤器拦截,将请求转发到B服务,并将B服务的文件流,拿到后,响应给前端,并实现浏览器自动下载。

2022-09-22 23:22:33 3857

原创 redis事务解决超卖问题

redis事务

2022-08-10 18:38:57 985 1

原创 又拍云upyun 文件上传(Java)

又拍云的Java工具类封装

2022-08-03 17:25:59 1067

原创 Java 生成订单号(唯一id)方案

1、直接使用uuidpublic static String getUUID() { String replaceUUID = UUID.randomUUID().toString().replace("-", ""); return replaceUUID; } 2、原本使用uuid+时间戳 /** * UUID+时间戳 ...

2020-12-26 16:08:48 37021 9

原创 Google Guava 实战之字符串处理篇

<dependency> <groupId>com.google.guava</groupId> <artifactId>guava</artifactId> <version>27.0.1-jre</version> </dependency> <dependency> <groupId>org.projectlombok</grou..

2020-05-28 15:42:47 1134

原创 Google Guava 实战之Lists篇

<dependency> <groupId>com.google.guava</groupId> <artifactId>guava</artifactId> <version>27.0.1-jre</version> </dependency> <dependency> <groupId>org.projectlombok</grou..

2020-05-27 10:51:34 2022

原创 Google Guava 实战之Maps篇

Guava是一种基于开源的Java库,谷歌很多项目使用它的很多核心库。这个库是为了方便编码,并减少编码错误。 <dependency> <groupId>com.google.guava</groupId> <artifactId>guava</artifactId> <version>27.0.1-jre</version> </dependency> <depe.

2020-05-26 16:59:36 4637 1

原创 spring boot 对请求进行全局异常处理

个人认为:如果不使用全局异常处理的话,那么会有很多异常都需要使用try catch进行捕获,重复代码增加,增加代码的恶心程度。controller层代码:@RestController@RequestMapping(value = "/user")public class UserController { @Resource private UserService userService; @GetMapping(value = "get") pu.

2020-05-23 14:45:41 587

原创 Elastic-Job (一)实现Simple作业

项目结构:elastic-job配置:package com.lucifer.config;import com.dangdang.ddframe.job.config.JobCoreConfiguration;import com.dangdang.ddframe.job.config.JobTypeConfiguration;import com.dangdang.dd...

2020-05-04 20:50:27 1123 1

原创 intellij idea 忽略文件

使用git做为版本控制,项目中太多的文件,对于开发者来说用不到,而且看起来也烦,所以可以将它们忽略掉。这里在父工程中的.ignore文件(如果父工程中没有,可以在子模块中拷贝一份.ignore文件即可)中加入忽略的路径:在原有基础上加入:### 忽略文件**/mvnw**/mvnw.cmd**/.mvn**/target/.idea**/.gitignore...

2020-05-01 17:30:08 1264

原创 java8 CompletableFuture异步编程

1、创建异步对象CompletableFuture提供了4个静态方法来创建一个异步操作:public static CompletableFuture<Void> runAsync(Runnable runnable)public static CompletableFuture<Void> runAsync(Runnable runnable, Exec...

2020-04-22 18:44:50 1142

原创 MySQL的隔离级别

1、 读未提交: mysql数据库此时有一张表数据为:id=1,name="张三"; 事务B 将id=1的数据,name改成了"李四",但是事务并没有提交;但是事务A却可以读取到mysql中id=1的数据name="李四";2、读已提交:(不可重复读)事务B将id=1,name改为"李四",此时未提交事务;事务A第一次查询,查询到id=1的name="张三";此时...

2020-04-22 00:14:02 270

原创 Java设计模式-策略模式

策略模式: 策略模式定义了一系列的算法,并且将每个算法封装起来,而且可以使他们之间可以想换替换,让算法独立于使用它的客户而独立变化。案例分析: 假如在某电商软件中,有普通用户、VIP用户、SVIP用户.....,而不同等级的用户,对同一件商品的打折力度不同,这时候在代码中怎么使用策略模式去实现:1、不使用设计模式,用if...else if...去实现...

2020-04-21 00:02:40 192

原创 【RocketMQ】(一) 简单消息(可靠的同步,可靠的异步和单向传输)

本篇文章将使用RocketMQ以三种方式发送消息:可靠的同步,可靠的异步和单向传输。并介绍下负载均衡模式与广播模式的区别:(1)同步发送消息: 在重要的通知消息,SMS通知,SMS营销系统等广泛的场景中使用可靠的同步传输。生产者代码:/** * 发送同步消息 * 这种可靠性同步地发送方式使用的比较广泛,比如:重要的消息通知,短信通知。...

2020-04-14 17:19:19 780

原创 【RocketMQ】 (三)定时消息

定时消息: 是指消息发到 Broker 后,不能立刻被Consumer 消费,要到特定的时间点或者等待特定的时间后才能被消费。 如果要支持任意的时间精度,在 Broker 层面,必须要做消息排序,如果再涉及到持久化,那么消息排序要不可避免的产生巨大性能开销。 RocketMQ 支持定时消息,但是不支持任意时间精度,支持特定的 level,例如定时1s 5s 1...

2020-04-14 16:38:51 1103

原创 【RocketMQ】(二) 顺序消息

消息有序: 指的是可以按照消息的发送顺序来消费(FIFO)。RocketMQ可以严格的保证消息有序,可以分为分区有序或者全局有序。顺序消费的原理解析: 在默认的情况下消息发送会采取Round Robin轮询方式把消息发送到不同的queue(分区队列);而消费消息的时候从多个queue上拉取消息,这种情况发送和消费是不能保证顺序。 如...

2020-04-14 16:08:25 514

原创 mysql 练习题(持续更新中)

表名与字段名:–1.学生表Student(s_id,s_name,s_birth,s_sex) –学生编号,学生姓名, 出生年月,学生性别–2.课程表Course(c_id,c_name,t_id) – –课程编号, 课程名称, 教师编号–3.教师表Teacher(t_id,t_name) –教师编号,教师姓名–4.成绩表Score(s_id,c_id,s_sc...

2020-04-08 14:49:53 782

原创 kafka集群搭建

附: (1)Linux Centos7.5 三台虚拟机真实搭建Zookeeper集群 (2)Linux Centos7.5 安装配置Oracle jdk1.8ps:jdk版本不要过低。我使用的是/kafka_2.13-2.4.1,linux centos7.5,jdk1.8.0_2411、下载附:http://kafka.apache.org/...

2020-03-24 22:53:54 409

原创 Redis5集群搭建

1、 环境信息 centos7,redis5;服务器(节点) A B 192.168.160.130 6379 6380 192.168.160.133 6379 6380 192.168.160.134 6379 6380 三台虚拟机192.168.160.130,192.168.160.1...

2020-03-22 20:09:16 286

原创 IntelliJ IDEA 远程调试

1.添加Remote:2.服务器运行项目 2.1 jar包 java -jar 启动ps: 服务器出现 Listening for transport dt_socket at address: 5005; 本地debug启动项目,控制台出现Connected to the target VM, address: '192.168.160...

2020-03-22 11:44:19 1129

原创 springboot本地启动,访问路径正常,外部tomcat运行,接口访问404

1、案例介绍: 1.1结构: 1.2 pom.xml: <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> ...

2020-03-21 20:13:44 5456

原创 用git bash替换原有terminal

在IDEA最下面会发现terminal:如果还没有看见,可以通过 view--->tool windows--->terminal 显示出terminal选项卡。此时,terminal默认是cmd,因此不能执行linux中的命令,对于程序员并不是很友好:通过快捷键Ctrl+Alt+S,调出setting弹框。在Tools--->terminal看出:...

2020-03-21 16:48:15 482

原创 SonarQube的安装与使用

ps: SonarQube是管理代码质量一个开放平台,可以快速的定位代码中潜在的或者明显的错误.1、准备环境Centos7.5, jdk8,mysql 5.6-5.7, sonarqube-7.8请先确保linux已经安装了jdk8,并且已经配置好了环境变量;以下是我的虚拟机环境:(ps:jdk、mysql已装好)[root@localhost ~]# mysq...

2020-03-12 15:42:04 534

原创 springboot整合Elasticsearch 入门实战

附:Elasticsearch 环境搭建,可参考:Linux Centos7.5 安装elasticsearch(单机/集群)1.demo结构:2.pom.xml<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-...

2020-03-09 18:01:16 413

原创 Linux Centos7.5 安装elasticsearch(单机/集群)

一:所需软件ps:1.需要依赖jdk环境(可以参考:Linux Centos7.5 安装配置Oracle jdk1.8)。当前Linux是centos7.5版本;2.如果是linux centos6.+可以参考:Linux centos6.8 安装配置elasticsearch6.3.2 【单机】(一),Linux centos6.8 安装配置elasticsearch6.3.2...

2020-03-08 18:19:21 838

canal.deployer-1.1.5-SNAPSHOT.tar.gz

canal [kə'næl],译意为水道/管道/沟渠,主要用途是基于 MySQL 数据库增量日志解析,提供增量数据订阅和消费 早期阿里巴巴因为杭州和美国双机房部署,存在跨机房同步的业务需求,实现方式主要是基于业务 trigger 获取增量变更。从 2010 年开始,业务逐步尝试数据库日志解析获取增量变更进行同步,由此衍生出了大量的数据库增量订阅和消费业务。

2020-04-02

jdk1.8 linux版本

Java 8 (又称为 jdk 1.8) 是 Java 语言开发的一个主要版本。 Oracle 公司于 2014 年 3 月 18 日发布 Java 8 ,它支持函数式编程,新的 JavaScript 引擎,新的日期 API,新的Stream API 等。

2019-11-25

nacos-server-1.1.0.tar.gz

Nacos 致力于帮助您发现、配置和管理微服务。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据及流量管理。

2019-08-06

Linux Centos7.5 安装FastDFS所需软件

FastDFS是一个开源的轻量级分布式文件系统,它对文件进行管理,功能包括:文件存储、文件同步、文件访问(文件上传、文件下载)等,解决了大容量存储和负载均衡的问题。

2018-11-21

Linux安装FastDFS所需软件

astDFS是一个开源的轻量级分布式文件系统,它对文件进行管理,功能包括:文件存储、文件同步、文件访问(文件上传、文件下载)等,解决了大容量存储和负载均衡的问题。特别适合以文件为载体的在线服务,如相册网站、视频网站等等。

2018-11-09

SwitchHosts

介绍一个实用的小工具SwitchHosts,做网页开发的一般都会配置hosts文件,像google访问爬墙也是需要修改hosts的,这个软件能很好的管理我们的hosts,支持跨平台,mac上也能使用 SwitchHosts github地址:https://github.com/oldj/SwitchHosts 主要介绍一个有意思的功能,远程hosts,也就是远程添加hosts内容到本地,比如像访问google的ip指向不定期更新,我们可以直接设置远程hosts

2018-10-27

乐优商城完整19天不加密

2018最新的乐优商城完整版,乐优商城完整19天不加密,包括资源源码数据库视频等完整资料。 - 乐优商城是一个全品类的电商购物网站(B2C)。 - 用户可以在线购买商品、加入购物车、下单、秒杀商品 - 可以品论已购买商品 - 管理员可以在后台管理商品的上下架、促销活动 - 管理员可以监控商品销售状况 - 客服可以在后台处理退款操作 - 希望未来3到5年可以支持千万用户的使用

2018-10-26

fastdfs-client-1.26.3

FastDFS Client直接在pmo.xml中引入会报红 <dependency> <groupId>com.github.tobato</groupId> <artifactId>fastdfs-client</artifactId> <version>1.26.1-RELEASE</version> </dependency> 为了解决这个问题,我们需要另辟蹊径。此资源写明了方法,并且亲测成功!!!!!

2018-10-09

基于RBAC分布式Spring Security、Apache Shiro权限管理系统

某课网基于最流行RBAC拓展模型,打造分布式权限管理系统 Spring Security、Apache Shiro框架学习与原生技术开发一课多得

2018-09-24

传智黑马web39期

传智黑马web39期教程• 大数据可视化D3.js• Vue.js/Vue Router/Vuex/axios/Element-UI• Vue CLI脚手架工具• 使用Git、Github管理项目源代码• webpack• React.js / React Router / Redux / axios / Ant Design• create‑react‑app 脚手架工具• 项目打包及优化• 项目部署与开发。。。。。。

2018-09-24

传智 springboot+shiro整合 权限管理实战

Apache Shiro是一个强大且易用的Java安全框架,执行身份验证、授权、密码学和会话管理。相比较Spring Security,shiro有小巧、简单、易上手等的优点。所以很多框架都在使用shiro。 Shiro包含了三个核心组件:Subject, SecurityManager 和 Realms。

2018-09-07

olap4j 0.9.7.309-JS-3 jar包

olap4j 0.9.7.309-JS-3 jar包网上很难找到的,我是因为公司新项目用到了这个jar包,现在分享出来

2018-08-20

MongoDB实战

MongoDB [2] 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。他支持的数据结构非常松散,是类似json的bson格式,因此可以存储比较复杂的数据类型。

2018-06-05

MongoDB权威指南(中文版)

MongoDB 教程 MongoDB 是一个基于分布式文件存储的数据库。由 C++ 语言编写。旨在为 WEB 应用提供可扩展的高性能数据存储解决方案。

2018-06-05

Nginx高性能Web服务器详解

Nginx是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP代理服务器。 Nginx是一款轻量级的Web服务器/反向代理服务器以及电子邮件代理服务器,并在一个BSD-like协议下发行。由俄罗斯的程序设计师lgor Sysoev所开发,供俄国大型的入口网站及搜索引擎Rambler使用。其特点是占有内存少,并发能力强,事实上nginx的并发能力确实在同类型的网页服务器中表现较好。

2018-06-05

springboot实战pdf书籍

Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。用我的话来理解,就是spring boot其实不是什么新的框架,它默认配置了很多框架的使用方式,就像maven整合了所有的jar包,spring boot整合了所有的框架(不知道这样比喻是否合适)。

2018-06-05

空空如也

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

TA关注的人

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