自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(26)
  • 资源 (3)
  • 收藏
  • 关注

原创 Spring-Cloud-Gateway Predicate断言使用与自定义

路由断言FactoriesSpring Cloud Gateway 是路由使用spring webflux的Handler Mapping为基础结构实现的。Spring Cloud Gateway包含许多内置的路由断言Factories。这些断言都匹配HTTP请求的不同属性。多个路由断言Factories可以通过 and 组合使用默认的一些路由断言 Factory配置#路由断言sprin...

2019-09-14 12:01:08 5048

转载 分布式系统的CAP理论

2000年7月,加州大学伯克利分校的Eric Brewer教授在ACM PODC会议上提出CAP猜想。2年后,麻省理工学院的Seth Gilbert和Nancy Lynch从理论上证明了CAP。之后,CAP理论正式成为分布式计算领域的公认定理。无论你是一个系统架构师,还是一个普通开发,当你开发或者设计一个分布式系统的时候,CAP理论是无论如何也绕不过去的。本文就来介绍一下到底什么是CAP理...

2019-06-25 16:27:22 321

原创 Spring-Cloud-Gateway简介与配置(使用属性文件)

官方简介该项目提供了一个建立在Spring Ecosystem之上的API网关,包括:Spring 5,Spring Boot 2和Project Reactor。Spring Cloud Gateway旨在提供一种简单而有效的方式来对API进行路由,并为他们提供切面,例如:安全性,监控/指标 和弹性等。官方工作原理介绍客户端向spring-cloud-gateway请求网关映射处理程序(...

2019-05-04 16:05:18 27770 5

原创 分布式事务:2PC、3PC协议

两阶段提交协议-2PC两阶段提交协议(2PC):是一种原子承诺协议,一种分布式算法,它协调参与分布式事务的所有应用(进程)是否提交或终止(回滚)事务,2PC基本算法阶段一:提交事务询问请求(或投票)阶段事务协调者(TM)向所有参与该事务的进程发送事务内容,询问是否可以执行该事务的提交,并等待所有AP的响应每个AP节点执行事务操作,将undo和redo信息记录到事务日志中,尽量把提交...

2019-03-23 14:11:46 236

原创 分布式事务:X/Open DTP模型

事务的特征Atomic:原子性,事务必须是一个原子的工作单元,要么全部成功,要么全部失败Consistent:一致性,事务完成时必须使所有的数据保持一致状态。Isolation:隔离性,并发事务所做的修改必须与其他事务所做的修改是隔离的。Duration:持久性,事务完成后对系统的影响是永久性的。分布式事务的由来随着系统用户和数据的增加,原先的单体应用的程序架构向着SOA或者微服务...

2019-03-17 21:10:55 790

原创 Spring Cloud Alibab Nacos注册中心与配置中心

nacos简介Nacos由阿里巴巴开源,致力于服务发现、配置和管理微服务。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据及流量管理,Nacos 已经支持几乎所有主流类型的“服务”的发现、配置和管理。主要包括的功能有:服务发现和服务健康监测,动态配置服务,动态 DNS 服务,服务及其元数据管理安装Nacos请参阅:https://nacos.io/zh-...

2019-03-04 16:55:36 1826 1

原创 redis数据类型及常用命令

string(字符串)string类型是redis的最基本数据类型,一个key对应value;string类型是二进制安全的,意思是 redis 的 string 可以包含任何数据。比如jpg图片或者序列化的对象;string类型的值最大能存储512MBredis操作指令://添加set $key $value 如 set name "张三"//添加多个mset $key $value...

2018-12-30 19:09:43 114

原创 Docker编排SpringCloud微服务

DOCKER编排SpringCloud微服务运行环境操作系统:windows 10 企业版docker for windows:2.0.0.0-win81docker engine:18.09.0docker compose:1.23.2springboot项目构建docker镜像maven添加构建docker插件<plugin> <gr

2018-12-18 11:30:02 520

转载 RabbitMQ 详解

RabbitMQ 即一个消息队列,主要是用来实现应用程序的异步和解耦,同时也能起到消息缓冲,消息分发的作用。消息中间件在互联网公司的使用中越来越多,刚才还看到新闻阿里将RocketMQ捐献给了apache,当然了今天的主角还是讲RabbitMQ。消息中间件最主要的作用是解耦,中间件最标准的用法是生产者生产消息传送到队列,消费者从队列中拿取消息并处理,生产者不用关心是谁来消费,消费者不用关心谁在...

2018-12-11 16:24:25 151

原创 PostgreSQL数据类型概述

PostgreSQL支持以下数据类型:布尔类型(boolean)字符类型,如char,varchar和text。数字类型,例如整数和浮点数。时间类型,如date,time,timestamp用于存储通用唯一标识符的[UUID]array(数组),用于存储数组字符串,数字等json 存储json数据hstore存储键值对特殊类型,如网络地址、几何数据、货币数据等。布尔一个...

2018-11-28 11:42:54 1609

原创 zookeeper集群安装

环境准备 zookeeper安装包:http://www-eu.apache.org/dist/zookeeper/stable/zookeeper-3.4.12.tar.gz centos + java 运行环境,这里我分别准备三台centos虚拟机192.168.146.151,192.168.146.152,192.168.146.153 安装配置 解压zooke...

2018-10-25 16:19:17 100

原创 Java Nio选择器Selector

Selector(选择器)是Java NIO中能够检测一到多个NIO通道,并能够知晓通道是否为诸如读写事件做好准备的组件。这样,一个单独的线程可以管理多个channel,从而管理多个网络连接 ,减少服务器的性能开销。创建Selector通过Selector 提供的静态方法创建    Selector selector = Selector.open();通过SelectorProvider获取选择...

2018-07-05 15:55:43 190

原创 Spring-WebFlux简介与使用

简介Spring WebFlux是Spring Framework 5.0中引入的新的反应式Web框架。 与Spring MVC不同,它不需要Servlet API,完全异步和非阻塞, 并通过Reactor项目实现Reactive Streams规范。 并且可以在诸如Netty,Undertow和Servlet 3.1+容器的服务器上运行。Reactor中的Mono和FluxFlux 和 Mono...

2018-06-15 18:44:06 25437 2

原创 Java NIO简介及应用

java nio 简介Java NIO(New IO)是用于Java(来自Java 1.4)的替代IO API,意味着替代标准 Java IO和Java Networking API。 Java NIO提供了与原来IO API不同的工作方式,但是作用和目的是一样的。 NIO支持面向缓冲区的,基于通道的IO操作。 NIO将以更加高效的方式进行文件的读写操作。Java NIO与普通IO的主要区别ion...

2018-06-11 11:20:22 2243

原创 Spring Cloud Sleuth和zipkin微服务跟踪

Spring Cloud Sleuth是为Spring Cloud实现了分布式追踪解决方案。Spring Cloud Sleuth借用了Dapper的术语:    跨度(Span):基本的工作单位。例如,发送一个RPC是一个新的跨度,就像向RPC发送响应一样。跨度由跨度的唯一64位ID和跨度所包含的另一个 64位ID标识。Spans还具有其他数据,例如描述,时间戳事件,键值注释(标记),导...

2018-04-20 16:08:58 16038 4

原创 Centos7使用yum安装nginx

1.下载centos系统对应的packages:wget  http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm  2.创建nginx的yum仓库:rpm -ivh nginx-release-centos-7-0.el7.ngx.noarch.rpm3.下载安装ngin...

2018-03-26 17:35:52 171

原创 Docker的基本使用

为docker添加镜像加速配置阿里镜像加速器 https://cr.console.aliyun.com/#/accelerator 官方文档:https://docs.docker.com/engine/reference/commandline/cli/使用Docker version 18.01.0-ce1,搜索镜像:docker search [option] term  例如 docke...

2018-03-19 18:12:11 183

原创 Api Gateway Zuul简介及SpringCloud中的使用

zuul是设备和网站到Netflix后台应用程序的所有的请求的前门,是一个边缘化应用程序,它的创建是为了实现动态路由,监控,弹性,和安全性

2018-01-11 15:32:15 3910

转载 SpringBoot+quartz实现定时任务

首先明白Quartz核心概念会变得很容易理解配置. 1、Job 表示一个工作,要执行的具体内容。此接口中只有一个方法 void execute(JobExecutionContext context)2、JobDetail JobDetail表示一个具体的可执行的调度程序,Job是这个可执行程调度程序所要执行的内容,另外JobDetail还包含了这个任务调度的方案和策略。3、Trigger代

2017-03-28 15:47:32 437

原创 关系数据库中的三范式

关系数据库的几种设计范式介绍1、第一范式(1NF) 在任何一个关系数据库中,第一范式(1NF)是对关系模式的基本要求,不满足第一范式(1NF)的数据库就不是关系数据库。 所谓第一范式(1NF)是指数据库表的每一列都是不可分割的基本数据项,同一列中不能有多个值,即实体中的某个属性不能有多个值或者不能有重复的属性。如果出现重复的属性,就可能需要定义一个新的实体,新的实体由重复的属性构成,新

2017-03-09 17:09:33 429

转载 Spring Boot 1.5.x新特性:动态修改日志级

Spring Boot 1.5.x新特性:动态修改日志级前天Spring Boot 1.5终于迎来了第一个RELEASE版本:1.5.0,但是由于一个编译依赖问题在第二天直接连击到了1.5.1。该版本的发布包含了超过320位贡献者的奉献、10000多次的代码提交。每次Spring Boot版本更新所带来的新特性都是我们每个用户特别关注的。虽然其中不少特性可能对于大部分用户来说还不一定适用,但是作为基

2017-03-06 17:59:58 405

原创 java使用htmlunit爬取百度搜索信息

在maven项目里添加所需的开源包,这里我使用2.23版本<dependency>           <groupId>net.sourceforge.htmlunit</groupId>          <artifactId>htmlunit</artifactId>          <version>2...

2016-12-01 11:49:26 2920 3

转载 《JAVA8开发指南》为什么你需要关注 JAVA8

本文翻译自《JAVA开发指南》第一章  作者:Raoul-Gabriel Urma   译者:二进制的蛇本章包含代码的可读性多核JAVA8特性的快速指南JAVA8:为什么你需要关注?JAVA已经更新了!在 2014 年 3 月,JAVA发布了新版本-JAVA8,JAVA8 引入的一些新特性可能会改变你日常中基本的编码方式。但不用担心,这本简洁的指南会

2016-10-31 15:04:56 448

转载 Android常用的工具类

一、检查网络是否可用import android.app.AlertDialog;import android.content.Context;import android.content.DialogInterface;import android.net.ConnectivityManager;import android.net.NetworkInfo;public class Co

2016-10-14 10:31:38 255

原创 SpringBoot的多数据源配置

在项目中需要在不同的IP里的数据库获取数据,所以要求要可以灵活的指定具体要操作的数据库。 主要使用的框架是spring-boot+mybatis等。一:先将maven项目配置好(略); 二:springboot的启动类:import org.apache.log4j.Logger;import org.springframework.boot.SpringApplication;import

2016-10-13 16:17:48 3350 3

原创 okhttp3的基本使用

okhttp3的基本使用

2016-07-02 12:16:35 13339 2

超声波模块

超声波模块 测距模块

2015-04-15

12864正弦波

12864正弦波

2014-12-25

4-4-4光立方

4-4-4光立方

2014-12-22

空空如也

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

TA关注的人

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