自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Think Different

享受编程和技术所带来的快乐. 更多关于我:http://heminit.com/about/

原创 【总结】我的十二个架构设计原则

谨记 没有最好的架构,只有最适合的架构 好的架构不是设计出来的,是演进变化而来的 每一位架构师,在做架构设计时,都或多或少地会有一些自己架构设计原则。这里和你分享一些过去一直指导我的一些架构设计原则,希望对你有用。 我的十二个架构设计原则 1、N+1设计 系统中的每个组件都应做到没有...

2019-11-26 12:46:25 1192 2

原创 【思考】你真的知道中台吗?

【思考】你真的知道中台吗?是真中台,还是伪中台?当我们谈论中台时,到底是在谈些什么?中台长什么样子? 你真的知道中台吗? 最近有不少于两百个小伙伴问到了我关于中台的事,今天聊聊中台。 今年在IT圈内,中台的概念确实比较火,你可能在朋友圈,或是各个媒体渠道上天天都能看到跟中台相关的文章和资讯...

2019-11-16 20:34:57 1248 2

原创 微服务架构实战 - 我的经验分享总结2019(系统架构师)架构演进过程-从信息流架构到电商中台架构

背景 很多人问到过我,“你们的微服务架构(百万日活)演进变化是怎么样的?”,“信息流的架构是怎么从0到1的?”,“电商中台架构是怎么样的?”,“能不能分享出来完整的架构图?它们是什么样的?”,“你们遇到过哪些问题?又是如何解决的?”,“技术选型落地是如何进行的?和业务是怎么紧急结合和推进的?”...

2019-09-06 11:01:14 4201 4

原创 SpringCloud从入门到精通教程/SpringCloud Alibaba从入门到精通教程

对于SpringCloud,很多小伙伴问到了我的研究学习资料来源,除官方文档外,特例完整整理一下自己的平时参考学习其他资料,以及分享实战项目源码和代码资源,供大家参考学习 主要教程:SpringCloud教程 Spring Cloud Greenwich,基于Spring Boot 2.1....

2019-08-01 19:40:58 72450 22

原创 SpringBoot从入门到精通教程

