在前一篇文章《秒杀系统实战系列(十二)查询库存介绍之使用redis缓存》我们介绍了使用redis做缓存查询库存,虽然所有的链接都不用打到mysql了,但是所有的连接缺都打到redis上了,像这两天是双11期间,很多很...
作者 Rae 发布的文章
秒杀系统实战系列(十二)查询库存介绍之使用redis缓存
在前面的文章《秒杀系统实战系列(十一)多服务之间调用的分布式事务》其实我们已经实现了对于秒杀场景的同步秒杀方法,但是还是有一些缺陷,我们从这篇文章开始挨个完善下。首先我们介绍第一个缺陷:查询库存这里查询库存的时候,我...
秒杀系统实战系列(十一)多服务之间调用的分布式事务
在上一篇文章我们已经完成了商品不超卖的场景。但是我们可以看到,关于事务这块,这些服务其实用的都是同一个数据库实例,在实际的业务中,可能会存在有一个用户的数据库,存放在mysql实例A上,还有一个商品的数据库存放在my...
秒杀系统实战系列(十)防止商品超卖
在上一篇文章《秒杀系统实战系列(九)编写基本的秒杀核心代码》我们已经编写了秒杀的核心逻辑代码,同时我们也演示了秒杀的请求,但是既然是秒杀环节,那么我们肯定是有并发请求需求的,所以我们使用apipost工具并发测试下,...
秒杀系统实战系列(九)编写基本的秒杀核心代码
在前面我们已经把商品展示相关的逻辑已经写好了,接着我们就来编写秒杀的核心代码。这里的核心代码其实就是以下几个步骤:1、判断当前商品的秒杀状态,例如:是否是秒杀商品,是否是秒杀时间段等,是否库存充足等。 2、减商品库存...
map_agg 函数 为啥会出现乱码。有没有遇到过?目前还没有插入表中,不知道是显示乱码还是数据乱码。...
利用注解的方式使用Redisson分布式锁
其实我们在前面已经演示过使用redisson来实现分布式锁了,详情见:《Spring Cloud微服务项目模板系列(十)Redisson分布式锁》。由于最近在编写秒杀的演示项目,里面也会使用到分布式锁,这里我们想着使...
秒杀系统实战系列(八)商品列表展示查询
前面我们介绍了一下商品列表相关的基础信息,本文的话,我们来实现一下具体的商品列表展示查询。前面我们介绍过商品查询列表是同时包含普通商品和秒杀商品的,因此这里我们要来设计到商品和秒杀商品,这里我们的设计如下:首先我们有...
在秒杀这个场景来说,我们会涉及到商品的展示,例如我们贴一个京东的商品列表展示的示例图:在早期,在商城系统里面,一般对于商品列表的展示里面,普通商品和秒杀的商品是分开的,也就是说普通商品的展示列表的url可能是:/pr...
现在的电商系统,一般我们除了登录和退出及其他无关紧要的接口之外,其他的接口请求的时候我们一般都会涉及到对接口进行用户鉴权,如果用户未登录,则不给用户展示相关的页面,并且前端会跳转到用户登录页面。这样做一般有2个大的用...
秒杀系统实战系列(五)为秒杀服务框架添加网关
这里既然我们使用的是微服务,所以这里我们还是添加一个网关来实现服务的转发。添加网关比较简单,主要是添加一个gateway-service的model模块,示例图如下:然后把它注册到注册中心去就可以了,示例图如下:此时...
热文微服务实战spring cloud alibaba(二十二)spring cloud gateway打印请求/响应日志
其实在前面得文章《微服务实战spring cloud alibaba(十四)spring cloud gateway打印每一个请求和返回参数》我们已经介绍过打印请求/响应日志了,但是在实际使用过程中,由于Spring...
秒杀系统实战系列(四)用户登录模块的实现
在前面的文章里面介绍了相关的登录模块,在这里我们来具体实现下用户登录模块。由于这里主要是演示项目,因此我们的登录模块就不做的很完善了,因此主要使用普通的方式进行登录,也就是登录之后,随机生成一个token,然后把to...
如果我们涉及到秒杀的场景的话,那么一般都是属于商城类的系统。而且具有秒杀的场景,那么营销肯定是做的很到位了,因此从这里可以看出当前的企业至少是一个中型或者中大型的公司。那么对于商城的建设肯定就不止一个表面的商城系统。...
秒杀系统实战系列(二)搭建基础项目框架
从本文开始,我们正式进入到秒杀系统实战相关的系列了。本文的话,我们来搭建基础项目框架。这里的话,我们拟定使用微服务的形式来进行演示,因此这里我们使用阿里云的微服务模块快速创建,阿里云的微服务模板地址如下:阿里云微服务...
