当前页共 15 篇文章
2023-04-20
新手java要了解的SpringBoot Starter 作用及原理 Spring Boot Starter 是 Spring Boot 框架中的一个重要组成部分,它的主要作用是简化项目依赖管理和自动配置,使开发者能够更快速、更轻松地创建和部署 Spring Boot 应用程序。 简化项目依赖管理:Starter 是一组预定义好的依赖集合,它将常用的库和框架组合在一起,为特定的功能提供了一致的版本管理。通过引入相应的 Starter,开发者可以避免手动添加和管理多个相关的依赖,从而减少了出错的可能性。 例如,如果你想在项目中使用 Spring Boot 和 MyBatis 进行数据库操作,你可以引入 mybatis-spring-boot-starter,它
  • 诗与远方
  • 2023年04月20日
  • 196 阅读
  • 0 评论
JAVA
2022-04-06
Spring Cloud Alibaba Spring Cloud Alibaba 是阿里巴巴提供的一套微服务开发一站式解决方案。主要提供的功能: 服务限流降级 服务注册与发现 分布式配置中心 消息驱动 分布式事务 阿里云对象存储 阿里云短信 提供的组件: Sentinel Nacos 优势: 中文文档 没有另起炉灶,可以方便的集成到现有项目中 阿里本身在高并发、高性能上的经验,让我们有理由相信这些组件足够可靠 1、Nacos Nacos 主要提供了服务发现、服务配置以及服务管理。基本特性: 服务发现 动态配置 动态 DNS 服务 服务及元数据管理 1.1 安装+配置中心 Docker 安装 下载源码自己编译安装/下
  • 诗与远方
  • 2022年04月06日
  • 564 阅读
  • 0 评论
SpringCloud
2022-04-06
Spring Cloud Sleuth 1.简介 在这种大规模的分布式系统中,一个完整的系统是由很多种不同的服务来共同支撑的。不同的系统可能分布在上千台服务器上,横跨多个数据中心。一旦系统出问题,此时问题的定位就比较麻烦。 分布式链路追踪: 在微服务环境下,一次客户端请求,可能会引起数十次、上百次服务端服务之间的调用。一旦请求出问题了,我们需要考虑很多东西: 如何快速定位问题? 如果快速确定此次客户端调用,都涉及到哪些服务? 到底是哪一个服务出问题了? 要解决这些问题,就涉及到分布式链路追踪。 分布式链路追踪系统主要用来跟踪服务调用记录的,一般来说,一个分布式链路追踪系统,有三个部分: 数据收集 数据存储 数据展示 Spri
  • 诗与远方
  • 2022年04月06日
  • 491 阅读
  • 0 评论
SpringCloud
2022-04-06
Spring Cloud Stream 一、概念 Spring Cloud Stream 用来构建消息驱动的微服务。Spring Cloud Stream 中,提供了一个微服务和消息中间件之间的一个粘合剂,这个粘合剂叫做Binder,Binder 负责与消息中间件进行交互。而我们开发者则通过 inputs 或者 outputs 这样的消息通道与 Binder 进行交互。 二、HelloWorld 创建一个 Spring Cloud Stream 项目,添加三个依赖,web、rabbitmq、cloud stream: 项目创建成功后,添加 RabbitMQ 的基本配置信息: spring.rabbitmq.host=192.168.
  • 诗与远方
  • 2022年04月06日
  • 503 阅读
  • 0 评论
SpringCloud
2022-04-06
【第七章】Flink 常见核心概念分析 在 Flink 这个框架中,有很多独有的概念,比如分布式缓存、重启策略、并行度等,这些概念是我们在进行任务开发和调优时必须了解的,这一课时我将会从原理和应用场景分别介绍这些概念。 分布式缓存 熟悉 Hadoop 的你应该知道,分布式缓存最初的思想诞生于 Hadoop 框架,Hadoop 会将一些数据或者文件缓存在 HDFS 上,在分布式环境中让所有的计算节点调用同一个配置文件。在 Flink 中,Flink 框架开发者们同样将这个特性进行了实现。 Flink 提供的分布式缓存类型 Hadoop,目的是为了在分布式环境中让每一个 TaskManager 节点保存一份相同的数据或者文件,当前计算节
  • 诗与远方
  • 2022年04月06日
  • 509 阅读
  • 0 评论
