10 Jason_hsu2017

尚未进行身份认证

暂无相关描述

等级
TA的排名 14w+

深入浅出dubbo源码系列--provider启动流程分析

深入浅出dubbo源码系列--provider启动流程分析前言Provider启动主流程几个动态生产类【可以拷贝到对应目录,进行源码的debug】前言Dubb本身具有很强的扩展性:协议有多种实现,注册中心和底层通信框架也有多种选择;我们下面就梳理下dubbo的核心主流程。主要包括三个子流程:consumer启动,provider的启动,接口调用流程。另外注意:注册中心我们选择zookeep...

2019-04-12 17:34:26

深入浅出dubbo源码系列--走进Dubbo

深入浅出dubbo源码系列--走进dubbo什么是RPC什么是DubboDubbo整体架构设计介绍什么是RPC了解dubbo之前,我们先来看下啥是RPC框架,他到底是用来干嘛的呢?在这个微服务盛行的大环境下,很多人应该都有使用过RPC框架的经验;大白话来说:RPC框架最大的作用就是对于client看来说,就像调用本地service方法一样调用远程的服务。他是服务化最最基本的基础组件。Rp...

2019-03-14 13:12:34

hystrix实战--资源隔离技术简介

前言:hystrix中,其实最核心的一个功能就是资源隔离,就是将多个依赖服务的调用分别隔离到各个资源的内部,避免因为依赖服务的失败或者延迟,导致服务所有的线程资源花费在这个伤害,继而导致服务崩塌。线程池隔离和信号量隔离hystrix中主要有两种资源隔离的技术:线程池隔离和信号量隔离。使用场景:线程池隔离技术:大部分的场景下其实都适合用这种技术,对于依赖服务的调用以及访问;能...

2018-08-10 00:09:53

hystrix实战--why hystrix?

背景:在分布式服务架构中,可能会调用很多的远程服务来完成一个业务流程。如果某一个依赖服务有问题;在高并发大数据量的场景下,很多应用服务器(比如tomcat)内部的线程就会卡死在这个调用服务上。更坏的情况,会有越来越多的线程进入等待中;导致没有额外的线程处理该服务中其他的业务接口;进而导致整个服务不可用。如果他本身也是个底层服务,被很多其他服务依赖,那么就可能会导致整个平台的不可用。...

2018-08-09 23:20:55

redis实战--redis cluster的架构搭建

部署步骤因为rediscluster的集群,至少需要3个master去组成一个高可用,高并发的分布式集群,然后每个master也建议都至少挂载一个slave节点。所以对于测试环境,我们可以基于3台虚拟机,启动6个redis的实例进行模拟部署测试。修改配置文件:在每一台机器的配置文件中,修改以下的参数:1.启动rediscluster的功能cluster-enabled...

2018-08-04 21:34:25

redis实战--redis cluster的原理分析

whyrediscluster之前我们以前了解过主从复制,读写分离的架构,他就能够支持一定数据量的场景;为什么我们还需要搭建rediscluster的集群呢?如果我们的缓存数据量只有几个G,那么基于单master的主从架构是足够满足我的需求,可以搭建一主多从的架构,通过搭建sentianl集群来保证redis主从架构的高可用性;后续可以通过增加从节点的数量来保证读的性能。但是如...

2018-08-04 21:01:46

redis实战--基于哨兵的高可用方案解析

前言基本介绍部署步骤不足之处前言前面已经介绍过持久化的两种机制,以及主从复制的原理,部署。这里所谓的高可用,讲的是99.99(或者99.9%或者99%)的时间内,系统是可用的。下面我们就看下哨兵模式的相关概念。基本介绍功能:哨兵是redis集群架构中非常重要的组件,主要有以下几个功能:1.负责监控mater和slave的进程是否正常工作;如果...

2018-07-27 23:05:14

redis实战--redis主从复制实现读写分离(部署搭建)

前言部署步骤读写分离测试前言前面已经介绍过了redis主从复制实现读写分离的原理;这一篇文章主要介绍下如何部署搭建一套主从复制,主从读写分离的环境。部署步骤1.下载下载tcl8.6.1-src.tar.gz和redis-3.2.8.tar.gz;将两个tar包分别上传到服务器的路径上(/usr/local)。2.编译安装依次登陆到服务器上,安...

2018-07-25 23:04:54

redis实战--redis主从复制实现读写分离(原理)

1、redis高并发跟整个系统的高并发之间的关系redis,你要搞高并发的话,不可避免,要把底层的缓存搞得很好mysql,高并发,做到了,那么也是通过一系列复杂的分库分表,订单系统,事务要求的,QPS到几万,比较高了。单机redis的QPS只能是上万,所以就会有系统瓶颈。读写分离,一般来说,对缓存,一般都是用来支撑读高并发的,写的请求是比较少的,可能写请求也就一秒钟几千,一两千...

2018-07-25 15:50:40

redis实战--redis两种持久化方式

前言:持久化的意义RDB持久化机制介绍AOF持久化机制介绍如何配置RDB持久化机制如何配置AOF策略AOF和RDB同时工作前言:说到redis的持久化,大家可能就想到了RDB和AOF两种方式;下面就这两种方案的意义以及两种持久化方案的工作原理。持久化的意义redis的持久化意义在于故障恢复,数据恢复。如果redis服务器挂了,遇到了灾难性的故障...

