- 博客(7)
- 收藏
- 关注
原创 Redis实现任务队列
实现任务队列之前,我们先了解一下使用任务队列有哪些好处: 1. 松耦合。生产者和消费者无需知道彼此的实现细节,只需要约定好任务的描述格式。这使得生产者和消费者可以由不同的团队使用不同的编程语言编写。 2. 易于扩展。消费者可以由多个,而且可以分布在不同的服务器中,借此可以轻易地降低单台服务器的负载。 要实现队列很自然就想到Redis的列表类型,以及LPUS...
2017-03-28 15:52:37
1081
原创 Redis实现访问频率控制
现在系统中由于各种需要,经常遇到一种场景:需要限定每个IP地址每分钟最大访问次数类似的需求。下面是使用Redis实现范文频率限制的一种方式。 场景:要限制每分钟每个用户最多只能访问100个页面。 思路:1. 对每个用户使用一个名为“rate.limiting:用户IP”的字符串类型键; 2. 每次用户访问,使用INCR命令递增该键的键...
2017-03-27 15:50:35
1985
原创 finalize()的真正用法及作用
Java面试中经常会遇到一个问题:final、finally、finalize的区别?今天我只谈大家回答的最不准确也误解最深的一个 —— finalize。谈finalize() 方法之前需要先了解一下Java垃圾回收机制。Java有垃圾回收期负责回收无用对象占据的内存资源。但也有特殊情况:假定你的对象(并非使用new)获得了一块“特殊”的内存区域,由于垃圾回收器只知道释放那些经由ne...
2015-05-13 12:37:07
2970
原创 JSON BSON 效率比较
对于基础知识的学习和理解,请参看两者的官方网站:JSON: http://www.json.org/BSON: http://bsonspec.org/ 这里主要介绍两者对于POJO的转换方式以及效率比对。选择 Jackson JSON Processor 和 bson4jackson 来作为转换器,是因为这两款产品在开发中用的最多。 1. JSONJackso...
2015-04-30 00:20:53
1204
原创 Eclipse如何添加系统字体
今天在网上找了一天,都在找怎么才给eclipse添加新的windows 系统里面的字体,看了好多人都采用的是更改eclipse 下面的 plugins 里面的org.eclipse.jface_3.7.0.v20110928-1505.jar 把它打开然后进入到/org/eclipse/jface/resources这个目录,然后找到xxxxwindows7.properties...
2015-04-23 17:35:01
384
原创 ++i 和 i++ 哪个更高效?
在内建数据类型的情况下,效率没有区别;在自定义数据类型的情况下,++i效率更高!分析1:(在自定义数据类型的情况下)++i返回对象的引用;i++ 总是要创建一个临时对象,在退出函数时还要销毁它,而且返回临时对象的值时还会调用其拷贝构造函数。分析2:i++由于是在使用当前值之后再 +1, 所以需要一个临时变量来转储,而++i 则直接 +1,不存在临时变量的问题。测...
2015-04-15 13:57:36
299
原创 Fibonacci数列
斐波纳契数列(Fibonacci Sequence),又称黄金分割数列。意大利的数学家列昂那多·斐波那契在1202年研究兔子产崽问题时发现了此数列,故又称为“兔子数列”.设一对大兔子每月生一对小兔子,每对新生兔在出生一个月后又下崽(小兔子长到第三个月后每个月又生一对兔子),假若兔子都不死亡,问每个月的兔子总数为多少?分析一下: 第一个月小兔子没有繁殖能力,所以还是一对;...
2014-10-28 12:39:42
299
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人