Flink
2022-04-06
【第六章】Flink 集群安装部署和 HA 配置 我们在这一章节将讲解 Flink 常见的部署模式:本地模式、Standalone 模式和 Flink On Yarn 模式,然后分别讲解三种模式的使用场景和部署中常见的问题,最后将讲解在生产环境中 Flink 集群的高可用配置。 Flink 常见的部署模式 环境准备 在绝大多数情况下,我们的 Flink 都是运行在 Unix 环境中的,推荐在 Mac OS 或者 Linux 环境下运行 Flink。如果是集群模式,那么可以在自己电脑上安装虚拟机,保证有一个 master 节点和两个 slave 节点。 同时,要注意在所有的机器上都应该安装 JDK 和 SSH。JDK 是我们运行 JVM 语言程
  • 诗与远方
  • 2022年04月06日
  • 553 阅读
  • 0 评论
Flink
2022-04-06
【第五章】Flink SQL & Table 编程和案例 我们在第二章使用 Flink Table & SQL 的 API 实现了最简单的 WordCount 程序。在这一课时中,将分别从 Flink Table & SQL 的背景和编程模型、常见的 API、算子和内置函数等对 Flink Table & SQL 做一个详细的讲解和概括,最后模拟了一个实际业务场景使用 Flink Table & SQL 开发。 Flink Table & SQL 概述 背景 我们在前面的课时中讲过 Flink 的分层模型,Flink 自身提供了不同级别的抽象来支持我们开发流式或者批量处理程序,下图描述了 Flink 支持的 4
  • 诗与远方
  • 2022年04月06日
  • 498 阅读
  • 0 评论
Flink
2022-04-06
【第四章】Flink 常用的 DataSet 和 DataStream API 本章节我们主要介绍 Flink 的 DataSet 和 DataStream 的 API,并模拟了实时计算的场景,详细讲解了 DataStream 常用的 API 的使用。 说好的流批一体呢 现状 在前面的课程中,曾经提到过,Flink 很重要的一个特点是“流批一体”,然而事实上 Flink 并没有完全做到所谓的“流批一体”,即编写一套代码,可以同时支持流式计算场景和批量计算的场景。目前截止 1.10 版本依然采用了 DataSet 和 DataStream 两套 API 来适配不同的应用场景。 DateSet 和 DataStream 的区别和联系 在官网或者其他网站上,都可以找到目前 Fl
  • 诗与远方
  • 2022年04月06日
  • 497 阅读
  • 0 评论
Flink
2022-04-06
【第三章】Flink 的编程模型与其他框架比较 本文章主要介绍基于 Flink 的编程模型,包括 Flink 程序的基础处理语义和基本构成模块,并且和 Spark、Storm 进行比较,Flink 作为最新的分布式大数据处理引擎具有哪些独特的优势呢? Flink 的核心语义和架构模型 我们在讲解 Flink 程序的编程模型之前,先来了解一下 Flink 中的 Streams、State、Time 等核心概念和基础语义,以及 Flink 提供的不同层级的 API。 Flink 核心概念 Streams(流),流分为有界流和无界流。有界流指的是有固定大小,不随时间增加而增长的数据,比如我们保存在 Hive 中的一个表;而无界流指的是数据随着时
  • 诗与远方
  • 2022年04月06日
  • 502 阅读
  • 0 评论