2018-07-24 19:23:33

使用Nexus配置Maven私有仓库

下载并且安装nexus调整setting.xml的配置测试上传jar包到私服服务器下载并且安装nexus1.从以下网址【https://www.sonatype.com/oss-thank-you-tar.gz】下载对应的版本,我下载的是linux版本的。**解决到安装目录,我安装的是/usr/local;解压命令:tar-zxfnexus-3.12.1...

2018-07-22 14:59:25

MyBatis代码生成器自动生成代码(通过maven组件的方式)

前言:集成步骤总结前言:本文简单介绍下如何利用mybatis生成器插件帮我们生成实体类,dao接口以及Mapping映射文件集成步骤1.在对应的工程的pom文件中加入生成插件。<build><plugins><plugin><gr...

2018-07-22 10:38:52

分布式事务实践(五)--最大努力通知的方案

前言方案简介前言前面几篇文章,我们主要介绍了基于可靠性消息的最终一致性解决方案;有基于本地消息服务的和独立消息服务的,参见之前的文章可靠消息的最终一致性方案(集成独立消息服务)。方案简介最大努力通知方案:适用场景:对于业务最终一致性的时间敏感度比较低的。实现:1.主要由业务活动的主动方,在完成相关业务处理之后,向业务活动的被动方发送消息;消息允许...

2018-07-21 23:29:49

分布式事务实践(四)--可靠消息的最终一致性方案(集成独立消息服务)

前言方案介绍:总结前言经过前面一篇文章的介绍:可靠消息的最终一致性方案(本地消息服务),我们已经了解了基于本地服务的最终一致性方案,本地消息服务有一定的优势,当然也有一定的弊端。这一篇我们就来了解下将本地消息服务优化成独立部署的消息服务子系统。方案介绍:基本架构图:关键模块:生产者模块:业务操作;消息的持久化,投递以及确认,查询等功能。...

2018-07-21 21:21:31

分布式事务实战(三)--可靠消息的最终一致性方案(本地消息服务)

前言经过前面一篇文章的了解(消息一致性问题的分析),我们已经清楚了消息在发送以及接受端会存在一致性的问题;只有解决了消息的一致性问题,才可以在分布式部署环境下我们认为他们是可靠的,进而可以基于可靠消息来保证最终的一致性。方案介绍本文主要介绍下本地消息服务的最终一致性解决方案:整体流程架构图主要是有以下几个关键的模块:生产者模块:业务操作;消息的持久化,投递以及确认,查询等...

2018-07-21 17:54:33

分布式事务实战(二)--可靠消息的最终一致性方案(消息的一致性问题)

前言如何保证一致性问题异常情况分析总结前言消息发送一致性问题:在分布式部署环境下,通过网络进行通讯,就会有数据传世的不确定性,也就是CAP中的P【会出现分区容错性的问题】。主动方发送消息到消息中间件以及消息中间件到被动方应用题都会出现网络的问题;如何保证一致性问题场景:比如说支付模块,订单完成之后需要通知其他系统的场景。解决方式1:先处理本地事务;再...

2018-07-21 17:45:01

分布式事务实战--常用解决方案介绍

前言本地事务全局事务:Bsse理论CAP理论柔性事务前言随着微服务架构的盛行,分布式事务成为大部分企业集成中的一个技术难点;特别是在微服务架构体系下,这个问题尤其突出,可以说是无可避免。可能每个人对于微服务的理解可能都不太一样,下面就聊下分布式事务涉及到的一些概念性的东西,为后续实战做一些理论基础吧;有些部分也是摘自其他人的博客或者官方文档。本地事务...

2018-07-21 14:57:19

深入浅出SpringBoot系列--与Dubbo集成

前言:基本项目工程介绍:服务提供方服务调用方结果测试代码参考:前言:前面文章已经介绍过dubboadmin的如何部署以及安装,不会的可以参见dubboadmin的安装。本文主要介绍下如何与springboot的一个集成。废话不多说了,集成非常简单,支持可插拔的,我们直接来看下是如何做到的吧。基本项目工程介绍:我们看下整体的项目结构:...

2018-07-17 22:17:03

Dubbo admin的安装部署

安装步骤1.编译源码和打包2.安装zookeeper集群3.修改dubbo,properties文件4.部署war包安装步骤1.编译源码和打包现在已经为DubboAdmin单独开了一个GIT项目,Git的地址如下:https://github.com/apache/incubator-dubbo-ops/大家可以从上面的地址下载admin的源码...

2018-07-17 21:42:04

聊聊hashcode和equals

基本概念举例说明:基本概念hashcode:有人说hashcode就是对象的内存地址,这种说法其实过于绝对,应该是根据不同的jvm实现决定的。我理解hashcode的作用是返回哈希码,确定对象在hash表中的位置,所以仅仅当使用散列表的类【hashset,hashmap,hashtable】的时候才有重写的意义。如果是非散标的集合(比如list),就只需要重写e...

2018-07-16 20:31:06

查看更多

勋章 我的勋章
    暂无奖章