什么时IO,IO都有哪几种类型 IO:IO(input and output).其实就是一次数据访问交互过程,客户端请求读取/写入数据的完整过程。 一次IO一般要经历几个状态。1. 检查数据是否ready。2. 将已经ready的数据copy到用户空间。 我们经常接触到几个IO概念,BIO, …
if we want to group a list with key. we can use new JAVA8 API->groupyingBy。this api provides opretor which can group a list like SQL(select …
业务背景 如果我们在某些场景中,需要存储和查询批量轨迹点(查询历史轨迹)。比如,一个小件员过去几天的经纬度坐标数据。如果app采集小件员轨迹的频率是1个/1秒。那么一天如果工作8小时,一天一个小件员的轨迹量是86060 = 28800个轨迹点。我们通常的做法是将小件员的实时位置信息采集存储到 …
实际场景 假如我们开发了一款APP,用户数量很大,APP定时会采集上报海量的轨迹点。这时,如果我们需要查询给定经纬度POI指定范围的用户信息列表。这就可以用到本文的范围查找了。 技术难点 1. 轨迹点是海量数据 2. 用户的轨迹点实时更新 解决方案 方案一: 1. 使用geohash算法将地球切分 …
锁 每一个java对象都有一个监视器,通过监视器,当有线程获进入到对象的特殊区域时,其他线程就不可以继续进入这个区域。其他线程会进入一个等待区,当特殊区域的线程消费完毕,等待线程中的某个线程可以进入特殊区域。 一个简单的锁demo //定义锁对象 class Lock{ //是否锁定标识 …