- 博客(25)
- 资源 (183)
- 收藏
- 关注
原创 SpringBoot连接Redis哨兵模式
1.application.yml###################以下为Redis增加的配置###########################spring: redis: #单机配置 # host: 122.51.50.249 # port: 6380 timeout: 6000 # password: 123456 #######...
2019-10-30 14:47:51 1833
原创 RabbitMQ消息幂等性
1.简介消息幂等性,其实就是保证同一个消息不被消费者重复消费两次。当消费者消费完消息之后,通常会发送一个ack应答确认信息给生产者,但是这中间有可能因为网络中断等原因,导致生产者未能收到确认消息,由此这条消息将会被 重复发送给其他消费者进行消费,实际上这条消息已经被消费过了,这就是重复消费的问题。如何避免重复消费的问题?消费者端实现幂等性,意味着我们的消息永远不会消费多次,即使我们收到了多条...
2019-10-29 17:44:33 1301
原创 SpringBoot整合SpringDataRedis
1. SpringDataRedis简介1.1.Jedis(过时)Jedis是Redis官方推出的一款面向Java的客户端,提供了很多接口供Java语言调用。可以在Redis官网下载,当然还有一些开源爱好者提供的客户端,如Jredis、SRP等等,推荐使用Jedis。1.2.Spring Data Redis(推荐)Spring-data-redis是spring大家族的一部分,提供了在s...
2019-10-29 12:18:40 238
原创 RabbitMQ消息持久化
1.简介在RabbitMQ中,如果遇到RabbitMQ服务停止或者挂掉,那么我们的消息将会出现丢失的情况,为了在RabbitMQ服务重启的情况下,不丢失消息,我们可以将Exchange(交换机)、Queue(队列)与Message(消息)都设置为可持久化的(durable)。这样的话,能够保证绝大部分的消息不会被丢失,但是还有有一些小概率会发生消息丢失的情况。下面通过一个简单的示例总结在Rabb...
2019-10-28 23:43:21 373
原创 RabbitMQ消息确认机制之Confirm模式
1.简介在RabbitMQ中,消息确认主要有生产者发送确认和消费者接收确认:生产者发送确认:指生产者发送消息后到RabbitMQ服务器,如果RabbitMQ服务器收到消息,则会给我们生产者一个应答,用于告诉生产者该条消息已经成功到达RabbitMQ服务器中。消费者接收确认:用于确认消费者是否成功消费了该条消息。消息确认的实现方式主要有两种,一种是通过事务的方式(channel.txSele...
2019-10-28 12:21:22 1783
原创 SpringBoot整合RibbitMQ
1.搭建环境本文是基于Springboot-2.1.4.RELEASE整合RabbitMQ来进行讲解,在真实工作中,生产者和消费者一般是在不同的项目里,各自负责不同的职责,这里为了模拟真实环境,创建两个不同的项目进行演示。创建两个maven项目,消息生产者mq-rabbit-provider和消息消费者mq-rabbit-consumer,两个项目的pom.xml文件添加相同依赖:<?x...
2019-10-27 14:04:47 953
原创 RabbitMQ五种工作模式
1.简介最近,在看一些消息中间件的内容,之前都没有好好学习一下消息中间件。本文将对RabbitMQ中五种常用的工作模式做一个简单的介绍和总结。RabbitMQ常用的工作模式有:简单队列模式、工作队列模式、发布订阅模式、路由模式、主题模式。本文参照RabbitMQ官网示例总结,详细可以到官网查看:https://www.rabbitmq.com/getstarted.html。2.简单队列模式(...
2019-10-26 23:37:07 2462 4
原创 RabbitMQ常用交换机模式
1.简介RabbitMQ中的交换机有Direct Exchange(直连交换机)、Topic Exchange(通配符交换机)、Fanout Exchange(广播式交换机)、Headers Exchange(Headers交换机)四种,常用的就前三种。2.Fanout Exchange(广播式交换机)模型图:这种模式类似于广播的方式,所有发送到Fanout Exchange交换机上的消息,...
2019-10-26 21:01:14 525
原创 RabbitMQ工作模式
1.RabbitMQ常见的工作模式RabbitMQ有以下几种工作模式 :1、Work queues 2、Publish/Subscribe 3、Routing 4、Topics 5、Header 6、RPC2.Work queues2.1.工作模式work queues与入门程序相比,多了一个消费端,两个消费端共同消费同一个队列中的消息。应用场景:对于任务过重或任务较多...
2019-10-24 23:34:42 501 1
原创 RabbitMQ四种交换机类型介绍
最新版本的RabbitMQ有四种交换机类型,分别是Direct exchange、Fanout exchange、Topic exchange、Headers exchange。1.Direct Exchange处理路由键。需要将一个队列绑定到交换机上,要求该消息与一个特定的路由键完全匹配。这是一个完整的匹配。如果一个队列绑定到该交换机上要求路由键 “abc”,则只有被标记为“abc”的消息才...
2019-10-24 22:16:20 901
原创 RabbitMQ基础
1.RabbitMQ初识1.1.RabbitMQ简介MQ全称为Message Queue,即消息队列, RabbitMQ是由erlang语言开发,基于AMQP(Advanced Message Queue 高级消息队列协议)协议实现的消息队列,它是一种应用程序之间的通信方法,消息队列在分布式系统开 发中应用非常广泛。RabbitMQ官方地址:http://www.rabbitmq.com/...
2019-10-22 22:58:35 282
原创 JS模板引擎jTemplates基础使用
1.jTemplate简介jTemplates是一个基于Jquery的js模板引擎插件。该引擎全部代码由JS实现,可以配合AJAX,JSON一起协同工作,模板内容可以用JS代码,实现了活动更新,可以自动从服务器更新模板生成的内容。 使用jTemplates,服务端只需要把对象集合序列化成json格式并传入客户端,客户端再把json对象填充模版生成列表,这样一服务端传输的只是json格式的字符串,...
2019-10-20 22:15:25 1045
原创 SpringCloud服务网关-zuul整合swagger
1.前言在微服务架构下,服务是分散的,怎么把所有服务接口整合到一起是我们需要关注的。下面举例用zuul作为分布式系统的网关,同时使用swagger生成文档,想把整个系统的文档整合在同一个页面上来说明。2.项目的工程文件3.service-a 项目配置3.1.service-a 依赖 <!-- swagger-spring-boot --> <dependency&...
2019-10-20 08:58:05 466
原创 SpringCloud服务网关-zuul高可用
1.引言Zuul的高可用非常关键,因为外部请求到后端微服务的流量都会经过Zuul。故而在生产环境中,我们一般都需要部署高可用的Zuul以避免单点故障。两种场景讨论Zuul的高可用:1.1.Zuul客户端也注册到了Eureka Server上这种情况下,Zuul的高可用非常简单,只需将多个Zuul节点注册到Eureka Server上,就可实现Zuul的高可用。此时,Zuul的高可用与其他微...
2019-10-19 22:16:05 1054
原创 SpringBoot整合swagger2导出API文档
1.下载项目下载https://github.com/Swagger2Markup/spring-swagger2markup-demo下的项目,保存,注意文件路径不要有中文。我们称这个项目为A项目。![在这里插入图片描述](https://img-blog.csdnimg.cn/20191019184854193.png?x-oss-process=image/watermark,type_...
2019-10-19 18:51:24 1685
原创 SpringBoot整合swagger2
1.引言由于Spring Boot能够快速开发、便捷部署等特性,相信有很大一部分Spring Boot的用户会用来构建RESTful API。而我们构建RESTful API的目的通常都是由于多终端的原因,这些终端会共用很多底层业务逻辑,因此我们会抽象出这样一层来同时服务于多个移动端或者Web前端。这样一来,我们的RESTful API就有可能要面对多个开发人员或多个开发团队:IOS开发、An...
2019-10-19 16:04:38 196
原创 SpringCloud服务网关-zuul过滤器
我们了解了 Spring Cloud Zuul 作为网关所具备的最基本功能:路由(Router),下面我们将关注 Spring Cloud Zuul 的另一核心功能:过滤器(Filter)1.Filter的使用场景场景非常多:请求鉴权:一般放在pre类型,如果发现没有访问权限,直接就拦截了异常处理:一般会在error类型和post类型过滤器中结合来处理。服务调用时长统计:pre和post...
2019-10-19 12:24:09 306
原创 SpringCloud断路器-Hystrix
1.Hystrix断路器1.1分布式系统面临的问题复杂分布式体系结构中的应用程序有数十个依赖关系,每个依赖关系在某些时候将不可避免地失败。服务雪崩多个微服务之间调用的时候,假设微服务A调用微服务B和微服务C,微服务B和微服务C又调用其它的微服务,这就是所谓的“扇出”。如果扇出的链路上某个微服务的调用响应时间过长或者不可用,对微服务A的调用就会占用越来越多的系统资源,进而引起系统崩溃,所...
2019-10-18 00:26:39 346
原创 SpringCloud核心组件-5大神兽
1.引言SpringCloud分布式开发五大组件:服务发现——Netflix Eureka客服端负载均衡——Netflix Ribbon断路器——Netflix Hystrix服务网关——Netflix Zuul分布式配置——Spring Cloud Config2.Eureka由两个组件组成:Eureka服务器和Eureka客户端Eureka Client:负责将这个服务的信...
2019-10-16 21:35:09 524
原创 软件架构浅析-CAP理论
1.前言分布式系统(distributed system)正变得越来越重要,大型网站几乎都是分布式的。分布式系统的最大难点,就是各个节点的状态如何同步。CAP 定理是这方面的基本定理,也是理解分布式系统的起点。2.分布式系统的三个指标1998年,加州大学的计算机科学家 Eric Brewer 提出,分布式系统有三个指标。ConsistencyAvailabilityPartiti...
2019-10-16 11:52:10 436
原创 idea在service窗口中显示多个服务
idea在service窗口中显示多个服务如下:.idea > workspace.xml 中找到 RunDashboard 替换成如下 <component name="RunDashboard"> <option name="configurationTypes"> <set> <option value...
2019-10-15 23:02:35 1216
原创 Linux基础
1.Linux的简介1.1.Linux的概述Linux最初是由芬兰赫尔辛基大学学生Linus Torvalds由于自己不满意教学中使用的MINIX操作系统, 所以在1990年底由于个人爱好设计出了LINUX系统核心。后来发布于芬兰最大的ftp服务器上,用户可以免费下载,所以它的周边的程序越来越多,Linux本身也逐渐发展壮大起来,之后Linux在不到三年的时间里成为了一个功能完善,稳定可靠的操...
2019-10-13 23:02:03 245
原创 Shiro基础使用
1.shiro介绍1.1.什么是shiroshiro是apache的一个开源框架,是一个权限管理的框架,实现 用户认证(登录检查)、用户授权(权限控制)。它将软件系统的安全认证相关的功能抽取出来,实现用户身份认证,权限授权、加密(密码加密登录)、会话管理等功能,组成了一个通用的安全认证框1.2.为什么用shiro既然shiro将安全认证相关的功能抽取出来组成一个框架,使用shiro就可...
2019-10-13 12:08:31 301
原创 SpringBoot杀手锏-自动化配置原理
1.前言不论在工作中,亦或是求职面试,Spring Boot已经成为我们必知必会的技能项。除了某些老旧的政府项目或金融项目持有观望态度外,如今的各行各业都在飞速的拥抱这个已经不是很新的Spring启动框架。当然,作为Spring Boot的精髓,自动配置原理的工作过程往往只有在“面试”的时候才能用得上,但是如果在工作中你能够深入的理解Spring Boot的自动配置原理,将无往不利。Spri...
2019-10-09 23:45:56 252
原创 SpringBoot整合SpringData JPA
1.整合步骤1.1.创建一个Maven工程1.2.导入项目中需要的依赖<?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-10-07 22:28:41 214
2年Java开发工程师简历-模板
2023-10-03
基于SSM框架开发汽车租赁系统开发与设.docx
2023-04-19
基于SSM学生成绩管理系统设计与实现论文
2023-04-17
基于JavaEE实验室管理系统开发与设计.doc
2023-03-29
面试专题-并发篇讲义.pdf
2023-03-08
基于Java的零食网站系统设计与实现.doc
2022-12-27
基于SSM框架开发汽车租赁系统开发与设计.doc
2022-07-10
Java线程池技术详解
2022-06-14
JAVASE-面试解惑.pdf
2022-06-12
JavaEE求职简历-姓名-JAVA开发工程师-范文.doc
2022-06-11
JavaEE求职简历-姓名-JAVA开发工程师-范文.doc
2022-06-11
JavaEE求职简历-姓名-JAVA开发工程师-范文.doc
2022-06-11
JavaEE求职简历-姓名-JAVA开发工程师-范文.doc
2022-06-11
JAVA面试问题.docx
2022-06-11
IT面试人事问题汇总.doc
2022-06-11
Java面试题项目汇总.doc
2022-06-11
面试简历-2年Java开发工程师.docx
2022-06-11
JavaSE基础面试题.docx
2022-06-11
JQuery综合练习2.docx
2022-06-11
JQuery综合练习.docx
2022-06-11
SSM框架测试题以及答案解析.docx
2022-06-11
基于P2P的东秦资源共享平台的设计与实现.doc
2022-06-11
ISOMAP与LLE算法的对比研究.wps
2022-06-11
IT面试注意事项.pptx
2022-06-11
JavaEE开发工程师英文自我介绍.doc
2022-06-08
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人