● logserver:采用es+springboot+kafka+zookeeper搭建,提供插入日志和查询日志的备用接口。服务器中搭建kafka用作传输数据,生产端为各个需要收集日志的系统,服务端为logserver,主要作用是将项目中一些日志和报文收集起来储存在es上面以供查询。
● crawler:采用springboot搭建,不储存数据。主要作用是跟第三方电商平台对接,对内部提供http接口,提供包括拉取订单,标记发货,token属性等在内的操作。
● canal:该项目是基于阿里的canal开源项目搭建的,canal服务端当作mysql集群的子节点,当mysql执行sql语句的时候,会通过binlog将相关操作同步给集群的子节点,canal收到同步信息后会通知canal客户端,由java开发,自己维护。主要用于数据库监听,在数据有变化的时候,发布消息到mq,让其他模块处理,起到解耦的作用。
● general:该项目的主要业务为物流相关,包含大量的定时任务,物流下单,物流查询,从crawler拉取订单,标记发货等业务。
● searchserver:springboot+es的架构,主要作用是查询es上面的各种数据,以及同步数据库数据跟es数据,提供查询es数据和修改es数据的接口,当数据库中对应数据发生变化时,会有mq消息通知searchserver来更新es中的文档数据。
● b5c-api:架构为spring+springmvc+mybaties+redis+mysql,该模块的主要业务为库存相关业务。包括,入库,出库,调拨,组合批次,拆分批次等一些库存操作相关的接口。