秒杀系统架构优化思路

一、秒杀业务为什么难做 1)im系统,例如qq或者微博,每个人都读自己的数据(好友列表、群列表、个人信息); 2)微博系统,每个人读你关注的人的数据,一个人读多个人的数据; 3)秒杀系统,库存只有一份,所有人会在集中的时间读和写这些数据,多个人读一个数据。 例如:小米手机每周二的秒杀,可能手机只有1万部,但瞬时进入的流量可能是几百几千万。 又例如:12306抢票,票是有限的,库存一份,瞬时流量非常多,都读相同的库存。...

[阅读更多 →]

如何搭建优质的电商系统

如何搭建优质的电商系统 工作心得、电商系统 1、做轻重分离 (99%的浏览量最多才能对应1%的下单量) (1)用于浏览的数据放cache (2)重要的设立单独服务器空间 2、做好风控系统.(接口操作耗时等给技术做一个报表,接口操作耗时作为优评估标准之一) 所有的写操作(增、删、改)都要记录完善的日志,且记录下来:此次操作是否成功,以及耗时多少毫秒,如果不成功,还要记录当前所有环境变量,如果是数据库操作,最好把...

[阅读更多 →]

【转】RabbitMQ 基础概念详细介绍

【转】RabbitMQ基础概念详细介绍 引言 你是否遇到过两个(多个)系统间需要通过定时任务来同步某些数据?你是否在为异构系统的不同进程间相互调用、通讯的问题而苦恼、挣扎? 如果是,那么恭喜你,消息服务让你可以很轻松地解决这些问题。 消息服务擅长于解决多系统、异构系统间的数据交换(消息通知/通讯)问题,你也可以把它用于系统间服务的相互调用(RPC)。本文将要介绍 的RabbitMQ就是当前最主流的消息中间件之一。 ...

[阅读更多 →]

Memcache 压力测试工具 -- memslap 使用教程

Memcache压力测试工具 -- memslap使用教程 Memcache,memslap Memcache监控工具 -- memcachephp http://ultrasql.blog.51cto.com/9591438/1638019/ 1、说明 Memslap是memcached服务器的压力测试工具,它能产生可配置压力环境,如:线程、并发、连接、运行时间、覆盖、命中率、key的长度、value的长度、ge...

[阅读更多 →]

Memcache 实时界面监控工具 -- memcachephp

Memcache监控工具 -- memcachephp Memcache 监控 1、说明 memcachephp是一款memcache图形界面的监控工具,可以通过这个工具查看到局域网内所有部署memcache机器或者端口的memcache的运行情况,对我们监控memcache的缓存命中率、cache利用率、点击率**等信息有很好的帮助作用。图形界面工具的推出,有助于我们性能测试工程师脱离命令行方式,避免多个memc...

[阅读更多 →]

DB 主从一致性架构优化 4 种方法

DB主从一致性架构优化4种方法 MySQL 主从一致性 需求缘起 大部分互联网的业务都是“读多写少”的场景,数据库层面,读性能往往成为瓶颈。如下图:业界通常采用“一主多从,读写分离,冗余多个读库”的数据库架构来提升数据库的读性能。 图1 这种架构的一个潜在缺点是,业务方有可能读取到并不是最新的旧数据: 图2 (1)系统先对DB-master进行了一个写操作,写主库 (2)很短的时间内并发进行了一个读操作,读从库...

[阅读更多 →]

MySQL 双主一致性架构优化

MySQL双主一致性架构优化 MySQL 一致性 一、双主保证高可用 MySQL数据库集群常使用一主多从,主从同步,读写分离的方式来扩充数据库的读性能,保证读库的高可用,但此时写库仍然是单点。 在一个MySQL数据库集群中可以设置两个主库,并设置双向同步,以冗余写库的方式来保证写库的高可用。 二、并发引发不一致 数据冗余会引发数据的一致性问题,因为数据的同步有一个时间差,并发的写入可能导致数据同步失败,引起数据丢失...

[阅读更多 →]

nginx 限流措施研究-自如 2018年发布会

在开发高并发系统时有三把利器用来保护系统:缓存、降级和限流。 缓存 缓存比较好理解,在大型高并发系统中,如果没有缓存数据库将分分钟被爆,系统也会瞬间瘫痪。使用缓存不单单能够提升系统访问速度、提高并发访问量,也是保护数据库、保护系统的有效方式 降级 服务降级是当服务器压力剧增的情况下,根据当前业务情况及流量对一些服务和页面有策略的降级,以此释放服务器资源以保证核心任务的正常运行。降级往往会指定不同的级别,面临不同的异常...

[阅读更多 →]