E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
【UAV】
限流算法与G
uav
a RateLimiter解析
在分布式系统中,应对高并发访问时,缓存、限流、降级是保护系统正常运行的常用方法。当请求量突发暴涨时,如果不加以限制访问,则可能导致整个系统崩溃,服务不可用。同时有一些业务场景,比如短信验证码,或者其它第三方API调用,也需要提供必要的访问限制支持。还有一些资源消耗过大的请求,比如数据导出等(参考记一次线上Java服务CPU100%处理过程),也有限制访问频率的需求。常见的限流算法有令牌桶算法,漏桶
半路雨歌
·
2020-07-27 17:50
java-ee
《天使之城》
——Areyo
uav
isitor?Whoareyouvisiting?——you.——Ican'tseeyou,butIknowyou'rethere.——Let'sgo.——Where?
时间的玫瑰_
·
2020-07-27 16:22
使用G
uav
a RateLimiter限流以及源码解析
前言在开发高并发系统时有三把利器用来保护系统:缓存、降级和限流缓存缓存的目的是提升系统访问速度和增大系统处理容量降级降级是当服务出现问题或者影响到核心流程时,需要暂时屏蔽掉,待高峰或者问题解决后再打开限流限流的目的是通过对并发访问/请求进行限速,或者对一个时间窗口内的请求进行限速来保护系统,一旦达到限制速率则可以拒绝服务、排队或等待、降级等处理常用的限流算法漏桶算法漏桶算法思路很简单,水(请求)先
强力小磊哥
·
2020-07-27 16:58
guava
驼峰下划线连字符转换
importcom.google.common.base.CaseFormat;importlombok.extern.slf4j.Slf4j;/****com.google.g
uav
a*g
uav
a*23.0
niewj
·
2020-07-27 16:10
hbase
json
guava
G
uav
a工具类使用介绍
最近经常使用到g
uav
a工具的东西,每次都要百度查询使用方法,现统一记录一下方便自己使用。
发飙的蜗牛
·
2020-07-27 16:33
guava
[轮子系列]Google G
uav
a之BloomFilter源码分析及基于Redis的重构
本文源地址:http://www.fullstackyang.com/...,转发请注明该地址或segmentfault地址,谢谢!一、背景知识在网上已经有很多关于布隆过滤器的介绍了,这里就不再赘述,下面简单地提炼几个要点:布隆过滤器是用来判断一个元素是否出现在给定集合中的重要工具,具有快速,比哈希表更节省空间等优点,而缺点在于有一定的误识别率(false-positive,假阳性),亦即,它可能
fullstackyang
·
2020-07-27 16:23
java
bloomfilter
guava
redis
无人机设计中的下一个进化步骤
据一些人说,无人驾驶飞机(
UAV
)的商业意义,或无人驾驶飞机,因为他们更为人所知,可能和互联网一样重要。高调的应用如航空摄影和录像,这在很大程度上被民主化的无人机,有群众诉求和相应的高容量。
A奉献经验
·
2020-07-27 14:16
电子技术
详解Java 包扫描实现和应用(Jar篇)
让我们自己写个包扫描上篇文章中介绍了使用File遍历的方式去进行包扫描,这篇主要补充一下jar包的扫描方式,在我们的项目中一般都会去依赖一些其他jar包,比如添加g
uav
a依赖com.google.g
uav
ag
uav
a28.2
·
2020-07-27 11:55
布隆过滤器(BloomFilter)原理 实现和性能测试
当然它也不是完美无缺,它也有自己的缺点,接下来跟随我一起详细了解下BloomFilter的实现原理,以及它优缺点、应用场景,最后再看下Googleg
uav
a包中BloomFilter的实现,并对比下
xindoo
·
2020-07-27 10:28
bloomfilter
布隆过滤器
guava
java
《乐夏2》两期节目没看够?不如听听观众朋友怎么说…
è11éèèè¨è§¤§èèé·11é¨è°±èè·±°5è°·±°è¤§éé±éèè°°¤2é§è·è§èèè¤è¨¤·±°¤èèèè¤èèé¨èèé·éé¤èèè¤è¨°¨*¨éèéé¨è¨·1è·61·@g
uav
aQ
公路61号
·
2020-07-27 00:00
常用限流算法与G
uav
a RateLimiter源码解析
在分布式系统中,应对高并发访问时,缓存、限流、降级是保护系统正常运行的常用方法。当请求量突发暴涨时,如果不加以限制访问,则可能导致整个系统崩溃,服务不可用。同时有一些业务场景,比如短信验证码,或者其它第三方API调用,也需要提供必要的访问限制支持。还有一些资源消耗过大的请求,比如数据导出等(参考记一次线上Java服务CPU100%处理过程),也有限制访问频率的需求。常见的限流算法有令牌桶算法,漏桶
【雨歌】
·
2020-07-22 14:00
无人机相关专业术语
无人机
UAV
(UnmannedAerialVehicle),drone地面控制站GroundControlStation,GCS固定翼fixed-wing旋翼rotary-wingRover陆路,水路多旋翼
云淡风清的Coding
·
2020-07-16 06:19
翻译资源
G
uav
a源码阅读计划:base.Splitter
策略模式(Strategy)定义了一系列的算法,并将每一个算法封装起来,而且使它们还可以相互替换。策略模式让算法的变化不会影响到使用算法的客户。在Splitter中就主要使用了这种模式.主要方法基础写法为:Splitter.on('.').split("a,b,c");第一部分构建Splitter.on()有很多Splitter.on()方法每个参数不同,但他们都在其中构造了Spliter对象.W
缄默的果壳
·
2020-07-16 05:29
源码阅读计划
10.c++给lua传递变量和访问Lua的全局变量
*全局变量访问(普通、表),函数调用(参数,返回值)*注意栈空间的清理,防止内存泄漏1.c++调用lua全局变量(普通)lua_getglobal(lua,"l
uav
ar");//状态指针和变量名printf
嵌入式小小小菜鸟
·
2020-07-16 05:48
lua
Google G
uav
a的splitter用法
google的g
uav
a库是个很不错的工具库,这次来学习其spliiter的用法,它是一个专门用来分隔字符串的工具类,其中有四种用法,分别来小结1基本用法importcom.google.common.base.Splitter
向上攀爬的程序员
·
2020-07-16 05:32
【SpringBoot框架篇】10.API接口限流实战
文章目录简介限流算法漏桶算法令牌桶算法基于g
uav
a的RateLimiter实现常用方法main函数版本API接口限流实战引入依赖自定义注解自定义切面类web接口压测基于Semaphore控制并发数常用方法
命若天定,我就破了这个天
·
2020-07-16 03:45
springBoot
Using apt-file to track down build errors(fatal error: X11/Intrinsic.h: No such file or directory)
58964-failure-to-compile-on-kubunt
uAv
eryhandytooltohelpyouthroughsituationsliketheseisapt-file.Itcatalogsindividualfilesinpackagesandthushelpsyoudiscoverwhi
maimang1001
·
2020-07-16 03:32
linux
学习
[Lua]mac 上安装lua
tar.gztarzxflua-5.2.3.tar.gzcdlua-5.2.3makemacosxmaketestluasudomakeinstall然后输入lua就看到lua的交互模式了localhost:l
uav
ivian
orangleliu
·
2020-07-16 03:09
Lua
spring boot 之 多级缓存实现
一般情况下使用本地缓存,如ehcache,g
uav
a等就可以了,但是针对分布式、集群架构,本地缓存无法做到相互之间数据保持一致,如果使用redis缓存,则需要不断的去连接redis,这个中间也是有一定的资源消耗
linhui258
·
2020-07-16 02:20
cocos2dx lua向c++传字符串问题
++向lua传字符串的问题http://blog.csdn.net/klyhssrs/article/details/52684784现在发现反过来也有同样的问题,自动生成的lua接口代码中使用的是l
uav
al_to_std_string
klyhssrs
·
2020-07-16 01:17
cocos2d-x
G
uav
a基本工具包Base:Null和字符串分割(Splitter)、拼接(Joiner)处理
G
uav
a工程包含了若干被Google的Java项目广泛依赖的核心库,例如:集合[collections]、缓存[caching]、原生类型支持[primitivessupport]、并发库[concurrencylibraries
琦彦
·
2020-07-15 23:45
琦彦の百宝箱
Guava
Java实现布隆过滤器
g
uav
a实现了布隆过滤器我们直接使用即可:com.google.g
uav
ag
uav
a版本自取然后直接用:importcom.google.common.hash.BloomFilter;importcom.google.common.hash.Funnels
feifeichongtian
·
2020-07-15 22:39
布隆过滤器
语言
数据库
redis
java
G
uav
a Lists.transform踩坑小记
下面通过单步调试的结果来查看G
uav
aLists.transform使用过程中需要注意的地方。
mnmalist
·
2020-07-15 22:48
Java
Guava
Lists.transform
Function
G
uav
a源码阅读——base包.Splitter类 转至元数据结尾
Strategy模式:策略模式这个定义了一系列的算法,并将每个算法封装起来,使它们还可以相互替换。策略模式让算法的变化不会影响到使用算法的客户,在Splitter中就主要使用了这种模式。1、首先看一个内部类这个类才是真正去处理字符、字符串、正则表达式的接口,这个接口的定义其实就是策略模式。此接口中只有一个方法,返回的是一个Iterator迭代器,这里我们可以先联想到最终返回的集合的迭代器会和它有关
牧童遥指杏花村丫
·
2020-07-15 18:54
源码阅读
G
uav
a常用方法
简介G
uav
a,中文是石榴的意思,G
uav
a项目,是基于java的Google的开源的工具类库,包含了许多被Google的java项目广泛依赖的核心库,例如:集合、缓存、原生类型支持、并发库、通用注解、
Fanqi0928
·
2020-07-15 17:08
G
uav
a使用之Splitter
Splitter:在G
uav
a官方的解释为:Extractsnon-overlappingsubstringsfromaninputstring,typicallybyrecognizingappearancesofaseparatorsequence.Thisseparatorcanbespecifiedasasinglecharacter
其实我系个好人
·
2020-07-15 16:06
guava
线性代数 (一): 证明实对称矩阵特征向量正交
设矩阵AAA有特征值λ1\lambda_1λ1及特征向量u,λ2\boldu,\lambda_2u,λ2及特征向量v\boldvv即Au=λ1uA\boldu=\lambda_1\bolduAu=λ1
uAv
TeeEye
·
2020-07-15 15:31
线性代数
g
uav
a包里一些类的运用
一.Splitter类的一个运用packagecom.google.common.base;Stringstr="a-b-c";Listattrs=Splitter.on("-").trimResults().splitToList();trimResults()方法:移除分割后的空字符串,方法里传入参数也可指定移除对应的字符Splitter可以将字符串按照指定的分隔符进行分割二.Lists类pu
长江水面写日记
·
2020-07-15 15:15
工具类
Goodbye, MapMaker. Hello, CacheBuilder.
jessitron.blogspot.com/2011/10/goodbye-mapmaker-hello-cachebuilder.html[/url]GooglehasreleasedanewversionofG
uav
a
iteye_19846
·
2020-07-15 14:09
基于Redis+Lua实现分布式限流
一、新建一个Mavne项目,取名为rate_limiter,并引入Lombok和g
uav
a的依赖。
强力小磊哥
·
2020-07-15 13:54
限流
redis
lua
g
uav
a中Table、HashBasedTable、TreeBasedTable详解
Table当我们需要多个索引的数据结构时,大多数时候我们会选择Map>Map>这种Map套Map这种很繁琐的数据结构;最近在学习G
uav
a的时候发现已经提供的有Table集合类型,来支持这种使用场景,Table
随风yy
·
2020-07-15 11:29
【Java工具类】
G
uav
a中RangeMap自定义range区间
原创作品,出自“晓风残月xj”博客,欢迎转载,转载时请务必注明出处(http://blog.csdn.net/xiaofengcanyuexj)。由于各种原因,可能存在诸多不足,欢迎斧正!RangeMap是一种集合类型,它将不相交、且不为空的Range(key)映射给一个值(Value),RangeMap不可以将相邻的区间合并,即使这个区间映射的值是一样的,实现RangeMap也是一个接口,实现它
晓风残月xj
·
2020-07-15 10:46
Guava
Java程序
G
uav
a中TreeRangeMap结构简析
TreeRangeMap之所以能实现按照Range进行排序,这要归功于内部NavigableMap类型的存储变量entriesByLowerBound。NavigableMap是一个接口,继承自SortedMap接口,所以TreeRangeMap具有排序功能。这些接口的使用可以查看此处总结publicfinalclassTreeRangeMapimplementsRangeMap{privatef
阿奴波仔
·
2020-07-15 10:26
java
G
uav
a中Range和Cut简介
G
uav
a中用Range类表示区间,Range中的两个端点是Cut类实例,形如:publicfinalclassRangeimplementscom.google.common.base.Predicate
阿奴波仔
·
2020-07-15 10:54
java
G
uav
a之RangeMap学习小结
简介RangeMap是一种集合类型(collectiontype),它将不相交、且不为空的Range(key)映射给一个值(Value)。RangeMap跟一般的Map一样,存储键值对,按照键来取值。不同于Map的是键的类型必须是Range,也既是一个区间。和RangeSet一样,实现RangeMap也是一个接口,实现它的也只有两个类,分别为mmutableRangeMap和TreeRangeMa
玄大冰
·
2020-07-15 09:44
程序员基础骗
redis(总)
3.为什么要有redis而不用map/g
uav
a做缓存?
℡tang
·
2020-07-15 08:01
redis
#数据库# redis入门到实战
其两者最重要的区别是nosql不使用sql作为查询语句-noql数据库可以不需要固定的表格模式,noql是基于键值对,可以想象成表中的主键和值的对应关系-nosql:redis,memcached,mongodb,g
uav
a
自学IT的攻城狮
·
2020-07-15 08:52
redis
redis
G
uav
a 心得:Range
在G
uav
a中新增了一个新的类型Range,从名字就可以了解到,这个是和区间有关的数据结构。
weixin_42073629
·
2020-07-15 07:28
Google
Guava
面试题之常见解决方案
这样当并发的情况下,根据version字段作为条件来控制并发2.解决限流问题a.漏桶算法,有固定大小的容器,请求来了先缓存在容器中,然后以恒定速度进行处理,多余溢出的丢弃(单机限流)b.Google的G
uav
a
star++
·
2020-07-15 06:05
常见面试题
设计模式之发布订阅模式(4) G
uav
a Eventbus 事件处理
EventBus是G
uav
a实现的的事件处理机制,是设计模式中的发布订/阅模式的优雅和简单的解决方案。
weixin_34059951
·
2020-07-15 05:13
java
设计模式
数据库
G
uav
a ListenableFuture介绍以及使用
使用g
uav
a的ListenableFuture可以帮我们检测Future是否完成了,如果完成就会自动调用回调函数,这样可以减少并发程序的复杂度。使用示例publicstaticvoid
YONGSSU的技术站点
·
2020-07-15 02:38
G
uav
a TreeMultiSet实现原理分析
1存储模型TreeMultiset本身实现了一棵平衡树,并通过用户定义的比对方式进行排序。用户可以通过两种方式定义比较器:数据类型实现Comparable,或者为Set注册Comparator。和普通的Set相比,TreeMultiset允许多个数据在比较器比较结果是相等的。如果相等,则放在此节点下的一个列表中。TreeMultiset定义了两种查找方式:head和tail。和他们的名字相对应,h
云中漫步87
·
2020-07-15 02:29
java
工作日记
G
uav
a学习之RangeMap
在《G
uav
a学习之RangeSet》中谈到了RangeSet的特点及其用法。今天要谈的的RangeMap和RangeSet有许多不一样的。
过往记忆
·
2020-07-15 02:31
Java
Language
Guava学习入门
服务限流-令牌桶算法和漏桶算法
常用的限流算法有令牌桶和和漏桶,而Google开源项目G
uav
a中的RateLimiter使用的就
铁盖
·
2020-07-15 02:25
Google g
uav
a 常用工具类的使用
1.普通集合创建//普通Collection的创建Listlist=Lists.newArrayList();Setset=Sets.newHashSet();Mapmap=Maps.newHashMap();2.针对Map>结构添加数据的技巧以往的写法Map>map=newHashMap>();Listlist=newArrayList();list.add(1);list.add(2);map
森林屿麓
·
2020-07-15 01:27
EventBus最简单的使用
简化了组件之间的通信将事件发送方和接收方执行与活动、碎片和后台线程避免了复杂的和容易出错的依赖性和生命周期问题很快,专门为高性能优化很小(org.greenroboteventbus3.0.0当然还有一种Otto一个基于G
uav
a
pszh
·
2020-07-15 01:01
android
开发
G
uav
a的布隆过滤器
点击上方"张狗蛋的技术之路",选择“置顶或者星标”你的关注意义重大! 程序世界的算法都要在时间,资源占用甚至正确率等多种因素间进行平衡。同样的问题,所属的量级或场景不同,所用算法也会不同,其中也会涉及很多的trade-off。Ifthere’soneruleinprogramming,it’sthis:therewillalwaysbetrade-offs.你是否真的存在 今天我们就来探讨如何判断
程序员历小冰
·
2020-07-15 01:29
G
uav
a集合--Immutable(不可变)集合
所谓不可变集合,顾名思义就是定义了之后不可修改的集合。一.为什么要使用不可变集合不可变对象有很多优点,包括:当对象被不可信的库调用时,不可变形式是安全的;不可变对象被多个线程调用时,不存在竞态条件问题不可变集合不需要考虑变化,因此可以节省时间和空间。所有不可变的集合都比它们的可变形式有更好的内存利用率(分析和测试细节);不可变对象因为有固定不变,可以作为常量来安全使用。创建对象的不可变拷贝是一项很
不懒人
·
2020-07-14 23:00
BloomFilter布隆过滤器使用
google的g
uav
a包中提供了BloomFilter类,我们直接使用它来进行一下简单的测试。
天涯泪小武
·
2020-07-14 23:56
架构
Spring
boot相关实战知识的专栏
G
uav
al API学习之RangeMap
在GoogleG
uav
a官方API上面可以得知:RangeMap是一种集合类型(collectiontype),它将不相交、且不为空的Range(key)映射给一个值(Value)。
sungang1120
·
2020-07-14 23:18
细细品味-Google
Guava
上一页
41
42
43
44
45
46
47
48
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他