在一个宁静的午夜,我睡觉正酣。突然电话将我从睡梦中惊醒。生产环境出现事故了... 问题 在线上出现部分客户提交订单失败,大量的错误原因是商品的库存不足。而我们系统的设计先预定...
在一个宁静的午夜,我睡觉正酣。突然电话将我从睡梦中惊醒。生产环境出现事故了... 问题 在线上出现部分客户提交订单失败,大量的错误原因是商品的库存不足。而我们系统的设计先预定...
基本概念 Elasticsearch是一个分布式全文检索系统。很多人说到它的特点:查询快,高吞吐量,可扩展。我们首先来看看它的底层数据结构。 底层数据 倒排索引(revert...
1. 介绍 2. 格式化 3. 注释 4. 命名 5. 分号 6. 控制结构 7. 函数 8. 数据 9. 初始化 10. 方法 11. 接口和其它类型 12. 空白标识符 ...
背景 项目有部分rest api提供给第三方使用,这部分API的说明由技术文档人员编写。由于技术文档人员对API的理解出现偏差,所以API的文档可操作性需要进行改进。 我们在...
背景 最近同事在对项目Jersey由1.6升级至2.X,本地测试一切顺利。但是当部署到INT环境后,发现后台异步线程执行途中就消失了。其伪代码如下: 现象 在输出日志中,可以...
AbstractQueuedSynchronizer(AQS)提供了实现锁和同步的一套基本框架。子类只需要通过简单的状态维护,即可实现lock or unlock。 下面,我...
概念 上篇文章我们讨论了快速排序,其核心思想是给定一个pivot, 每次将待排的序列拆分为两部分,左边序列<=pivot, 右边序列>pivot, 然后递归对左右进行排序。快...
概念 上篇文章我们讨论了归并排序,其核心思想是每次将待排的序列拆分为两部分,最终合并成一个序列。简单理解拆分为二叉排序树,从下往上一层一层的合并。本文我们将讨论快速排序,其平...
概念 排序类的算法,有很强的实践需求,是非常基础的一类算法。在找工作面试中,排序算法也是大概率出现。本文将讲述排序常用的算法:归并排序,快速排序和插入排序。 归并排序 假如有...
Memcached之服务器端简单介绍了Memcached的Server功能,了解Memcached的服务器端负责数据的存储和cache的失效管理。对Memcached来说,它...
Cache 缓存是架构之利器,在高并发的互联网中,是杀手锏的武器。我们会通过一些列的文章来介绍缓存相关的工具(包括memcached, redis), 缓存的架构设计以及缓存...
概念 QPS: 系统每秒中的请求数量并发数:单台服务器同时处理请求的数量响应时间: 请求开发到返回的处理时间 预估访问总量 系统注册用户为400万,根据经验,平均每个用户每...
概念 在关系数据库中,ID是用来定义某个数据的唯一标识。任何新生成的数据,我们都会为它赋予一个新的唯一的ID。通常来说,我们都可以通过数据库的ID sequence的自增,来...
Netty是一个基于事件驱动的异步高吞吐量服务器客户端框架。它的架构具有高性能、高扩展性及可靠性。 架构 Channel 直接负责I/O的操作的管理,比如: read, wr...
Elastic search查询 建模和准备数据 由于赛事机构的参加人员较多,且使用比较频繁,为了避免单一索引引起频繁操作,这里我们构建动态索引。索引的命名规则为:mock_...
目的 Kafka是为了实时大量数据的中间件。它的设计是为了满足以下场景: 高吞吐量,支持海量事件,比如:日志的聚合 支持大量数据的积压,以达到离线数据的定时处理 分布式,容错...