java 设计模式前篇之UML类图快速入门

UML即统一建模语言:面向对象开发系统的产品进行说明、可视化、和编制文档的标准语言

一.UML图分类

众所周知,UML图可以分为以下几种图:

  • 类图:是用来描述系统中的类以及各个类之间的关系
  • 对象图:对象图描述的是一组对象之间的关系,而不是类之间的关系。它是类图的变体,但是又与之不同,对象显示的类的多个对象而不是实际的类
  • 用例图:是需求分析的产物,主要是用来描述用户是如何使用一个系统的,是用户所能观察和

java 流量控制服务降级神器之Sentinel(1)为什么要选择Sentinel

一、Sentinel是什么

1.什么是Sentinel

Sentinel是阿里巴巴公司开源的面向分布式环境的轻量级流量控制框架

2.主要功能

Sentinel是以流量为切入点,通过多个维度来保护服务和维持系统稳定性的工具

(1)流量控制

用于调整网络包的发送数据,Sentinel相当于一个调配器:

  • 将随机的请求变成顺序的请求
  • 将不同格式的请求格式化为统一的格式的请求

Sentinel在流量控制中的作用

流量控制可以从以下几个角度来说明

java spring与kafka集成即spring-kafka实例讲解

一、消息系统模块说明

消息系统模块

  • common : 公共模块(一般放到maven私服中,供生产者和消费者加载)
  • producer : 生产者服务(一般单独部署,依赖common包)
  • consumer: 消费者服务(一般单独部署,依赖common包)

本文通过一个用户注册的案例来介绍spring与kafka客户端集成的技术实现

  • 用户注册:
    • 插入数据库等操作
    • 发送用户注册消息(生产者),其他相关事务在用户注册后,发

java 一张图说明spring-kafka的基本用法

在java中操作kafka,可以通过kafka-clients或者使用spring-kafka来实现.

本文简要说明一下spring-kafka的使用,通过下面一张图概览spring-kafka的使用

spring-kafka的使用

一、生产者 

1.kafka生产者的初始化
  • kafka生产者主要通过KafkaTemplate对象来进行消息方面的操作
    • KafkaTemplate对象又是通过ProducerFactory对象来构造

java 一张图说明Spring boot中单元测试

一张图说明Spring boot单元测试

单元测试代码一般放在src/test目录下,与src/main结构基本一致

一、添加测试依赖包

  1. <dependency>
  2. <groupId>org.springframework.boot</groupId>
  3. <artifactId>spring-boot-starter-test</artifactId>
  4. <sc