摘要: 1. 背景 服务后台实时收集千万级别在线终端、全国近400个城市的出租车、手机和pad等移动终端的位置点gps信息,然后根据gps所在城市区域,持久化并推送分发给不同的订阅用户。 其业务逻辑图如下: 1.1 需求特征 a 实时性(gps点本身具有实时性的特征,例如打车服务,需要周边实时出租车位置信息 阅读全文
posted @ 2014-03-05 01:00 gisorange 阅读(5808) 评论(2) 推荐(0) 编辑
摘要: 1. 背景 在数据爆炸我们每天被数据困扰的今天,数据量发生指数级的增长,每一年产生的大数据是过去历史的总和。那么在茫茫数据大海中,对于数据生产者,怎么将自己的信息精准投放给所需的用户呢?而对于数据消费者,怎么从海量数据中快速获取自己需要的信息呢?这时推荐引擎应运而生。 推荐应用其实已经走进我们的生活 阅读全文
posted @ 2014-01-12 18:32 gisorange 阅读(3796) 评论(0) 推荐(0) 编辑
摘要:       如果你对Netty有所了解,我们利用Netty写Tcp服务时,通常会继承SimpleChannelUpstreamHandler类,重写messageReceived函数进行数据的接收,如下就是个简单的tcp短连接服务样例:           但是,如果有高并发用户,数据发送出现乱序。 阅读全文
posted @ 2013-12-03 11:27 gisorange 阅读(21378) 评论(1) 推荐(0) 编辑
摘要: 今天和一个90后的表弟打电话。平时一直和他没有啥联系,才了解他近况,作为表哥表示惭愧。他最近开始实习,做汽车行业,并且毕业后也想从事汽车行业。我很开心,觉得他找到自己专业并且喜欢的事情,也鼓励他。虽然现在待遇不高,才能维持租房和伙食,但是可以学习的东西很多,例如为人处世、人脉积累,这些对个人的成长... 阅读全文
posted @ 2013-11-28 00:01 gisorange 阅读(233) 评论(0) 推荐(0) 编辑
摘要: 今天帮一在国企工作的同学搬行李,暂时搁在我这儿。由于时间仓促,他下周三得要离开工作三年多的北京,去武汉长期出差,甚至可能留在武汉。 记得前些天,他还拉我喝酒吐槽:他无意发现了一个同事的待遇比他高,但他认为他自己干的活更重要,表现也更出色。然后说开始寻找更好的工作机会,也纠结于自己未来的归... 阅读全文
posted @ 2013-11-27 23:54 gisorange 阅读(179) 评论(0) 推荐(0) 编辑
摘要: 我们知道,计算机中有很多概念并不容易理解,有些时候一个好的比喻能胜过很多句解释。下面两个是我看到的两个很精彩的比喻,拿出来和大家分享一下。第一比喻是关于吞吐量(throughput)和延迟(latency)的。如果你要搞网络性能优化,这两个概念是你必须要知道的,它们看似简单实则不是。我相信包括... 阅读全文
posted @ 2013-11-25 17:49 gisorange 阅读(227) 评论(0) 推荐(0) 编辑
摘要: 1背景 随着批量处理、流式计算逐渐盛行,我们的后台应用服务也不甘寂寞,逐渐升级,通常也需要集群来同时协作。然而,集群相互之间的通讯逻辑成为了多台机器同时协作的基本模块。本文简单介绍yahoo-s4节点之间通讯机制的client实现。 可能你会说,对每个节点建立一个socket,进行通讯不就ok了... 阅读全文
posted @ 2013-11-20 13:59 gisorange 阅读(368) 评论(0) 推荐(0) 编辑
摘要: 1. 原因 当磁盘满时,程序在调用Pool.getResource(),从jedis实例池pool里借用实例时,出现连接异常,没有可用的jedis实例,异常log如下: 2013-11-17 21:59:37,155 ERROR [TransportFrameEncoderService:97] m 阅读全文
posted @ 2013-11-19 19:04 gisorange 阅读(7879) 评论(0) 推荐(0) 编辑
摘要: 项目中,经常会用到日期操作。今天在项目中,运行发现多线程调用SimpleDateFormat,抛出异常的情况,而且是选择性的抛出,实际环境很难复现。 我们模拟以下2种场景: a、单实例场景1: final DateFormat df = new SimpleDateFormat("yyyyMMdd... 阅读全文
posted @ 2013-11-19 18:58 gisorange 阅读(2060) 评论(0) 推荐(1) 编辑