一、准备工作 1.1 环境要求 Java: 1.7+ Guava: 15.0+ Apollo客户端默认会引用Guava 19,如果你的项目引用了其它版本,请确保版本号大于等于15.0 Apollo客户端默认会引用Guava 19,如果你的项目引用了其它版本,请确保版本号大于等于15.0 注:对于Ap ...
分类:
其他好文 时间:
2019-09-29 21:26:52
阅读次数:
103
一、概述 提供了字符串基本操作 二、使用 2.1、字符串拼接 字符串的拼接采用的是Guava中的Joiner类中的方法 2.2、字符串分割 2.3、字符串查找【使用jdk中方法】 2.4、字符串变换 输出 发的 ...
分类:
其他好文 时间:
2019-09-25 10:44:51
阅读次数:
117
概述 工具类 就是封装平常用的方法,不需要你重复造轮子,节省开发人员时间,提高工作效率。谷歌作为大公司,当然会从日常的工作中提取中很多高效率的方法出来。所以就诞生了guava。 guava的优点: 高效设计良好的API,被Google的开发者设计,实现和使用 遵循高效的java语法实践 使代码更刻度 ...
分类:
其他好文 时间:
2019-09-23 14:58:07
阅读次数:
90
本随笔旨在分享一些结构化编程思想,如有不妥,望指正,共同学习共同进步!! 1、非空断言 使用jdk自带的Objects类 使用开源guava库 2、非空赋值 使用场景:构造器、java bean的setter方法中 使用jdk自带的Objects类 使用开源guava库 3、guava的参数校验 这 ...
分类:
编程语言 时间:
2019-09-21 23:23:05
阅读次数:
87
前言通过Python爬取十万博文之后,最重要的是要让互联网用户访问到,那么如何做呢?选型从后台框架、前端模板、数据库连接池、缓存、代理服务、限流等组件多个维度选型。后台框架SpringBoot2+、JPA前端框架Vue模块框架Thymeleaf数据库连接池HikariCP缓存Redis限流Guava代理服务Nginx文章编辑Markdown架构博文我们可以通过以下方式访问:https://blog
分类:
编程语言 时间:
2019-09-21 09:25:41
阅读次数:
108
概述 工具类 就是封装平常用的方法,不需要你重复造轮子,节省开发人员时间,提高工作效率。谷歌作为大公司,当然会从日常的工作中提取中很多高效率的方法出来。所以就诞生了guava。 guava的优点: 高效设计良好的API,被Google的开发者设计,实现和使用 遵循高效的java语法实践 使代码更刻度 ...
分类:
其他好文 时间:
2019-09-20 16:50:17
阅读次数:
82
缓存分为本地缓存和远端缓存。常见的远端缓存有Redis,MongoDB;本地缓存一般使用map的方式保存在本地内存中。一般我们在业务中操作缓存,都会操作缓存和数据源两部分。如:put数据时,先插入DB,再删除原来的缓存;ge数据时,先查缓存,命中则返回,没有命中时,需要查询DB,再把查询结果放入缓存 ...
分类:
系统相关 时间:
2019-09-19 01:13:23
阅读次数:
178
一、背景 1. Optional类主要解决空指针异常的问题,避免显式判断空指针,减少null的防御性检查 2. 借鉴了google guava的Optional类 3. Optinal类里有一个字段value,主要就是对value是否为Null的判断和操作 二、创建Optional类的实例,1个构造 ...
分类:
编程语言 时间:
2019-09-17 12:22:26
阅读次数:
119
目的:提高可用性 通过ExecutorService实现队列泄洪 将有并发压力的下游代码放入到线程池的submit方法中,如下: 通过Guava RateLimit 负载均衡的情况下,在单机内部实现限流 需要加入Guava依赖 在方法入口内加上以下代码: 最后: 这里只简单描述了如何最简单的使用,降 ...
分类:
编程语言 时间:
2019-09-13 17:50:51
阅读次数:
120
某些热点数据在短时间内可能会被成千上万次访问,所以除了放在redis之外,还可以放在本地内存,也就是JVM的内存中。 我们可以使用google的guava cache组件实现本地缓存,之所以选择guava是因为它可以控制key和value的大小和超时时间,可以配置LRU策略且guava是线程安全的。 ...
分类:
系统相关 时间:
2019-09-09 19:29:40
阅读次数:
141