Flink
2022-04-06
【第二章】Flink 入门程序 WordCount 和 SQL 实现 本章节我们主要介绍 Flink 的入门程序以及 SQL 形式的实现。 上一章节已经讲解了 Flink 的常用应用场景和架构模型设计,这一课时我们将会从一个最简单的 WordCount 案例作为切入点,并且同时使用 SQL 方式进行实现,为后面的实战课程打好基础。 我们首先会从环境搭建入手,介绍如何搭建本地调试环境的脚手架;然后分别从DataSet(批处理)和 DataStream(流处理)两种方式如何进行单词计数开发;最后介绍 Flink Table 和 SQL 的使用。 Flink 开发环境 通常来讲,任何一门大数据框架在实际生产环境中都是以集群的形式运行,而我们调试代码大多数会在本地搭建一
  • 诗与远方
  • 2022年04月06日
  • 507 阅读
  • 0 评论
Flink
2022-04-06
Spring Cloud Bus Spring Cloud Bus Spring Cloud Bus 通过轻量级的消息代理连接各个微服务,可以用来广播配置文件的更改,或者管理服务监控。安装 RabbitMQ。Docker 中 RabbitMQ 安装命令: docker run -d --hostname my-rabbit --name some-rabbit -p 15672:15672 5672:5672 rabbitmq:3-management 首先给 config-server 和 config-client 分别加上 Spring Cloud Bus 依赖。 <dependency>    <
  • 诗与远方
  • 2022年04月06日
  • 403 阅读
  • 0 评论
SpringCloud
2022-04-06
Spring Cloud Config 基本用法 分布式配置中心解决方案: 国内: 360:QConf 淘宝:diamond 百度:disconf 阿里: Nacos 国外: Apache Commons Configuration owner cfg4j 简介 Spring Cloud Config 是一个分布式系统配置管理的解决方案,它包含了 Client 和 Server 。配置文件放在 Server 端,通过 接口的形式提供给 Client。Spring Cloud Config 主要功能: 集中管理各个环境、各个微服务的配置文件 提供服务端和客户端支持 配置文件修改后,可以快速生效 配置文件通过 Git/SVn
  • 诗与远方
  • 2022年04月06日
  • 515 阅读
  • 0 评论
SpringCloud
2022-04-06
Spring Cloud Gateway 简介 特点: 限流 路径重写 动态路由 集成 Spring Cloud DiscoveryClient 集成 Hystrix 断路器和 Zuul 对比: Zuul 是 Netflix 公司的开源产品,Spring Cloud Gateway 是 Spring 家族中的产品,可以和Spring 家族中的其他组件更好的融合。 Zuul 不支持长连接,例如 websocket。 3. Spring Cloud Gateway 支持限流。 Spring Cloud Gateway 基于 Netty 来开发,实现了异步和非阻塞,占用资源更小,性能强于Zuul。 基本用法 Spring Cloud
  • 诗与远方
  • 2022年04月06日
  • 468 阅读
  • 0 评论
SpringCloud
2022-04-02
SpringCloud之 Zuul服务网关 服务网关 Zuul 和 Gateway由于每一个微服务的地址都有可能发生变化,无法直接对外公布这些服务地址,基于安全以及高内聚低耦合等设计,我们有必要将内部系统和外部系统做一个切割。一个专门用来处理外部请求的组件,就是服务网关。 权限问题统一处理 数据剪裁和聚合 简化客户端的调用 可以针对不同的客户端提供不同的网关支持 Spring Cloud 中,网关主要有两种实现方案: Zuul Spring Cloud Gateway Zuul Zuul 是 Netflix 公司提供的网关服务。Zuul 的功能: 权限控制,可以做认证和授权 监控 动态路由 负载均衡 静态资源处理Zuul 中的
  • 诗与远方
  • 2022年04月02日
  • 433 阅读
  • 0 评论
SpringCloud
2022-04-02
Resilience4j 简介 Resilience4j 是 Spring Cloud Greenwich 版推荐的容错解决方案,相比 Hystrix,Resilience4j 专为Java8 以及函数式编程而设计。Resilience4j 主要提供了如下功能: 断路器 限流 基于信号量的隔离 缓存 限时 请求重试 基本用法 首先搭建一个简单的测试环境。 <dependency>    <groupId>junit</groupId>    <artifactId>junit</artifactId>    <version>4.12&l
  • 诗与远方
  • 2022年04月02日
  • 387 阅读
  • 0 评论
SpringCloud