自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(20)
  • 资源 (2)
  • 收藏
  • 关注

原创 Spring cloud Zookeeper 系列二 之实现服务远程调用(feign)

一、项目总体介绍 1、项目背景 我们在上一节用zookeer实现了将我们的微服务应用注册到zookeeper上并在程序中进行相关的应用信息的查询,在一个大的系统中每个微服务大多需要相互调用各种服务提供的API进行响应的操作,作为两个独立的应用他们是如何进行通讯的,当下的RPC框架有不少解决方案。 2、功能介绍 ...

2019-08-31 20:49:34 1249

原创 Spring cloud Zookeeper 系列一 之实现服务注册与发现

1、项目背景介绍 spring cloud 中提供了三种注册中心,分别是Eureka, zookeeper,Consul,前面我们采用Eureka实现了服务的注册与发现,今天我们采用zookeeper做为注册中心,和各位一样注册中心我们应该怎么选,他们各自的优势在哪,下面用图表进行三种形式的注册中心简单对比。 在分布式系统中有一个重要的概念叫CAP理论。在总...

2019-08-31 17:59:53 482

原创 Spring cloud 之Netflix Eureka系列四(feign整合服务网关zuul)

一、项目总体介绍 这次项目整合依然复用上一节系列三的代码进行操作,增加新的项目模块(spring-cloud-zuul), 1.1、项目背景:我们的一个系统进行服务拆分后形成许多的微服务,我们需要对这些微服务进行统计的管理,于是我们需要设置一个网管(总入口)对这些服务进行管理(如路由操作、权限的设置、日志操作,配置文件等)。...

2019-08-28 12:51:29 335

原创 Spring cloud 之Netflix Eureka系列三(比RestTemplate更好用的声明式服务调用Feign)

一、项目总体介绍 1.1、项目背景 在上一个系列二中我们用Ribbon封装好的RestTemplate实现了客户端服务端的http调用,但我们发现RestTemplate提供的方法很单一、有时无法满足我们的实际场景需求.我们需要一个更灵活的客户端调用方式。 1.2、项目实现功能 ...

2019-08-25 18:46:06 340

原创 Spring cloud 之Netflix Eureka系列二(hystrix及自定义超时熔断)

一、项目总体介绍(客户端的熔断机制) 1、项目实现功能 当服务端的程序不可用时(服务宕机或者请求超时),为了保障系统的高可用采用熔断机制 2、项目模块介绍(还是采用系列一的代码,分为四个模块,现在将系列一的用户服务客户端(user-service-consumer)进行改造),只改变系列一的二、项目代...

2019-08-24 21:29:51 284

原创 Spring cloud 之Netflix Eureka系列一(Ribbon实现用户服务调用)

一、项目总体介绍 1、项目功能介绍(系统用的jar包版本1.5.8) 1.1、本次项目实现用户服务客户端(消费者)调用用户服务生产者(提供user服务)实现对数据库的相关操作 2、系统模块介绍(项目总共分为4个模块组成) 2.1、user-api ...

2019-08-24 15:55:35 153

原创 Spring哪些你应该知道事

