04 2016 档案

摘要:查看线上日志,遇到一个诡异的问题,就是系统大量空指针的异常,但是没有打印堆栈,导致不方便定位问题。 经过一番代码调试,确定并非程序代码问题。没有线索之后,从Google找到了答案:是因为在server模式下运行的时候,有一个默认选项是 XX:+OmitStackTraceInFastThrow,这个 阅读全文
posted @ 2016-04-29 14:59 土豆条 阅读(7733) 评论(0) 推荐(0) 编辑
摘要:Reactor模式,I/O多路复用,NIO,EPOLL,水平触发模式 阅读全文
posted @ 2016-04-25 00:19 土豆条 阅读(268) 评论(0) 推荐(0) 编辑
摘要:背景 最近写了一个定时任务,期望是同一时间只有一台机器运行即可。因为是应用是在集群环境下跑的,所以需要自己实现类一个简陋的Redis单机锁。 原理 主要是使用了Redis的SET NX特性,成功设置的那个客户端则被认为拿到了锁,没有设置成功的其他客户单则认为没有拿到锁。 在分布式环境下使用锁是挺危险 阅读全文
posted @ 2016-04-18 17:25 土豆条 阅读(568) 评论(0) 推荐(0) 编辑
摘要:Stream:parallel乱序 Java 8 stream流为处理集合时非常方便。遇到的一个坑是为了提高在多核cpu下的性能,尝试了parallel()。数据源是HashSet的,在做分割的时候发现每次跟串行的结果都不一样。 解决方式: + 后来改为有序的LinkedHashSet再使用para 阅读全文
posted @ 2016-04-14 18:17 土豆条 阅读(1452) 评论(0) 推荐(1) 编辑
摘要:为了保护服务器不被刷流量,或者业务方面的一些限制,需要做一些限速措施。 一、http 请求并发连接数模块:ngx_http_limit_conn_module 这个模块可以设置每个定义的变量(比如客户端ip)的并发连接数,比如:某个客户端ip在同一时间内的连接数不能超过某个值。 语法: 1. 定义限 阅读全文
posted @ 2016-04-10 22:44 土豆条 阅读(767) 评论(0) 推荐(0) 编辑
摘要:注:本文参考 源码。 LinkedHashMap是基于HashMap实现的数据结构,与HashMap主要的不同为每个Entry是使用双向链表实现的,并且提供了根据访问顺序进行排序的功能。 LinkedHashMap中的内部类Entry大概如下,可以看到都是基于链表(数据结构意义上的)节点的操作: 当 阅读全文
posted @ 2016-04-01 00:23 土豆条 阅读(268) 评论(0) 推荐(1) 编辑

点击右上角即可分享
微信分享提示