[Spring cloud 一步步实现广告系统] 22. 广告系统回顾总结

到目前为止,咱们整个初级广告检索系统就初步开发完成了,咱们来总体回顾一下咱们的广告系统。整个广告系统编码结构以下:广告系统java

  • mscx-ad 父模块

    主要是为了方便咱们项目的统一管理spring

  • mscx-ad-db

    这个模块主要有2个做用,自己只应该做为数据库脚本管理package来使用,可是咱们在生成索引文件的过程当中,为了方便,我就直接将导出全量索引的json文件生成也写在了该项目中。 主要目的仍是经过flyway进行数据库脚本的管理。sql

  • mscx-ad-common

    这个主要是一些通用工具类的存放数据库

  • mscx-ad-feign-sdk

    这个jar包主要是为了服务间的调用,为了统一管理各类pojo 以及CustomFeignClient而建立的,方便一次修改,全局应用,。固然若是项目团队不大的时候,你彻底能够在不一样的project中建立相同的vo对象,目前RPC中大多如此设计。json

  • mscx-ad-dashboard

    这个是hystrix提供的可视化管理工具,固然,后期我一样会使用咱们的阿里大大的sentinel将其替换掉,敬请期待。segmentfault

  • mscx-ad-discovery

    这个我命名的时候没有使用ad-eureka,在项目中也是尽可能使用的SpringCloud Common抽象的公共注解,好比@EnableDiscoveryClient,其实有心的同窗能看的出来,我打的主意也是想要后续替换的,咱们可使用ZK,可是我后期一样会使用咱们阿里大大的NACOS 来替换掉它。工具

  • mscx-ad-zuul

    网关路由组件,没啥特别的,后续使用gateway替换post

  • mscx-ad-sponsor

    广告新增的主要模块,为广告主服务学习

  • mscx-ad-search

    整个广告系统的核心,对外暴露查询服务。编码

为了咱们系统的高可用,上述系统理论上都须要多实例部署。

咱们在广告检索服务中使用到了监听 Mysql数据库的 Binlog来实现增量索引,你们不妨想一想,若是咱们的系统请求很高,咱们的binlog就须要被N多的服务实例所监听,这样会有什么问题? 为何会有这种问题? 怎么修改是合理的?

番外

从2018年10月31号,咱们阿里大大开源发布了Spring Cloud Alibaba,通过1年的项目孵化,终于在2019年8月1号毕业了小马哥威武, SC-Alibaba Team 威武。为了迎接这一伟大的国内Spring盛世,接下来我会写一个学习SCA的课程,途中遇到的全部问题都会和你们一块儿共享,加油。

奔跑的人生 | 博客园 | segmentfault | spring4all | csdn | 掘金 | OSChina | 简书 | 头条 | 知乎 | 51CTO

相关文章
相关标签/搜索