一、为什么要用Spring进行开发(Spring帮我们做了什么) 这个问题我的切入点是我们没有用Spring的时候如何进行程序开发。( 回想没用Spring的时代我们用纯jdbc也可以建立一个系统,实现相关的功能, 但是我们的操作流程比较多,需要写的代码也比较多,有了Spring后,我们可以简化很多操作)。 1.1、数据源管理(Spring JDB...

2019-08-21 21:30:22 118

原创 网络协议之我们不得不知的基础

一、什么是网络协议? "计算机网络"间进行数据传输(通讯)的标准二、为什么要有通讯协议 ? 两台机器进行要进行通讯,如果两台机器用的字符集编码不一样,导致传输的指令无法识别,因此需要统一的标准进行限定。三、常用的网络协议有哪些? TCP/IP协议、HTTP协议、FTP协议、Tel...

2019-08-19 12:25:36 213

原创 Springboot集成mybatis-puls

一、项目目录结构二、系统的jar包依赖<?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-instance" ...

2019-08-18 22:32:22 174

原创 数据库锁之MYSQL表锁行锁与排他锁和共享锁(写锁)排它锁(读锁)的理解

一、为什么要对数据库加锁? 保证数据库数据的安全(不脏读、漏读)二、数据库锁的概念理解 1.1、按照锁的类型划分为 1、共享锁(读锁) 共享锁就是多个事务对于同一数据可以共享一把锁,都能访问到数据,但是只能读不...

2019-08-16 12:53:09 765 1

原创 Docker 的介绍与常用命令以及docker 中安装mysq 5.7

一、docker的介绍 1.1、 一种虚拟化容器技术,可以帮助我们轻松的在Linux上部署各种应用程序 1.2、 运行环境一次创建到处乱跑,有效屏蔽开发、测试、生产环境的差异性,避免过多的繁琐配置 1.3、灵活、轻量、可扩展二、docker的安装(Linux上docker的安装) 2.1、安装docke...

2019-08-12 19:18:47 151

原创 Linux 常用命令

Linux 下常用命令 1、进入指定目录 cd 2、递归永久删除文件 rm -rf fileName 3、查看目录内容 ls 或者 ls -F 创建一个html touch test.html 4、创建一个test文件夹 mkdir test 5、编辑文件 vim fileName 6、移动文件 ,首先进行源文件所在目录 cd /...

2019-08-12 18:40:07 158

原创 多线程之join用法与ThreadLocal用法

package com.gpdi.security.join;/** * @description: 有A、B两个线程一起执行任务、当A线程调用ThreadB.join()方法后会等线程B运行结束后才执行 * * */public class JoinDemo { public static void main(String[] args) { ...

2019-08-11 17:48:34 135

原创 多线程之Condition与BlockQueue介绍与用法

一、Condition 功能介绍:线程间通讯的另一种方式,他的功能和Lock几乎一样 案例说明:下面案例中Condition通过await进行阻塞,然后用single进行唤醒package com.gpdi.security.condition;import java.util.concurrent.locks.Condition...

2019-08-11 17:28:14 228

原创 多线程之单机版的限流工具Semaphore与栅栏工具CyclicBarry

一、Semaphore的作用:限流(并发操作中如果只支持十个并发,就可以用Semaphore进行操作,其余线程都会回阻塞,只有当semaphore中的线程释放令牌其他线程才允许进入)package com.gpdi.security;import java.util.concurrent.Semaphore;/** * * @description:多线程操作的工具类 *...

2019-08-11 13:26:50 421

原创 多线程之java中线程池的使用

一、使用线程池的原因 1、可以减少平凡的创建的线程,耗费cpu资源 2、创建的线程不用去手动的关闭 3、控制线程的数量 4、响应的速度更快二、线程池的5种类型 1、固定数量的 ...

2019-08-10 23:48:48 175

原创 多线程之锁的核心基础(AQS)与ReentranLock以及死锁的理解

一、为什么我们要使用AQS(AbstraceQueueSynchronized) ? 这里我们先介绍下我们使用这个AQS背景,在jdk 1.5之前我们多线程的安全性主要是用Synchronized进行操作,而Synchronized比较死板,当Synchronized修饰的方法、对象获取锁之后其他的线程在当前线程没有释放锁之前是不能访问当前方法的(他的锁是比较重量级的),并...

2019-08-09 23:08:05 478

原创 多线程之线程安全问题的举例与分析

一、线程安全的理解 一个多线程任务中存在多种结果(而我们想要的是唯一的结果)二、多线程的特性原子性 有序性 可见性 为了保证JMM可见性问题,引入了内存屏障,会严格规范指令重排序问题(排序有:编译排序、指令排序、内存排序) 三、线程安全的本质原因 共享变量的可见性问题:在java内存模型中,存在多个线程可以共享一个变量,当一个线程对该变...

2019-08-04 21:40:18 435

原创 多线程之创建一个多线程的几种常用方式(实现多线程的方式有且只有一种 new Thread 方式)

创建多线程的第一种方式: 继承Thread类 class A extends Thread { @Override public void run() { System.out.println("线程A执行了"); } }创建线程的第二种方式: 实现Runnabl...

2019-08-03 22:12:55 392

原创 SpringBoot 使用MockMvc 进行单元测试

一、利用springBoot 脚手架创建一个springBoot项目(地址:start.spring.io)二、引入相关依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</ar...

2019-08-02 15:44:30 321

springboot-mabatisplus-demo.rar

springboot集成mybatis-plus实现增删查改,数据库采用Durid进行管理,mybtis支持xml和注解形式,可直接运行

2019-08-18

springBoo_jdbc

基于msql的多数据源的spring boot web mvc 应用,其中还有webFlux,以及事务的相关操作

2018-09-14

空空如也

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

TA关注的人

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