pfnie的博客

学如逆水行舟,不行则退。以研究源码为乐趣,以写代码为疯狂。

排序:
默认
按更新时间
按访问量

第一节:InnoDB事物的D特性的原理分析

1、抛出我的观点 首先我们应该很清楚的知道,undo日志用来保证事物的C一致性,redo保证事物的A原子性和D持久性,锁保证事物的隔离性。今天我们就来谈谈事物的D持久性。 2、redo 1、基本概念 redo由两部分组成:一是MySQL实例内存中的redo log buffer, 二是磁盘上的re...

2018-11-06 14:08:52

阅读数:57

评论数:1

第十八天:浪迹天涯网上商城(1.0版本)--引入spring cloud sleuth分布式链路追踪

1、需求 我们都知道随着项目的发展,各个底层的服务调用关系复杂,有时候因为某个服务的性能问题导致整个调用链出现故障,那么排查问题是很困难的。现在我们引入Spring Cloud Sleuth分布式链路追踪来解决这个问题。 2、Spring Cloud Sleuth 简介 微服务可以将整个的系统拆分...

2018-11-05 13:47:42

阅读数:23

评论数:0

Hystrix源码解析--hystrixCommand的附属配置如何初始化的(二)

一、为什么HystrixCommand要求我们至少实现一个构造方法 从这篇文章中Hystrix源码解析--从原生的lib开始使用hystrix(一),我们知道,如果使用原生的lib方式来使用hystrix,那么我们的command必须要实现至少一个构造方法,大家有想过为什么要这样么?原因就是hy...

2018-09-09 12:15:50

阅读数:82

评论数:0

Hystrix源码解析--从原生的lib开始使用hystrix(一)

一、HystrixCommand的探讨 我们都知道hystrixCommand是用来隔离调用者和依赖服务的,但是hystrixCommand的使用有很多种,我们按照历史的发展轨迹,从原生的lib开始,教你如何使用hystrixCommand。hystrixCommand究竟是以一种怎么的形式存在...

2018-09-08 18:47:00

阅读数:125

评论数:0

Hystrix源码解析--HystrixCircuitBreaker--从实现探讨原理(三)

一、HystrixCircuitBreaker接口的实现者是谁? HystrixCircuitBreaker接口有两个实现者,分别是:HystrixCircuitBreakerImpl和NoOpCircuitBreaker。NoOpCircuitBreaker是空的断路器实现,用于不开启断路器功...

2018-09-02 18:22:51

阅读数:49

评论数:0

Hystrix源码解析--HystrixCircuitBreaker--从抽象接口说起(二)

一、HystrixCircuitBreaker接口的起源 断路器模式的思想来源于Netflix这家公司。Spring cloud是非常贱的,他搞了一个CircuitBreaker接口,搞得好像HystrixCircuitBreaker是继承自Spring cloud的CircuitBreaker...

2018-09-02 17:14:31

阅读数:27

评论数:0

Hystrix源码解析--HystrixCircuitBreaker--思想层面(一)

一、什么是HystrixCircuitBreaker? HystrixCircuitBreaker可以防止应用程序重复的尝试调用容易失败的依赖服务。HystrixCircuitBreaker的目的和Retry模式的目的是不同的。Retry模式令应用程序不断的去重试调用依赖服务,直到最后成功。而H...

2018-08-25 13:57:39

阅读数:47

评论数:0

第十天七:浪迹天涯网上商城(1.0版本)--Feign基础使用教程

1、为什么选择Feign而不是其他 Feign使得 Java HTTP 客户端编写更方便。Feign 灵感来源于Retrofit、JAXRS-2.0和WebSocket。Feign 最初是为了降低统一绑定Denominator 到 HTTP API 的复杂度,不区分是否支持 Restful。你可...

2018-08-18 13:26:13

阅读数:37

评论数:0

第十六天:浪迹天涯网上商城(1.0版本)--缓存与数据库的一致性问题解析与解决方案

1、需求缓存由于其高并发和高性能的特性,已经在项目中被广泛使用。在读取缓存方面,普遍的做法都是没有啥疑问的,基本都是按照如下的流程进行。但是在更新缓存的时候,却有很多问题,接下来我们慢慢分析。2、表明自己的态度首先我抛出自己的看法,从理论上来说,给缓存设置过期时间,是保证最终一致性的解决方案。这种...

2018-07-01 14:51:20

阅读数:103

评论数:0

第十五天:浪迹天涯网上商城(1.0版本)--商品服务中心接入缓存Redis

1、需求我们都知道随着项目的发展,必定会面临性能瓶颈问题,现在我就提前考虑这个问题,给项目介入缓存。在这里我们先接入Redis的单机版,之后我会介绍集群版。2、实现步骤1、在Linux上面安装Redis服务。2、准备好pom.xml文件3、准备好配置文件4、准备好启动类5、run 起来6、访问验证...

2018-06-24 14:12:36

阅读数:112

评论数:0

