- 博客(8)
- 收藏
- 关注
转载 聊聊轻量级本地缓存设计
1 选型 — 缓存是提高服务性能的关键,同时也是防止后端服务雪崩的良药,缓存应用比较广泛的主要是memcached或者redis,而redis甚至还有扩展为集群版本的codis,但本质上还是将key哈希之后路由到集群中某台机器上存储,也就是单key只能存在于单台机器。这种情况下,如果...
2017-11-27 20:37:00
121
转载 蝇量级搜索平台设计
背景 先从“赞”搜索的历史开始吧,概括总结一下,个人觉得主要分三个阶段: 1. 主业务阶段 这个阶段做了很多传统上的搜索业务,分销市场/买家版等等,主要是提升搜索的准确率和召回率,强化结果排名,最终提升市场gmv,是引擎(Elasticsearch)的使用者 2. 过渡阶...
2017-11-21 20:49:00
116
转载 一种多数据源索引同步设计
背景 在我接触的很多应用开发中,搜索引擎(ElasticSearch)是充当业务宽表使用,也就是聚合多张业务表,免去线上查询的join操作。 初始方案通过canal来同步多表数据源,因为canal同步binlog消息是单线程运行的,所以不存在顺序问题,另外多表之间也没有重叠的业务字段,所以...
2017-11-14 19:18:00
204
转载 记一次Java泛型与类型继承的讨论
首先申明个人观点,仅供参考。 抛出观点: Java泛型不考虑类型继承 验证过程: 首先明确Java泛型在编译之后是类型擦除的,即ArrayList<Integer>和ArrayList<String>编译之后是同一种class ...
2016-04-15 14:28:00
139
转载 记一次es查询的分析过程
今天看了es的一个问题,一个term filter过滤非空的字段,怎么都出不来结果,但是放到query里就可以: {"from":0,"query":{"filtered":{"filter":{"bool":{"must":[],"must_not":[{"term":{"remark":...
2016-03-01 15:29:00
186
转载 终于了解了URI/URL/URN的区别
URIs identifyandURLs locate; however,locators are also identifiers, so every URL is also a URI, but there are URIs which are not URLs. Example...
2016-01-04 10:35:00
131
转载 一种基于Lucene的实时搜索方案
背景 阿里集团各大业务快速发展过程中都对搜索服务很多刚性的需要,而这样的搜索需求有着非常明显的特征:快速支持、低成本、实时性和稳定性。 快速支持: 业务需求急迫、需要一周甚至几天内完成索引服务搭建、测试、上线环节。 低成本: 搜索需求方要求接入便捷,低成本的机器和运维成本。 实时...
2015-06-02 16:33:00
150
转载 synchronized与static synchronized
上次被问到synchronized与static synchronized的区别,虽然知道有区别,但是愣了半晌没想出来理由在哪里,温故而知新,特此记录。 synchronized需要持有对象锁,synchronized持有的是实例对象的锁,因此其只对同一实例保证同步,若需要对所有对象都保持同...
2015-03-01 22:52:00
77
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人