/seckill

自研秒杀系统

Primary LanguageJava

秒杀系统实现

项目结构

  • server-nginx

    1. 流量筛选:根据黑白名单、登录态和参数有效性等来筛选流量。
    2. 流量分发:通过设置的负载均衡算法进行流量分发,也可以自定义算法,比如根据 IP 做 hash,或者根据用户 ID 做 hash 等。
    3. 简单业务以及校验:提供活动数据、活动有效性校验、库存数量校验和其他业务相关的简单校验等。
    4. 限流:根据 IP 或者自定义关键入参做限流。
    5. 异常提示页面:主要是进结算页失败的提示页,可能是被限流,被业务校验拦截或者是后端服务异常等。
  • service-web

    1. 提供结算页 H5。
  • service-support

    1. 提供基础服务、数据的支持,包括活动数据、商品数据、用户维度数据、提单等,主要模拟基础服务,正常情况下,应该是按业务模块做细致划分。
  • server-interface

    1. dubbo RPC 接口定义

项目启动流程

*nginx(server-nginx目录下)

启动:
nginx -p `pwd` / -c config/nginx.conf

停止:
nginx -p `pwd` -s stop

  • server-web