- 博客(902)
- 资源 (55)
- 收藏
- 关注
原创 Spring Cloud Zuul中异常处理细节
Spring Cloud Zuul对异常的处理整体来说还是比较方便的,流程也比较清晰,只是由于Spring Cloud发展较快,各个版本之间有差异,导致有的小伙伴在寻找这方面的资料的时候经常云里雾里,本文将以Dalston.SR3版本为例,来说明Spring Cloud Zuul中的异常处理问题。 本文是Spring Cloud系列的第二十一篇文章,了解前二十篇文章内容有助于更好的理解本文: 1
2017-11-01 16:31:46 10746 1
原创 Spring Cloud Zuul中路由配置细节
上篇文章我们介绍了API网关的基本构建方式以及请求过滤,小伙伴们对Zuul的作用应该已经有了一个基本的认识,但是对于路由的配置我们只是做了一个简单的介绍,本文我们就来看看路由配置的其他一些细节。 本文是Spring Cloud系列的第二十篇文章,了解前十九篇文章内容有助于更好的理解本文: 1.使用Spring Cloud搭建服务注册中心 2.使用Spring Cloud搭建高可用服务注册中
2017-10-31 09:02:40 48200 5
原创 Spring Cloud中的API网关服务Zuul
到目前为止,我们Spring Cloud中的内容已经介绍了很多了,Ribbon、Hystrix、Feign这些知识点大家都耳熟能详了,我们在前文也提到过微服务就是把一个大的项目拆分成很多小的独立模块,然后通过服务治理让这些独立的模块配合工作等。那么大家来想这样两个问题:1.如果我的微服务中有很多个独立服务都要对外提供服务,那么对于开发人员或者运维人员来说,他要如何去管理这些接口?特别是当项目非常大非
2017-10-30 11:01:27 4690
原创 Spring Cloud中Feign配置详解
到目前为止,小伙伴们对Feign的使用已经掌握的差不多了,我们在前文也提到Feign是对Ribbon和Hystrix的整合,那么在Feign中,我们要如何配置Ribbon和Hystrix呢?带着这两个问题,我们来看看本文的内容。 本文是Spring Cloud系列的第十八篇文章,了解前十七篇文章内容有助于更好的理解本文: 1.使用Spring Cloud搭建服务注册中心 2.使用Sprin
2017-10-24 11:24:29 14028 1
原创 Spring Cloud中Feign的继承特性
上篇文章我们了解了Feign的基本使用,在HelloService类中声明接口时,我们发现这里的代码可以直接从服务提供者的Controller中复制过来,这些可以复制的代码Spring Cloud Feign对它进行了进一步的抽象,这里就用到了Feign的继承特性,本文我们就来看看如何利用Feign的继承特性来进一步简化我们的代码。 本文是Spring Cloud系列的第十七篇文章,了解前十六篇
2017-10-17 15:46:26 6537 3
原创 Spring Cloud中声明式服务调用Feign
前面几篇文章我们详细的介绍了Ribbon、RestTemplate、Hystrix组件,这些组件是我们Spring Cloud中非常基础的组件,小伙伴们在使用的过程中可能也发现了这些东西都是同时出现的,而且配置也都非常相似,每次开发都有很多相同的代码,因此,Spring Cloud基于Netflix Feign整合了Ribbon和Hystrix,让我们的开发工作变得更加简单,就像Spring Boo
2017-10-16 17:24:51 10451 1
原创 Spring Cloud中Hystrix仪表盘与Turbine集群监控
Hystrix仪表盘,就像汽车的仪表盘实时显示汽车的各项数据一样,Hystrix仪表盘主要用来监控Hystrix的实时运行状态,通过它我们可以看到Hystrix的各项指标信息,从而快速发现系统中存在的问题进而解决它,OK,本文我们就来看看Hystrix仪表盘要怎么使用。 本文是Spring Cloud系列的第十五篇文章,了解前十四篇文章内容有助于更好的理解本文: 1.使用Spring Cloud
2017-10-13 11:59:57 10228 3
原创 Spring Cloud中Hystrix的请求合并
在微服务架构中,我们将一个项目拆分成很多个独立的模块,这些独立的模块通过远程调用来互相配合工作,但是,在高并发情况下,通信次数的增加会导致总的通信时间增加,同时,线程池的资源也是有限的,高并发环境会导致有大量的线程处于等待状态,进而导致响应延迟,为了解决这些问题,我们需要来了解Hystrix的请求合并。 本文是Spring Cloud系列的第十四篇文章,了解前十三篇文章内容有助于更好的理解本文:
2017-10-12 11:56:11 5816 4
原创 Spring Cloud中Hystrix的请求缓存
高并发环境下如果能处理好缓存就可以有效的减小服务器的压力,Java中有许多非常好用的缓存工具,比如Redis、EHCache等,当然在Spring Cloud的Hystrix中也提供了请求缓存的功能,我们可以通过一个注解或者一个方法来开启缓存,进而减轻高并发环境下系统的压力。OK,本文我们就来看看Hystrix中请求缓存的使用。 本文是Spring Cloud系列的第十三篇文章,了解前十二篇文章内
2017-10-09 17:39:48 5687 2
原创 Spring Cloud中Hystrix的服务降级与异常处理
上篇文章我们看了自定义Hystrix请求命令的问题,使小伙伴们对Hystrix的使用有了进一步的了解,之前两篇文章都有涉及到一个叫做fallbackMethod的东西,我们之前没有细说这个东西,今天我们就来详细说说这个fallbackMethod,也就是服务降级问题。 本文是Spring Cloud系列的第十二篇文章,了解前十一篇文章内容有助于更好的理解本文: 1.使用Spring Cloud搭
2017-09-20 17:20:05 19550 1
原创 Spring Cloud自定义Hystrix请求命令
在上篇文章中,我们介绍了断路器Hystrix的一个简单使用,主要是通过注解来实现断路器的功能的,不过对于Hystrix的使用,除了注解,我们也可以使用继承类的方式来实现,本文我们就来看看另一种Hystrix的使用方式。 本文是Spring Cloud系列的第十一篇文章,了解前十篇文章内容有助于更好的理解本文: 1.使用Spring Cloud搭建服务注册中心 2.使用Spring Cloud搭
2017-09-19 17:08:56 4648 1
原创 Spring Cloud中的断路器Hystrix
什么是微服务?举个简单的例子,我想做一个用户管理项目,里边就三个功能:用户注册、用户登录、用户详情浏览。按照传统的软件开发方式直接创建一个Web项目,分分钟就把这三个功能开发出来了,但是我现在想使用微服务+服务治理的方式来开发:首先我将这个项目拆分为四个微服务,四个微服务各建一个模块,分别是用户注册模块、用户登录模块、用户详情浏览模块和数据库操作模块,这四个模块通过内部服务治理互相调用。但是现在存在
2017-09-16 17:04:38 5377 1
原创 推荐几个Spring Cloud学习资料
研究Spring Cloud也有一段时间了,手头上有一点收集的资料,分享给小伙伴们学习。 博客1.跟我学Spring Cloud 2.周立|Spring Cloud 3.Spring Cloud基础教程(强烈推荐) 4.Spring Cloud系列文章 5.forezp|史上最简单的 Spring Cloud 教程 6.liaokailin的专栏 7.Spring Clo
2017-09-15 11:50:57 48531 1
原创 Spring Cloud中的负载均衡策略
在上篇博客(Spring Cloud中负载均衡器概览)中,我们大致的了解了一下Spring Cloud中有哪些负载均衡器,但是对于负载均衡策略我们并没有去详细了解,我们只是知道在BaseLoadBalancer的chooseServer方法中,调用了IRule中的choose方法来找到一个具体的服务实例,IRule是一个接口,在BaseLoadBalancer它的默认实现是RoundRobinRul
2017-09-14 12:06:49 14763 4
原创 Spring Cloud中负载均衡器概览
在上篇文章中(RestTemplate的逆袭之路,从发送请求到负载均衡)我们完整的分析了RestTemplate的工作过程,在分析的过程中,我们遇到过一个ILoadBalancer接口,这个接口中有一个chooseServer方法是我们选择服务实例的方法,这个也是整个负载均衡中最最核心的部分,那么它到底是采用了什么样的策略从服务提供者列表中选出了一个服务供服务消费者去调用的?这是我们今天要讨论的问题
2017-09-13 08:34:20 4631 2
原创 RestTemplate的逆袭之路,从发送请求到负载均衡
上篇文章我们详细的介绍了RestTemplate发送请求的问题,熟悉Spring的小伙伴可能会发现:RestTemplate不就是Spring提供的一个发送请求的工具吗?它什么时候具有了实现客户端负载均衡的功能的?本文我们就来聊一聊RestTemplate的逆袭之路,看它如何从一个普通的请求发送工具变成了具有客户端负载均衡功能的请求发送工具。本文是Spring Cloud系列的第七篇文章,了解前六篇
2017-09-12 08:35:36 24477 4
原创 Spring RestTemplate中几种常见的请求方式
在Spring Cloud中服务的发现与消费一文中,当我们从服务消费端去调用服务提供者的服务的时候,使用了一个很好用的对象,叫做RestTemplate,当时我们只使用了RestTemplate中最简单的一个功能getForEntity发起了一个get请求去调用服务端的数据,同时,我们还通过配置@LoadBalanced注解开启客户端负载均衡,RestTemplate的功能不可谓不强大,那么今天我
2017-09-11 11:57:19 254137 27
原创 什么是客户端负载均衡
我们之前有一篇文章详述了如何使用nginx实现负载均衡(Nginx+Tomcat搭建集群,Spring Session+Redis实现Session共享),在这篇文章中,我们实现了如何将客户端发来的请求通过Nginx负载均衡服务器发送到不同的上游服务器去处理,这种负载均衡就是一种典型的服务端负载均衡,那么客户端负载均衡是什么?它和服务端负载均衡有什么区别? 本文是Spring Cloud系列的第
2017-09-08 11:48:56 8235
原创 Eureka中的核心概念
本文是Spring Cloud系列的第四篇,前面三篇文章(使用Spring Cloud搭建服务注册中心、使用Spring Cloud搭建高可用服务注册中心、Spring Cloud中服务的发现与消费)我们带大家搭建了服务注册中心,向服务注册中心注册了服务,同时也发现和消费了服务。前面的文章我们是以实际代码操作为主,这篇文章我想对前面三篇文章中涉及到的一些知识点再进行详细的梳理,对于一些前面未涉及到的
2017-09-07 10:16:49 5413 3
原创 Spring Cloud中服务的发现与消费
通过前面两篇文章(使用Spring Cloud搭建服务注册中心、使用Spring Cloud搭建高可用服务注册中心)的学习,相信小伙伴们已经可以自己搭建一个单节点或者多节点的服务注册中心了,同时也能够向这个服务注册中心去注册服务。服务注册成功了,我们就该发现和消费服务了,今天我们就来看看如何实现服务的发现与消费(由于前面两篇文章是本文的基础,因此建议小伙伴们先阅读前面两篇文章,否则直接阅读本文会有点
2017-09-06 10:10:47 6863 8
原创 一点点Github上的学习资料
缘起从年初到现在,在GitHub上也积累了几个开源项目,从我个人的角度来看,我觉得这些开源项目对于JavaEE初学者是有很大的参考价值的,因此我将这些项目和案例分享出来,...
2017-09-05 08:12:14 1345
原创 约约约,文章约起来!
年初做这个公号的初衷是希望能够和各位JavaEE同行有一个交流的平台,但是慢慢的就发现一篇不那么像样的文章都需要耗费许多光景,因此文章的更新频率和技术点的深度一直显得力不...
2017-09-05 08:12:14 1121
原创 使用Spring Cloud搭建高可用服务注册中心
我们需要的,不仅仅是一个服务注册中心而已,而是一个高可用服务注册中心。 上篇博客【使用Spring Cloud搭建服务注册中心】中我们介绍了如何使用Spring Cloud搭建一个服务注册中心,但是搭建好的服务注册中心是一个单节点的服务注册中心,这样一旦发生了故障,那么整个服务就会瘫痪,所以我们需要一个高可用的服务注册中心,那么在Eureka中,我们通过集群来解决这个问题。Eureka
2017-09-04 09:04:49 10144 7
原创 使用Spring Cloud搭建服务注册中心
我们在之前的博客中已经介绍过阿里的分布式服务框架dubbo【Linux上安装Zookeeper以及一些注意事项】【一个简单的案例带你入门Dubbo分布式框架】,但是小伙伴们应该也看到了,阿里的dubbo无法单独完成工作,我们还要借助于Apache上的开源框架zookeeper(不是必须,但是最佳实践莫过于zookeeper),使用zookeeper作为服务注册中心,才能实现一个较好的分布式应用。与
2017-09-03 12:08:25 38373 12
原创 WebSocket刨根问底(四)之五子棋大战江湖
有暇,做了个五子棋大战的小游戏送给各位小伙伴! 用到的知识点有: 1.JavaWeb基础知识(懂jsp,servlet足够) 2.JavaScript和jQuery基本用法 3.了解WebSocket的基本用法 OK,关于第三点,如果小伙伴们之前没有接触过WebSocket,或者对WebSocket并不太熟悉,可以先阅读这三篇文章学习下: 1.WebSo
2017-08-31 10:38:00 4051 4
原创 一个开源的五子棋大战送给各位小伙伴!
有暇,做了个五子棋大战的小游戏送给各位小伙伴!用到的知识点有:1.JavaWeb基础知识(懂jsp,servlet足够)2.JavaScript和jQuery基本用法3....
2017-08-31 07:54:21 1408
原创 WebSocket刨根问底(三)之群聊
前两篇文章【WebSocket刨根问底(一) 】【WebSocket刨根问底(二) 】我们介绍了WebSocket的一些基本理论,以及一个简单的案例,那么今天继续,我们来看一个简单的群聊的案例,来进一步了解WebSocket这个东东。 OK,开始之前,我们先来看看我们今天要实现的效果: 好了,废话不多说,我们进来看看这个东西要怎么样实现吧!创建Web项目这里和上文(We
2017-08-30 09:00:15 3620 10
原创 WebSocket刨根问底(二)
上篇文章【WebSocket刨根问底(一)】中我们对WebSocket的一些基本理论进行了介绍,但是并没有过多的涉及到一些实战的内容,今天我希望能够用几个简单的案例来向小伙伴们展示下WebSocket的一些具体用法。WebSocket API有哪些首先有一点小伙伴们需要明确,那就是WebSocket并不总是用在浏览器和服务器的通信中,只要任意两个使用框架编写,支持WebSocket的应
2017-08-29 10:00:03 10250 12
原创 WebSocket刨根问底(一)
年初的时候,写过两篇博客介绍在Spring Boot中如何使用WebSocket发送消息在Spring Boot框架下使用WebSocket实现消息推送,在Spring Boot框架下使用WebSocket实现聊天功能,最近看到很多小伙伴对WebSocket的讨论还比较火热,so,打算写几篇文章来系统的介绍下websocket。OK,废话不多说,下面开始我们的正文。为什么要有WebSo
2017-08-28 09:13:00 5077
原创 一个简单的案例带你入门Dubbo分布式框架
相信有很多小伙伴都知道,dubbo是一个分布式、高性能、透明化的RPC服务框架,提供服务自动注册、自动发现等高效服务治理方案,dubbo的中文文档也是非常全的,中文文档可以参考这里dubbo.io。由于官网的介绍比较简洁,我这里打算通过Maven多模块工程再给小伙伴们演示一下用法。环境:IntelliJ IDEA2017.1关于如何在IntelliJ IDEA中创建Maven多模块项目,小伙伴们可以
2017-08-26 19:13:49 12898 5
原创 Ajax上传图片以及上传之前先预览
手头上有几个小项目用到了easyUI,一开始决定使用easyUI就注定了项目整体上前后端分离,基本上所有的请求都采用Ajax来完成。在文件上传的时候用到了Ajax上传文件,以及图片在上传之前的预览效果,解决了这两个小问题,和小伙伴们分享下。上传之前的预览方式一先来说说图片上传之前的预览问题。这里主要采用了HTML5中的FileReader对象来实现,关于FileReader对象,如果小伙伴们不了解,
2017-08-25 21:22:27 11263 22
原创 Linux上安装Zookeeper以及一些注意事项
最近打算出一个系列,介绍Dubbo的使用。分布式应用现在已经越来越广泛,Spring Could也是一个不错的一站式解决方案,不过据我了解国内目前貌似使用阿里Dubbo的公司比较多,一方面这个框架也确实很OK,另一方面可能也是因为Dubbo的中文文档比较全的缘故,据Dubbo官网上的消息,阿里已经重新开始了对Dubbo的维护,这也算是使用Dubbo的互联网公司的福音了吧。OK,废话不多说,今天我们就
2017-08-25 12:25:17 20885 3
原创 一个开源的会议管理系统献给给位小伙伴!
有暇,搞了个会议管理系统,供刚入行的小伙伴们学习。涉及到的技术点:1.jQuery、Ajax2.jsp3.Serlvet、Filter、Listener4.MySql5....
2017-08-23 19:08:04 2282 1
原创 一个开源的会议管理系统,适合初学者练手(老司机请忽略)
有暇,搞了个会议管理系统,供刚入行的小伙伴们学习。 涉及到的技术点: 1.jQuery、Ajax 2.jsp 3.Serlvet、Filter、Listener 4.MySql 5.JDBC这些都是JavaWeb的基础知识。效果图如下:1.注册页面2.登录页面3.管理员登录成功页面4.普通用户登录成功页面5.查看我预定的会议6.查看我参与的会议7.查看会议详情8.撤销
2017-08-23 17:52:30 30303 47
原创 IntelliJ IDEA中创建Web聚合项目(Maven多模块项目)
Eclipse用多了,IntelliJ中创建Maven聚合项目可能有小伙伴还不太熟悉,我们今天就来看看。 IntelliJ中创建普通的Java聚合项目相对来说比较容易,不会涉及到web操作,涉及到web的话会有一点点麻烦。我们来一步一步看下。环境:IntelliJ IDEA 2017.1创建parent项目1.打开IDEA,注意这里不要勾选模板,用模板创建过maven项目的小伙伴都知道模板创建项目
2017-08-20 20:53:11 19463 10
原创 从高考到程序员之毕业流水帐
代码写久了,就会莫名的烦躁,索性,写一篇博客回忆一下过往吧!程序员这条路对我来说略显艰辛,但是沿途的收获还是让我非常开心。高考对我来说是一次释放,我并不太喜欢回忆高考,包括高中三年的生活,许多人怀念青春怀念高中,我不怀念。初中毕业时我考了我们县城第二名,然后被省城一所高中录取,免除了三年的学费和生活费,这对身在农村的父母来说节省了很大一部分开支,可是去了城市之后,城市和农村生活的巨大落差体现在方方面
2017-06-11 22:15:21 3990 18
原创 Nginx+Tomcat搭建集群,Spring Session+Redis实现Session共享
小伙伴们好久不见!最近略忙,博客写的有点少,嗯,要加把劲。OK,今天给大家带来一个JavaWeb中常用的架构搭建,即Nginx+Tomcat搭建服务集群,然后通过Spring Session+Redis实现Session共享。 阅读本文需要有如下知识点: 1.Nginx的安装、配置 2.Spring+SpringMVC基本配置 3.Redis缓存的使用 Nginx和Redis我打算后期写几
2017-06-10 18:15:12 11423 3
原创 Shiro中的授权问题(二)
上篇博客(Shiro中的授权问题 )我们介绍了Shiro中最最基本的授权问题,以及常见的权限字符的匹配问题。但是这里边还有许多细节需要我们继续介绍,本节我们就来看看Shiro中授权的一些细节问题。验证流程首先我们要搞明白整个的验证流程是什么样子的。 在上篇博客(Shiro中的授权问题 )中,我们验证Subject是否具备某项权限的时候使用的是isPermitted方法,但是在上上篇博客(初识Shi
2017-03-21 20:25:16 5749
原创 Shiro中的授权问题
在初识Shiro一文中,我们对Shiro的基本使用已经做了简单的介绍,不懂的小伙伴们可以先阅读上文,今天我们就来看看Shiro中的授权问题。 Shiro中的授权,大体上可以分为两大类,一类是隐式角色,还有一类是显式角色。我们来分别看下。隐式角色隐式角色是一种基于角色的访问权限控制,它在使用的过程中,我们直接判断相应的Subject是否是某一种角色,进而判断该Subject是否具备某种权限,比如下面
2017-03-20 20:44:54 4120 4
原创 初识Shiro
Shiro是Apache基金会下的一个开源安全框架,提供了身份验证、授权、密码学和会话管理等功能,Shiro框架不仅直观易用,而且也能提供健壮的安全性,另外一点值得说的是Shiro的前身是一个始于2004的开源项目JSecurity,该项目于2008年加入Apache,并于2010年成为Apache的顶级项目。 OK,以上是关于Shiro的一点简单介绍,实际上,我在之前有一篇关于权限控制的博客在
2017-03-19 14:08:08 5089
Android开发中线程池的使用Demo
2016-08-20
Dagger2中Scope使用Demo
2016-08-15
ButterKnife使用Demo
2016-08-12
Android模拟登录知乎
2016-08-09
DataBindingDemo3
2016-07-31
DataBindingDemo2
2016-07-31
DataBindingDemo
2016-07-31
Android在线视频播放器Demo
2016-05-04
Android自定义View值ProgressBar
2016-05-01
Android中Dialog使用详解
2016-02-16
ImageView的scaleType属性练习
2016-01-26
snackbar使用Demo
2015-12-13
android文件存储源码及笔记
2015-12-12
自定义ContentProvider
2015-12-06
GitForWindows2.6.3
2015-12-01
Spring入门.pdf
2020-02-17
SpringMVC 入门教程.pdf
2020-02-17
MyBatis入门教程
2020-02-17
Spring Boot2 教程.pdf.zip
2020-02-17
GitHub入门与实践
2017-10-16
websocket使用案例
2017-08-28
dubbo入门案例参考
2017-08-26
Ajax上传文件Demo
2017-08-25
SpringSession+Redis实现Session共享案例
2017-06-10
SQLBrite使用Demo
2016-09-18
Retrofit使用Demo
2016-09-13
ViewPager之PageTransformer属性使用Demo
2016-08-28
Android5.0水波纹效果Demo
2016-08-26
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人