Apache Flink 是一个流处理框架,用于实时数据处理和流式计算。它可以处理大规模数据流,并提供低延迟和高吞吐量。Flink 支持各种数据源和接口,如 Kafka、HDFS、TCP 流等。它还提供了丰富的数据处理功能,如窗口操作、状态管理、事件时间语义等。Flink…
MySQL 事务、锁和MVCC 以下文章来源于对线面试官 ,作者Java3y 面试官 : 你是怎么理解InnoDB引擎中的事务的? 候选者 :在我的理解下,事务可以使「一组操作」要么全部成功,要么全部失败 候选者 :事务其目的是为了「保证数据最终的一致性」。 候选者…
一文搞懂Spring的SPI机制 Java SPI SPI 全称 Service Provider Interface ,是 Java提供的一套用来被第三方实现或者扩展的接口,它可以用来启用框架扩展和替换组件 。 SPI的作用就是为这些被扩展的API 寻找服务实现 。本质是通过基于接口的 编程+策略模式+配置文件 实现动态加载。可以实现 解耦…
作为一个学Java的,如果没有研究过Netty,那么你对Java语言的使用和理解仅仅停留在表面水平,会点SSH,写几个MVC,访问数据库和缓存,这些只是初等Java程序员干的事。如果你要进阶,想了解Java服务器的深层高阶知识,Netty绝对是一个必须要过的门槛。…
简介 Bitmap(位图)是一种简单且高效的数据结构,用于存储大量的布尔值(例如,集合中某个元素是否存在)。Bitmap通过将每个布尔值表示为一个位,从而实现了高效的内存使用和快速的查询性能。本文将详细介绍Bitmap的原理、应用场景和在Java中的使用方法。 Bitmap原理…
Lambda 表达式是 Java 8 引入的一种新特性,它可以让我们更加简洁地编写代码,提高代码的可读性和可维护性。在这篇文章中,我们将详细讨论 Lambda 表达式的用处以及如何使用。 一. 什么是 Lambda 表达式 Lambda 表达式是一种匿名函数,它没有名称,但它可以像普通函数一样接收参数和返回值。Lambda…
介绍Java8虚拟机的内存区域划分、内存垃圾回收工作原理解析、虚拟机内存分配配置,介绍各垃圾收集器优缺点及场景应用、实践内存故障场景排查诊断,方便读者面临内存故障时有一个明确的思路和方向。 一、背景 Java是一种流行的编程语言,可以在不同的操作系统上运行。它具有跨平台、面向对象、自动内存管理等特点,Java程序在运行时需要使用内存来存储数据和程序状态。…
open-feign调用接口写法总结 POST请求 post请求,数据格式即Content-Type常见的有以下几种 application/json,form-data,x-www-form-urlencoded等,也可以像GET请求一样,参数直接拼接到url中 1、application/json 普通请求 目标接口代码…
HyperLogLog (HLL) 算法经常在数据库中被用来统计某一字段的基数即Distinct Value(DV), 可以使用固定大小的字节计算任意大小的DV。 基数就是指一个集合中不同值的数目,比如[1,2,3,8]的基数就是4,[1,2,3,8,2]的基数还是4,因为2重复了。实际场景中, HLL常用于统计网站或者APP的UV。 Maven…