# gd_project **Repository Path**: scaulhx/gd_project ## Basic Information - **Project Name**: gd_project - **Description**: 毕业设计整体项目 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 1 - **Created**: 2020-10-19 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 毕业设计 ## back-end * 后端使用socket.io连接Kafka进行数据传输,内置生成数据方法,Kafka端口为虚拟机:9092,后端端口为localhost:7788 * 前端连接后端,获取后端数据方法为getdata,使用socket.io,emit方法 * 后端生成数据方法为createdata,参数为Interge类型,为插入数据的条数调用方法同上 ## front-end * 前端使用vue.js + echarts来进行数据展示 * 前端导入ChinaMap,由于在vue中,稍微做了修改 * 前端部分配置做了修改,用于打包 * 前端布局为 > 左侧:中国地图,包括各省份,数据流动线,此处为实时展示 > 右侧: > > 上方显示交易总额,在交易总额右侧有四个加号,用来产生不同量级的数据 > > 下面是各省交易总额,再下方是各产品的交易总额,只显示前十 ## flinksystem ### DealMonitor * 用于Flink连接Kafka,读取Kafka流,进行处理,读取Kafka流的topic为"topic" * Kafka端口为虚拟机Kafka:9092 * Flink的Sink方式也为Kafka,Flink将数据处理为三个流,分别对应一个Kafka的Topic * from_to_price:数据格式{from_city: "XXX", to_city: "XXX", sum_price: xx.xx},用于城市之间数据展示 * from_price:数据格式为{from_city: "XXX", sum_price: xx.xx},用于各城市的销售总额排行 * comm_price:数据格式为{comm_name: "XXX", sum_price: xx.xx},用于个产品的销售总额的排行 * sum_price:数据格式为{sum_price:xx.xx},用于统计总销售额 * MyStreamSource.java,用于生成流数据,测试时用 ### FlumeFunction * 用于Flume读取Canal数据,并发送到Kafka * Canal端口为虚拟机Canal:11111 * 只读取某一个数据库中某一个表的数据,在flume配置项中schemaName、tableName中配合 * 详细配置见 [flume.conf](./package/dockerfiles/flumefile/flume.conf) ## Package * 已打包,可以直接运行的系统、前端、后端 * dist: * 前端Vue导出项目,可以直接运行 * dockerfiles: * 包括: > cancalfile > > > logs:cancal运行时日志 > > > > canal.properties:canal的配置文件 > > > > instance.properties:canal实例配置文件 > > flinkfile > > > FlinkSystem中DealMonitor的jar包,可发布到Flink运行 > > > > 使用默认配置文件,部分配置在docker-compose.yml中配置 > > flumefile > > > lib:FileSystem中flumeFunction的jar包,作为Flume的source Type > > > > flume.conf:flume运行配置文件 > > mysqlfile > > > init:初始化数据库,开启Binlog,设置登陆账号密码,创建项目所用数据库以及数据表 > > > > my.cnf:Mysql配置文件,主要配置了超时时间,字符集,以及开启Binlog > > docker-compose.yml:docker容器启动配置,包括Mysql、canal、zookeeper、Kafka、flume和Flink,安装docker以及docker-compose后和直接使用docker-compose up (-d) 来启动系统 > > socketio-XXX.jar:后端jar包,原始打包,未重命名