Guava

Guava的Multimap类型无法被序列化和反序列化的解决方法

出现原因: 当一个接口使用Multimap或者接口返回对象使用Multimap类型时会被jackson序列化成类似{empty:false}的格式 解决方法 pom文件中引入jackson-datatype-guava依赖 <dependency> <groupId>com.fasterxml.ja ......
序列 Multimap 类型 方法 Guava

Guava Cache 异步刷新技巧,你值得拥有!

Guava Cache是一款非常优秀的本地缓存框架,提供简洁易用的 API 供开发者使用。 这篇文章,我们聊聊如何使用 Guava Cache 异步刷新技巧带飞系统性能 。 1 基本用法 首先,在 Java 应用中添加 maven 依赖: <dependency> <groupId>com.goog ......
技巧 Guava Cache

Guava集合

Table - 双键Map BiMap - 双向Map Multimap - 多值Map RangeMap - 范围Map ClassToInstanceMap - 实例Map 总结 Guava是google公司开发的一款Java类库扩展工具包,内含了丰富的API,涵盖了集合、缓存、并发、I/O等多 ......
Guava

Google Guava:EventBus

EventBus是Guava中对于事件发布订阅功能的实现,是设计模式中的发布/订阅模式的一种实现方案。 功能概括: 通过eventBus.register注册订阅者,通过eventBus.post方法发布事件,然后根据发布事件的类型(classType),执行所有订阅者中被@Subcribe注解标记 ......
EventBus Google Guava

安利一个java开发利器——guava

前言 工欲善其事必先利其器,一个好的工具让你花更少的时间,干更多的活,一定程度上比较高效地解放了你的的生产力,让你可以有更多的时间搞事情(摸鱼、划水呀),作为java后端开发人员,guava对我们而言,就是这样的工具,今天我们就来了解下这把利器。 guava guava是什么 Guava是Googl ......
利器 guava java

Guava本地环境设置

Guava本地环境设置 这部分指导如何下载和设置Java在机器上。请按照以下步骤来设置环境。 Java SE免费提供链接:下载Java。所以,根据操作系统下载对应版本。 按照说明下载java和运行.exe 在机器上,并按说明安装Java。一旦机器上安装了Java,还需要设置环境变量指向正确的JAVA ......
环境 Guava

并发设计类分析(Guava/Netty)

1. 限流器 1.1 限流器 常见限流算法: 计数器算法 计数器算法是一种简单的限流方法,通过对请求进行计数,当请求达到一定的阈值时,进行限制。这种方法适用于简单场景,但不够灵活。容易出现临界时间点限流失效问题。 滑动窗口算法 滑动窗口算法维护一个时间窗口内的请求数量,通过动态调整窗口大小,可以更灵 ......
设计类 Guava Netty

Guava Preconditions类的各种用法

公众号「架构成长指南」,专注于生产实践、云原生、分布式系统、大数据技术分享。 Guava Preconditions类 提供静态方法列表,用于检查是否使用有效参数值调用方法或构造函数。如果前提条件失败,则会抛出指定的异常。 前置依赖 引入 pom <dependency> <groupId>com. ......
Preconditions Guava

使用 Guava Retry 优雅的实现重试机制

大家好,我是王有志。前两天,我们在项目优化的过程中,引入了重试框架 Guava Retry,今天就来和大家分享一下我们的使用心得。 ......
机制 Guava Retry

Guava---Cache