第十四天:浪迹天涯网上商城(1.0版本)--spring cloud zuul网关的过滤器运行机制剖析

1、ZuulServlet执行的生命周期在前面的博客第十二天:浪迹天涯网上商城(1.0版本)--spring cloud zuul网关搭建中,我们使用了@EnableZuulProxy注解,开启该注解后,在Spring容器初始化时,会将Zuul的相关配置初始化,其中包含一个Spring Boot的...

2018-06-18 08:27:59

阅读数:133

评论数:0

第十三天:浪迹天涯网上商城(1.0版本)--通用项目骨架的搭建与使用

1、需求我们都知道项目中的服务是越来越多的,需要通过IDE手动建立项目也越来越多,而且这些项目的结构也都是非常类型的,如果慢慢的手动建立效率就太低了。于是我就搞出来了这个基础的项目骨架,提高效率。2、基本骨架的建立1、创建一个项目langjitianya-skeleton, 结构图如下:2、将这个...

2018-06-17 09:58:25

阅读数:127

评论数:0

第十二天:浪迹天涯网上商城(1.0版本)--spring cloud zuul网关搭建

1、需求我们都知道项目中的服务是越来越多的,如果没有一个统一的网关来做分发,那么就会将复杂度带到客户端,所以我们必须搭建网关。2、实现步骤1、创建一个项目langjitianya-gateway2、准备好pom.xml文件3、准备好配置文件4、准备好启动类5、run 起来6、访问验证3、具体实现1...

2018-06-16 22:29:20

阅读数:82

评论数:0

第十一天:浪迹天涯网上商城(1.0版本)--商品服务中心-spring cloud config server 和 client 的情感纠葛

1、问题的背景 在上一篇文章中 第十天:浪迹天涯网上商城(1.0版本)--商品服务中心-spring cloud client的bug发现与解决 我提到的这个问题,后来我发现我错了。解决的方法完全不应该是那样的。   2、解决问题的思路与步骤 1、基于第十天:浪迹天涯网上商城(1.0版本...

2018-06-16 21:03:52

阅读数:280

评论数:1

第十天:浪迹天涯网上商城(1.0版本)--商品服务中心-spring cloud client的bug发现与解决

1、问题的背景在上一篇文章中第九天:浪迹天涯网上商城(1.0版本)--商品服务中心-基于spring cloud + spring boot + swagger 我们阐述了一个异常,我这里再重复一次。分析:从第一处我们可以看到,langjitianya-itemservice从8700端口获取配置...

2018-06-16 14:54:21

阅读数:131

评论数:0

第九天:浪迹天涯网上商城(1.0版本)--商品服务中心-基于spring cloud + spring boot + swagger

1、需求我们都知道项目中的服务是越来越多的,我们必须要把这些服务拆分,面向SOA,降低项目的耦合度。2、实现步骤1、创建一个项目langjitianya-itemservice2、准备好pom.xml文件3、准备好配置文件4、准备好启动类5、run 起来6、访问验证3、具体实现1、项目结构简图第一...

2018-06-16 13:31:57

阅读数:89

评论数:0

第八天:浪迹天涯网上商城(1.0版本)--服务配置中心-基于spring cloud config

1、需求我们都知道项目中的配置文件其实是很多的,如果将这些配置文件散落在每个单独的模块中,势必会造成难以管理的局面,所以我们必须要有一个全局的配置中心。纯理论的东西这篇文章先不说,我们先使用起来,我是要先一系列博客的,后续慢慢的再引出理论层面的东西。2、实现步骤1、创建一个项目langjitian...

2018-06-16 08:54:39

阅读数:89

评论数:0

第七天:浪迹天涯网上商城(1.0版本)--服务注册中心-基于spring cloud eureka

1、需求如果想让项目服务化,就必须搭建起一个服务注册中心。纯理论的东西这篇文章先不说,我们先使用起来,我是要先一系列博客的,后续慢慢的再引出理论层面的东西。2、实现步骤1、创建一个项目langjitianya-server-register-central2、准备好pom.xml文件3、准备好ap...

2018-06-16 07:59:43

阅读数:115

评论数:0

(2)、Spring Boot与Mybatis的整合( 多数据源)

1、背景的介绍有时候我们需要做分库分表,那么肯定存在多数据源,Spring Boot和Mybatis的多数据源是如何整合的呢?比如说我们现在做了一个浪迹天涯管理的后台系统,商品信息是存在itemCenter数据源中的,而与用户相关的信息是存在account数据源中,项目结构如下:2、Spring ...

2018-03-18 21:35:07

阅读数:159

评论数:0

(1)、Spring Boot与Mybatis的整合(单数据源)

1、背景的介绍mybatis-spring-boot-starter主要有两种解决方案,一种是使用注解解决一切问题,一种是简化后的老传统。当然任何模式都需要首先引入mybatis-spring-boot-starter的pom文件。比如说我们现在做了一个浪迹天涯管理的后台系统,整个项目结构如下所示...

2018-03-13 22:47:32

阅读数:161

评论数:0

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