对于SpringBoot,很多人咨询了我的研究学习资料来源,除官方文档外,特例完整整理一下自己的平时参考学习其他资料,以及分享实战项目源码和代码资源,供大家参考学习 主要教程 一、我的SpringBoot系列教程(2020.3更新) 我的SpringBoot系列进阶教程(Github仓库源码...

2018-08-25 04:04:35 101135 10

原创 大数据技术学习路线

如果你看完有信心能坚持学习的话,那就当下开始行动吧! 一、大数据技术基础 1、linux操作基础 linux系统简介与安装 linux常用命令–文件操作 linux常用命令–用户管理与权限 linux常用命令–系统管理 linux常用命令–免密登陆配置与网络管理 linux上常用软件安...

2017-06-22 14:19:50 29766 15

原创 架构师技能修炼图,时刻提醒铭记

看完你还有信心坚持的话,那你一定可以成为优秀的架构师!!! 架构师技能图谱: ------------------------------------------------------ ------------------------------------------...

2016-12-14 09:10:41 8494 0

原创 SpringCloud从入门到精通教程(四)- 服务消费者,实现方式二(feign)

需求背景 服务消费者,实现方式二:feign Feign是什么? Feign是一个声明式的web service客户端,它使得编写web service客户端更为容易。创建接口,为接口添加注解,即可使用Feign。Feign可以使用Feign注解或者JAX-RS注解,还支持热插拔的编码器...

2020-07-13 18:34:08 1227 0

原创 SpringCloud从入门到精通教程(三)- 服务消费者,实现方式一(ribbon)

需求背景 服务消费者,实现方式一:ribbon Ribbon是什么? Ribbon是一个客户端组件,提供了一系列完善的配置项,如连接超时,重试等。简单的说,就是在配置文件中列出Load Balancer后面所有的机器,Ribbon会自动的帮助你基于某种规则(如简单轮询,随机连接等)去连接...

2020-07-13 18:33:57 1309 2

原创 SpringCloud从入门到精通教程(二)- 服务提供者

需求背景 服务提供者 Tips技术点 1.@EnableEurekaClient注解 表示这是一个Eureka客户端程序 2. 配置application.yml中eureka属性值 比如填写Eureka注册中心地址等 代码演示 1. 项目目录结构 2.pom.xml依赖组件...

2020-07-13 18:33:45 1717 0

原创 SpringCloud从入门到精通教程(一)- 服务的注册与发现(Eureka)

需求背景 项目中快速集成配置中心·Nacos服务注册发现功能 Tips技术点 1.@EnableDiscoveryClient注解 启用Nacos服务注册发现功能 2. 区分不同环境,实现服务注册发现功能 登录Nacos控制台,新增dev / test / prod三套不同环境,分别...

2020-07-13 18:33:27 4273 4

原创 【总结】SQL性能优化技巧整理汇总
原力计划

背景 一开始会用SQL时,我们都以为使用 MySQL 是非常的简单的,无非都是照着 【select from where group by order by】 这个格式套来套去;从来不会关注 SQL 的耗费时长,更不会关注查询的性能。 但是当用户量上来了,表数据不断暴增,导致我们以前写的 SQ...

2020-06-30 14:26:23 343 0

原创 SpringCloud Alibaba从入门到精通教程(六)- 消息组件RocketMQ快速入门介绍·Server启动安装
原力计划

什么是 RocketMQ? RocketMq是一个由阿里巴巴开源的消息中间件,在设计上借鉴了Kafka,于2012年开源,在2017年成为Apache顶级项目 基本概念: RocketMQ主要由 Producer、Broker、Consumer 三部分组成,其中Producer 负责生产消...

2020-06-04 19:03:33 1022 0

原创 【总结】CentOS7-MySQL5.7之Yum安装方式(替换掉MariaDB)& 五分钟简单快速安装完成
原力计划

背景 CentOS7中,默认安装有MariaDB(MySQL的分支),但有时候,我们还是要在系统中安装自己的MySQL(现在也可以通过docker安装mysql),安装完成之后,会直接覆盖掉MariaDB。 安装步骤 1. 下载MySQL官方的Yum Repository wget -i...

2020-06-04 16:59:01 146 0

原创 SpringCloud Alibaba从入门到精通教程(五)- 项目中快速集成·限流组件Sentinel
原力计划

需求背景 项目中快速集成·限流组件Sentinel Tips技术点 1. 引入spring-cloud-starter-alibaba-sentinel依赖包 注:默认监控所有访问接口 代码演示 1. 项目目录结构 2.pom.xml依赖组件 <?xml versi...

2020-05-18 16:45:03 1102 0

原创 SpringCloud Alibaba从入门到精通教程(四)- 流控组件Sentinel快速入门介绍·Server启动安装

什么是 Sentinel? 分布式系统的流量防卫兵 随着微服务的流行,服务和服务之间的稳定性变得越来越重要。Sentinel 以流量为切入点,从流量控制、熔断降级、系统负载保护等多个维度保护服务的稳定性。 Sentinel 具有以下特征: 丰富的应用场景:Sentinel 承接了阿里巴...

2020-05-18 16:10:27 1018 0

原创 SpringCloud Alibaba从入门到精通教程(三)- 项目中快速集成配置中心·Nacos配置中心管理功能
原力计划

需求背景 项目中快速集成配置中心·Nacos配置中心管理功能 Tips技术点 1.@Value注解 值绑定 2. 区分不同环境,对应不同配置中心管理功能 登录Nacos控制台,新增dev / test / prod三套不同环境,分别对应:开发环境 / 测试环境 / 生产环境 对控制...

2020-05-18 15:13:04 1346 0

原创 SpringCloud Alibaba从入门到精通教程(二)- 项目中快速集成配置中心·Nacos服务注册发现功能

需求背景 项目中快速集成配置中心·Nacos服务注册发现功能 Tips技术点 1.@EnableDiscoveryClient注解 启用Nacos服务注册发现功能 2. 区分不同环境,实现服务注册发现功能 登录Nacos控制台,新增dev / test / prod三套不同环境,分别...

2020-04-15 11:39:06 2575 2

原创 SpringCloud Alibaba从入门到精通教程(一)- 配置中心Nacos快速入门介绍·Server启动安装

什么是 Nacos? Nacos 致力于帮助我们发现、配置和管理微服务。Nacos 提供了一组简单易用的特性集,帮助我们快速实现动态服务发现、服务配置、服务元数据及流量管理。Nacos 可以帮助我们更敏捷和容易地构建、交付和管理微服务平台。Nacos 是构建以“服务”为中心的现代应用架构 (例如微...

2020-04-14 19:00:17 5242 0

原创 【总结】互联网技术架构中常用的分库分表方案汇总
原力计划

问题背景 一、数据库瓶颈 不管是IO瓶颈,还是CPU瓶颈,最终都会导致数据库的活跃连接数增加,进而逼近甚至达到数据库可承载活跃连接数的阈值。在业务Service来看,就是:可用数据库连接少甚至无连接可用。接下来就可以想象了:并发量、吞吐量、崩溃等 1、IO瓶颈 第一种:磁盘读IO瓶颈,热点...

2020-04-12 23:23:29 583 1

原创 SpringBoot从入门到精通教程(三十二)- MybatisPlus框架动态数据源用法(支持多个DB,动态切换数据源)

需求背景 SpringBoot用法:MybatisPlus框架动态数据源用法(支持多个DB,动态切换数据源) 简介 dynamic-datasource-spring-boot-starter 是一个基于springboot的快速集成多数据源的启动器 优势 网上关于动态数据源的切换的...

2020-03-27 18:48:28 1041 0

原创 SpringBoot从入门到精通教程(三十一)- 爬虫框架集成

需求背景 SpringBoot用法:爬虫框架集成 业务场景 以抓取“今日头条”新闻举例说明 技术点 1. 集成爬虫框架webmagic(更多了解webmagic,可以去官方地址) <dependency> <groupId>us.codecra...

2020-03-15 18:19:42 1065 0

原创 SpringBoot从入门到精通教程(三十)- 支付宝企业支付集成(五分钟集成)

需求背景 SpringBoot用法:支付宝企业支付集成(五分钟集成) 问题痛点 通过SpringBoot框架,集成服务端支付宝企业支付接口,做到下载即用(填写好相关支付宝支付后台相关Key信息),最快五分钟集成成功,节省时间,同时也避免重复采坑。你也可能在此基础上优化代码,或者二次开发...

2020-03-15 17:08:23 3402 0

原创 SpringBoot从入门到精通教程(二十九)- 微信企业支付集成(五分钟集成)

需求背景 SpringBoot用法:微信企业支付集成(五分钟集成) 问题痛点 通过SpringBoot框架,集成服务端微信企业支付接口,做到下载即用(填写好相关微信支付后台相关Key信息),最快五分钟集成成功,节省时间,同时也避免重复采坑。你也可能在此基础上优化代码,或者二次开发,希望对你有用。...

2020-03-06 10:20:45 1030 0

原创 SpringBoot从入门到精通教程(二十八)- 动态修改日志输出级别用法

需求背景 SpringBoot用法:动态修改日志输出级别 问题痛点 SpringBoot在 spring-boot-starter-actuator 模块中提供了日志相关的EndPoint,通过该EndPoint可以在项目运行时不需要重启服务就可以修改日志的打印级别,解决了以前修改日志打印级别必...

2020-03-05 10:15:47 554 0

原创 SpringBoot从入门到精通教程(二十七)- @Valid注解用法详解+全局处理器Exception优雅处理参数验证用法

问题痛点 用Spring 框架写代码时,写接口类,相信大家对该类的写法非常熟悉。在写接口时要写效验请求参数逻辑,这时候我们会常用做法是写大量的 if 与 if else 类似这样的代码来做判断.......这样的代码如果按正常代码逻辑来说,是没有什么问题的,不过按优雅来说,简直糟糕透了。不仅不优雅...

2020-03-04 10:51:14 782 0

原创 SpringBoot从入门到精通教程(二十六)- 全局header/body接口请求参数+Swagger2集成/接口规范用法

需求背景 在实际服务端API接口项目开发过程中,会有一些项目约定规范用法Tips,这次整理分享一下我过去使用过的,希望对你有用 问题痛点 项目开发时,没有统一参数规范约定,App对接成本、代码维护成本太高 过去开发人员写代码时,要写很多必须要写但是又重复的代码,比如构造函数、gette...

2019-11-30 02:50:35 1254 0

原创 SpringBoot从入门到精通教程(二十五)- Mybatis-Plus快速开发框架用法

需求背景 Springboot集成:Mybatis-Plus快速开发框架用法 框架介绍 MyBatis-Plus 荣获【2018年度开源中国最受欢迎的中国软件】 TOP5,为简化开发而生 框架有以下三个特点: 1. 润物无声 只做增强不做改变,引入它不会对现有工程产生影响,如丝般顺...

2019-10-25 01:29:30 1472 0

原创 SpringBoot从入门到精通教程(二十四)- Swagger集成用法

需求背景 Springboot集成:Swagger集成用法,本篇介绍Swagger2 问题痛点 手写api文档的几个痛点: 当接口文档需要更新时,需要再次发送一次给前端,文档更新交流不是非常及时,比如showdoc 不能直接在线测试接口,通常需要使用其他工具,比如postman ...

2019-09-21 16:27:01 1345 0

原创 SpringBoot从入门到精通教程(二十三)- Oauth2+JWT集成/SpringSecurity

需求背景 本篇文章讲解如何通过Springboot2集成验证服务JWT Token,以及资源服务的用法(更多官方关于 Oauth2) 此篇在《Oauth2+Token详细用法/SpringSecurity》基础上修改而来,可先去阅读此篇文章 以下内容:主要是讲解用法差异的地方 OA...

2019-09-20 01:04:33 1143 0

原创 SpringBoot从入门到精通教程(二十二)- Oauth2+Token详细用法/SpringSecurity

需求背景 本篇文章讲解如何通过Springboot2集成验证服务Token,以及资源服务的用法(更多官方关于 Oauth2) 概要 主要使用Spring Boot2和SpringSecurity5 OAuth2术语 资源拥有者Resource Owner 用户授权哪些应用程序,能够...

2019-09-18 09:43:17 1567 0

原创 SpringBoot从入门到精通教程(二十一)- MongoDB集成用法

需求背景 Springboot集成:Mongodb实现 技术点 1. 集成mongodb依赖组件 <dependency> <groupId>org.springframework.boot</groupId> <artifa...

2019-09-11 09:21:42 689 0

原创 SpringBoot从入门到精通教程(二十)- 分布式锁用法(基于Redis实现)

需求背景 Springboot集成分布式锁实现:基于Redis实现。通过使用Spring Integration它提供的全局锁实现,同时,它还提供了其他存储的分布式锁实现:如Gemfire,JDBC,Zookeeper等。 代码演示 1. 项目目录结构: 2.pom.xml依赖组件...

2019-08-29 14:36:57 1113 0

原创 SpringBoot从入门到精通教程(十九)- API接口防刷机制

需求背景 Springboot接口防刷机制:通过秘钥生成签名,校验请求源合法性,不同源可以设置不同的秘钥 业务场景: 可用于第三方业务系统回调接口,比如s2s场景下(Server端也可以利用ip白名单,不做签名校验也可以) 可用于一些App端接口发送请求校验(无token下) 代码演...

2019-08-28 11:38:59 1600 1

原创 SpringBoot从入门到精通教程(十八)- 全局异常处理

需求背景 Springboot全局异常处理用法,自定义error请求返回结果,前端可以统一处理服务端返回的内容 解决问题 如果不处理,当发生异常时,程序而又未及时处理捕获的话,前端会收到下面的返回结果,而日志文件中也记录不到了 代码演示 1. 项目目录结构: 2. 新建Gl...

2019-08-28 10:58:59 1061 0

原创 SpringBoot从入门到精通教程(十七)- 日志异步化处理用法

SpringBoot从入门到精通教程(十七)- 日志异步化处理用法 Springboot集成Logback日志框架:日志异步化处理用法

2019-08-27 15:04:57 763 0

原创 SpringBoot从入门到精通教程(十六)- ELK日志集成

SpringBoot从入门到精通教程(十六)- ELK日志集成 Springboot集成Logback日志框架,同时把日志写入ELK实时日志系统中,便于统一查找和分析日志(ELK学习教程)

2019-08-27 14:50:37 1092 0

原创 SpringBoot从入门到精通教程(十五)- Logback日志框架集成

SpringBoot从入门到精通教程(十五)- Logback日志框架集成 Springboot集成Logback日志框架,记录应用相关日志,输出落地到文件中

2019-08-27 14:24:15 1160 0

原创 SpringBoot从入门到精通教程(十四)- Druid连接池集成

SpringBoot从入门到精通教程(十四)- Druid连接池集成 Springboot集成Druid连接池集成,来自阿里的数据库连接池,Druid加入了日志监控,可以很好的监控DB池连接和SQL的执行情况等。

2019-08-23 17:27:01 1207 0

原创 SpringBoot从入门到精通教程(十三)- 全局唯一ID/分布式ID解决方案

SpringBoot从入门到精通教程(十三)- 全局唯一ID/分布式ID解决方案 分布式ID解决方案 1. Springboot集成,使用全局唯一ID(基于Snowflake算法)

2019-08-23 16:09:40 1822 0

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