Cache 概述 A semi-persistent mapping from keys to values. Cache entries are manually added using {@link #get(Object, Callable)} or {@link #put(Object, O ......
Guava Cache

为什么要用Redis做缓存?为什么用Redis而不用map和Guava?

从请求数据的性能和并发角度来回答这两个问题, 假如用户是第一次访问数据库中的某些数据,第一次访问当然会比较慢,因为是直接从硬盘上读取的,数据通过磁盘IO从磁盘上来到内存中,然后通过网络通信传输给用户,假如我们在第一次读取数据时,将数据存储到内存中,然后第二次以后都从内存中直接读取,那么用户请求数据的 ......
Redis 缓存 不用 Guava map

设计模式 - Immutable 模式(Java不变集合类 vs Google Guava不变集合类)

总结 JDK中的unmodifiableList的构造函数是对原始集合的浅拷贝, 而Guava.ImmutableList.copyOf是对原始集合的深拷贝 public class ImmutableDemo { public static void main(String[] args) { L ......
模式 设计模式 Immutable Google Guava

Guava 工具类之 Splitter的使用

Splitter可以对字符串进行分割,在分割时的方式有2种, 1.按字符/字符串分割 2.按正则进行分割 Splitter在分割完成时可以转换成list和map 一.按字符进行分割 //1.用指定字符切分字符串,并转换成list String s1 = "hello|hihi"; String s2 ......
Splitter 工具 Guava

Guava中的增强Map - Table、BiMap、Multimap、RangeMap、ClassToInstanceMap

1. 简介 日常开发中使用Map时经常会遇到很多复杂的处理场景,例如:多个键的Map、不仅可以根据键获取值也可以根据值获取键且不用遍历、重复键的Map、数字等范围内映射相同的值、内存中缓存对象等,Guava提供了以上场景的解决方案。 场景 解决方案 具体实现 多个键的Map Table HashBa ......

guava 缓存刷新 代码记录 刷新缓存,未完成代码

private static AtomicBoolean refreshCaching = new AtomicBoolean(false); private static LoadingCache<String, String> cache1 = CacheBuilder.newBuilder() ......
缓存 代码 guava

使用Guava的ListenableFuture完成异步多线程任务并返回结果

private static ExecutorService executors = new ThreadPoolExecutor(5, 20, 0L, TimeUnit.MILLISECONDS, new LinkedBlockingQueue<Runnable>(10), new ThreadF ......
ListenableFuture 线程 任务 结果 Guava

使用Guava实现单体应用限流

一、概述 服务器流量控制一直都是一个非常重要的问题。因为服务器是有性能瓶颈的,所以后台的接口也有其性能瓶颈,当辛辛苦苦的把多级缓存做好后,觉得可以承受高并发了的时候,服务突然就蹦了,可能是缓存爆掉了,也可能是数据库宕机了。造成这些问题的大多数原因就是流量太高了的问题。当然我们也可以进行服务的分布式部 ......
单体 Guava

Guava---概述

概述 https://guava.dev/ Guava is a set of core Java libraries from Google that includes new collection types (such as multimap and multiset), immutable ......
Guava

ChatGPT 问答00022 Guava Retryer使用

使用Guava Retryer进行方法异常重试的步骤如下: 1. 添加Guava Retryer依赖:在项目的构建文件(如pom.xml)中添加以下依赖项: ```xml com.github.rholder guava-retrying 2.0.0 ``` 2. 在Java代码中引入必要的类: ` ......
ChatGPT Retryer 00022 Guava

[缓存] Google Guava Cache本地缓存框架一览

# 1 序言 + 上一次使用Guava Cache框架还是在2年前浙江某大学的数据服务平台项目中,用于缓存用户的数据服务**购物小车**数据; + 而这一次,是在基于Google Guava Cache + refreshAfterWrite特性来缓存Influxdb的物联网信号数据表的信号字段信息 ......
缓存 一览 框架 Google Cache

浅析本地缓存技术-Guava Cache

本文简要叙述了guava cache的应用场景以及简单的使用方式,通过源码对于guava cache的存储原理以及简单的读写方法进行了介绍。相信通过阅读本文,能够对于常见的guava cache有一个大致的认知。 ......
缓存 Guava Cache 技术

Guava环境设置

Guava本地环境设置 这部分指导如何下载和设置Java在机器上。请按照以下步骤来设置环境。 Java SE免费提供链接:下载Java。所以,根据操作系统下载对应版本。 按照说明下载java和运行.exe 在机器上,并按说明安装Java。一旦机器上安装了Java,还需要设置环境变量指向正确的JAVA ......
环境 Guava

再见,Guava!再见,Ehcache!

# 一、Caffeine介绍 ### 1、缓存介绍 缓存(Cache)在代码世界中无处不在。从底层的CPU多级缓存,到客户端的页面缓存,处处都存在着缓存的身影。缓存从本质上来说,是一种空间换时间的手段,通过对数据进行一定的空间安排,使得下次进行数据访问时起到加速的效果。 就Java而言,其常用的缓存 ......
Ehcache Guava

java限流-基于基于guava实现

1、引入guava依赖 <dependency> <groupId>com.google.guava</groupId> <artifactId>guava</artifactId> <version>23.0</version> </dependency> 2、自定义限流注解 自定义一个限流用的注 ......
guava java

使用guava的cache实现缓存

一、maven <?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 ......
缓存 guava cache

Guava EventBus的具体使用以及源码解析

EventBus是Guava中的一个处理组件间通信的事件总线,是观察者模式的一种实现。相比于MQ更加简洁,轻量,使事件生产者和事件消费者实现解耦分离。 ......
源码 EventBus Guava

Springboot+Guava实现单机令牌桶限流

# 令牌桶算法 > 系统会维护一个令牌(token)桶,以一个恒定的速度往桶里放入令牌(token),这时如果有请求进来想要被处理,则需要先从桶里获取一个令牌(token),当桶里没有令牌(token)可取时,则该请求将被拒绝服务。令牌桶算法通过控制桶的容量、发放令牌的速率,来达到对请求的限制。 > ......
令牌 Springboot 单机 Guava

Guava cache使用总结

import com.google.common.cache.CacheBuilder; import com.google.common.cache.CacheLoader; import com.google.common.cache.LoadingCache; import java.text ......
Guava cache

使用Guava的CaseFormat进行数据规范化

## 需求背景 在数据规范化的过程中,经常面临多种数据源,字段存在不同的命名风格,那有没有一种方法方便我们对字段名称进行规范化。 ## 用什么做 恰好,Guava提供了这种能力。Guava的CaseFormat类可以做到统一命名风格。话不多说,直接看源码。 在CaseFormat中定义了五个枚举值: ......
CaseFormat 数据 Guava

Guava之Map操作(一)

简介: Guava(Google Guava)是一组基于 Java 语言的开源工具类库,由 Google 公司发布并维护。Guava 提供了许多实用的工具类和方法,可以大大简化 Java 编程中一些常见任务的开发难度。内含了丰富的API,涵盖了集合、缓存、并发、I/O等多个方面。使用这些API一方面 ......
Guava Map
共35篇  :1/2页 首页上一页1下一页尾页