Google Guava之RateLimiter核心源码解读(中)
RateLimiter是Google Guava框架的一个限速器,通常用于控制对某个资源的访问速率。
限速常见的有两种实现方式,一种是令牌桶,另一种是漏桶。
RateLimiter选择了令牌桶作为其底层实现,按照固定速率投放令牌,同时支持突发流量。 … [阅读文章]
聊技术聊人生
RateLimiter是Google Guava框架的一个限速器,通常用于控制对某个资源的访问速率。
限速常见的有两种实现方式,一种是令牌桶,另一种是漏桶。
RateLimiter选择了令牌桶作为其底层实现,按照固定速率投放令牌,同时支持突发流量。 … [阅读文章]
今天要介绍的这本书,书名叫《流量是蓝海》。书的作者,是必要商城的CEO毕胜。
毕胜曾经就任于百度,历任总裁助理,市场总监等职务;2008年创办乐淘网并任CEO;2014年创办全球首个C2M电子商务平台——必要商城,现任必要商城CEO。
本书是少有的,既写出了创业的艰辛,遇到的问题,同时又给出了摸索的过程和答案。作者这种苦B的创业经历,即使明知道这样的经历之后能够成功,或许大多数人也是不会选择这条路的。 … [阅读文章]
支持批量处理,最多20张图片,每张最大5M。
优点是操作简单,速度快,质量好。
Optimizilla国内访问速度比较慢,压缩质量也不错,导出的文件名会变。
假设有5个人约好一起去旅行,那么一般来说有2种组织出行方式,一种是自己组织自由行,另一种是跟团旅行。
在Java的JUC工具包中,有两个工具类可以类比这两种旅行方式,分别是CyclicBarrier和CountDownLatch。
两种旅行模式 … [阅读文章]有点遗憾,由于这篇文章有大量的公式,如果直接发表内容公式会显示不了,因此只能发成图片。
如果想获得最佳的文字版阅读体验,请在评论中留下你的邮箱地址,私信分享给你。
以下为图片版本:
参考https://zh.wikipedia.org/wiki/IEEE_754 … [阅读文章]
以下这组数字,来自于Brett Slatkin在2008年谷歌I/O大会的演讲《Building Scalable Web Applications with Google App Engine》。
英文原文:
http://highscalability.com/blog/2009/2/18/numbers-everyone-should-know.html … [阅读文章]
在不需要序列化的字段,添加@JSONField(serialize = false)注解可进行排除。
public class DontSerializeAnnotation { @JSONField(serialize … [阅读文章]权威的百科全书。
Google世界上最好的搜索引擎。
Bing唯一区分国内和国外版的搜索引擎。
上一篇关于TCP的文章,我们讲了TCP是如何一步步设计,来保证其消息发送的可靠性。参见:《TCP的滑动窗口机制,谈谈其设计演化过程(如何从无到有?从不可靠到可靠?)》
这一节,我们就从TCP的三次握手开始,了解一下序号在TCP传输中的具体使用细节。 … [阅读文章]
理解TCP滑动窗口是如何工作的,对于理解TCP的其他知识是至关重要的。
相比于更为简单,同为传输层协议的UDP而言,TCP提供了对传输数据的质量保证。
在可靠性上,TCP确保传输的数据不丢失、不重复,也不会产生乱序。
同时,TCP还提供了流量控制,用于控制数据发送的速度,防止较快主机导致较慢主机的缓冲区溢出。 … [阅读文章]
提到JDK动态代理,相信很多人并不陌生。然而,对于动态代理的实现原理,以及如何编码实现动态代理功能,可能知道的人就比较少了。接下一来,我们就一起来看看JDK动态代理的基本原理,以及如何通过Javassist进行模拟实现。
JDK动态代理 示例以下是一个基于JDK动态代理的hello … [阅读文章]