上一页 1 2 3 4 5 6 7 ··· 13 下一页
摘要: Apache commons configuration setDelimiterParsingDisable不生效的处理 项目中有用到commons configuration,版本1.9。 配置初始化大概这样: 在属性配置文件(×.properties)中,如下设置: 经调用发现value的值为 阅读全文
posted @ 2016-07-20 20:34 土豆条 阅读(907) 评论(0) 推荐(0) 编辑
摘要: 最近retrofit比较火,尤其是在app端。于是抽空了解了一下。 阅读全文
posted @ 2016-07-04 01:29 土豆条 阅读(204) 评论(0) 推荐(0) 编辑
摘要: 之前使用线程池都是通过Executors.new...这种方式创建,因为Doug Lea已经给我们做了相对通用的设置,这么做的话简单又安全。但是有时候根据不同的场景可能需要进行一些自定义的操作。 比如,我需要一个初始情况下,使用10条核心线程运行任务,但是考虑到服务器的资源有限,我们希望限制在最多只 阅读全文
posted @ 2016-05-25 00:25 土豆条 阅读(665) 评论(0) 推荐(0) 编辑
摘要: 这是以前做的笔记,前东家的数据库分库分表策略,感觉挺有借鉴价值。 假设数据库数量为10 分库分表键为某个ID: hash = Md5(key).subString(0,4); bucket_index = hash.subString(0,3); table_index = hash.subStri 阅读全文
posted @ 2016-05-11 11:24 土豆条 阅读(3252) 评论(0) 推荐(0) 编辑
摘要: 1、学习如何学习再学习。 2、先应用,再理论;先脉络,再细节。 阅读全文
posted @ 2016-05-03 00:56 土豆条 阅读(211) 评论(0) 推荐(0) 编辑
摘要: 工作中有用到Redis滤重队列。 原来的方法如下: 方法一 + 为了保证操作原子性,使用Redis执行Lua脚本。 + 在脚本中的逻辑是,如果队列不超过某个数值,进行一次lrem操作(队列使用list结构),然后将新元素入列。 优点: 简单,直观。 缺陷: 1. lrem的时间复杂度为O(N),N为 阅读全文
posted @ 2016-05-01 17:50 土豆条 阅读(1761) 评论(0) 推荐(0) 编辑
摘要: 为了形成一个完整清晰的认识,将概念和关系梳理出来,把坑填平。 I/O多路复用 I/O多路复用主要解决传统I/O单线程阻塞的问题。它通过单线程管理多个FD,当监听的FD有状态变化的时候的,调用回调函数,通知用户已经准备完毕。用户收到通知,就可以进行IO操作了。这种机制大大的提高了系统的吞吐量。I/O多 阅读全文
posted @ 2016-05-01 00:09 土豆条 阅读(925) 评论(0) 推荐(0) 编辑
摘要: 查看线上日志,遇到一个诡异的问题,就是系统大量空指针的异常,但是没有打印堆栈,导致不方便定位问题。 经过一番代码调试,确定并非程序代码问题。没有线索之后,从Google找到了答案:是因为在server模式下运行的时候,有一个默认选项是 XX:+OmitStackTraceInFastThrow,这个 阅读全文
posted @ 2016-04-29 14:59 土豆条 阅读(7523) 评论(0) 推荐(0) 编辑
摘要: Reactor模式,I/O多路复用,NIO,EPOLL,水平触发模式 阅读全文
posted @ 2016-04-25 00:19 土豆条 阅读(266) 评论(0) 推荐(0) 编辑
摘要: 背景 最近写了一个定时任务,期望是同一时间只有一台机器运行即可。因为是应用是在集群环境下跑的,所以需要自己实现类一个简陋的Redis单机锁。 原理 主要是使用了Redis的SET NX特性,成功设置的那个客户端则被认为拿到了锁,没有设置成功的其他客户单则认为没有拿到锁。 在分布式环境下使用锁是挺危险 阅读全文
posted @ 2016-04-18 17:25 土豆条 阅读(564) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 ··· 13 下一页