自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(9)
  • 收藏
  • 关注

原创 使用 git-filter-repo 重写git记录

最近在做项目的迁移,用到了git-filter-repo重写git记录。以下是详细的操作步骤,希望可以帮助到大家。准备全新的 work 仓库A、work-new空仓库B、 work 仓库C。1.安装git-filter-repo,brew install git-filter-repo。(https://github.com/newren/git-filter-repo)2.将work仓库 A、C,切换到master分支。3.在work A中执行 git filter-repo --path src

2021-04-22 22:14:45 3199

原创 惊天深坑:org.bson.json.JsonParseException: Invalid JSON input. Position: 16. Character: ':'.

前阵子在使用 mongo 查询时碰到了一个很神奇的报错信息,而且该报错信息仅在服务器启动后第一次查询时会产生,后续继续使用就又正常了。针对该问题排查许久未果。最近又重新断点排查了一遍,终于发现了具体报错的原因。其实报错原因很简单,就是在使用注解定义索引时使用了中文的冒号(:),底层代码无法解析该冒号,所以就报错了。我们项目的服务器启动后的首次查询时,会遍历代码中注解的索引,如果该索引在 mon...

2019-12-09 21:15:43 2599

转载 Java线程池知识点整理

Java线程池最近生产环境的线程池出现了队列中的线程阻塞过多导致服务器不可用的情况,所以借此机会,仔细研究了一波线程池。在学习了大神的文章后,做了如下的总结和整理。使用线程池的优势第一:降低资源消耗。通过重复利用已创建的线程降低线程创建和销毁造成的消耗。第二:提高响应速度。当任务到达时,任务可以不需要等到线程创建就能立即执行。第三:提高线程的可管理性。线程是稀缺资源,如果无限制的创建...

2019-10-24 00:20:36 677

原创 TableStore TimeLine 的入坑指南

TableStore TimeLine 的爬坑指南我们在 https://blog.csdn.net/u013501718/article/details/89425060 一文中,介绍了一个类似于微博、网易云的消息中心模块的设计和实现思路。今天跟大家介绍一下我们的实现后升级数据时踩的一些坑。本次考虑到消息中心的数据量会比较大,所以持久层使用了阿里的 TableStore(简称:ots)。...

2019-04-27 16:45:00 1167 4

原创 仿微博消息中心的系统设计与实现

最近在实现一个类似于微博、网易云的消息中心模块。主要实现的功能是,将系统中的点赞、评论、@等消息做汇合。今天跟大家分享下,我们的设计和实现思路。首先说明,我们目前是微服务的架构。所以本篇文章中对于消息中心的设计也是建立在微服务的基础上,消息中心与其他模块是互相独立的。分析需求后,我们能会发现消息中心的角色如下图(以点赞消息为例):针对需求,我们有如下两种存储方案。方案一:消息表:m...

2019-04-20 22:40:51 1831

原创 TableStore 的注意事项

公司使用阿里的 TableStore(以下简称 TS) 已经有些日子了。这周仔细翻阅了一下 TableStore 的官方文档。现对 TableStore 做一些总结。我们先来了解一下什么是 TableStore。表格存储(Table Store)是阿里云自研的 NoSQL 多模型数据库,提供海量结构化数据存储以及快速的查询和分析服务。表格存储的分布式存储和强大的索引引擎能够提供 PB 级存储、千...

2019-03-24 16:39:52 1926 4

原创 mongodb中根据表中的字段更新表中的另一个字段

根据表中的字段更新表中的另一个字段(根据表中login_time字段更新表中first_login_time字段)db.getCollection('user').find({"status":2}).forEach( function(item){ db.getCollection('user').update({"_id":item._id},{$s...

2018-10-19 00:10:24 3938

原创 地图距离排序二(Java篇)

我们在 mongodb 篇中介绍了如何使用 mongodb 进行地图的距离排序和筛选,今天我们来介绍一下,用 Java 和 SpringData 来实现的时候,需要注意的一些知识点。首先,我们需要为实体设置地图索引。在 SpringData 中,我们可以通过使用 @GeoSpatialIndexed 注解来设置索引。但是这个索引注解默认使用的是2d索引,我们希望使用 2dsphere ...

2018-05-14 22:24:35 1239 3

原创 地图距离排序一(mongodb篇)

在使用外卖或团购 App 筛选商家时,我们经常会用到一个功能,叫作按照离我最近排序。在使用共享单车时,App 会自动帮我们搜索出,距离我们最近几公里内的单车。那么这两种场景,在服务端要如何实现呢?今天我们将使用 mongodb 来实现这两种场景。首先我们准备数据集,创建一个 location 库,然后插入一些数据。如下:例:db.location.insert({"lng":经度,...

2018-05-14 22:09:32 5051

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除