当前位置: 首页 > news >正文

郴州市网站建设_网站建设公司_数据统计_seo优化

临汾网站建设,帮我做网站推广,个人网页制作成品源代码,爬虫python入门文章目录 0 前言1 课题背景2 实现效果3 数据收集分析过程**总体框架图****kafka 创建日志主题****flume 收集日志写到 kafka****python 读取 kafka 实时处理****数据分析可视化** 4 Flask框架5 最后 0 前言 #x1f525; 这两年开始毕业设计和毕业答辩的要求和难度不断提升 这两年开始毕业设计和毕业答辩的要求和难度不断提升传统的毕设题目缺少创新和亮点往往达不到毕业答辩的要求这两年不断有学弟学妹告诉学长自己做的项目系统达不到老师的要求。 为了大家能够顺利以及最少的精力通过毕设学长分享优质毕业设计项目今天要分享的是 基于大数据的服务器数据分析与可视化系统 学长这里给一个题目综合评分(每项满分5分) 难度系数3分工作量5分创新点3分界面美化5分 1 课题背景 基于python的nginx大数据日志分析可视化通过流、批两种方式分析 nginx 日志将分析结果通过 flask echarts 进行可视化展示 2 实现效果 24 小时访问趋势 每日访问情况 客户端设备占比 用户分布 爬虫词云 3 数据收集分析过程 总体框架图 kafka 创建日志主题 # 创建主题 kafka-topics --bootstrap-server gfdatanode01:9092 --create --replication-factor 3 --partitions 1 --topic nginxlogflume 收集日志写到 kafka 创建 flume 到 kafka 的配置文件 flume_kafka.conf配置如下 a1.sources s1 a1.channels c1 a1.sinks k1 a1.sources.s1.typeexec a1.sources.s1.commandtail -f /var/log/nginx/access.log a1.sources.s1.channelsc1 #设置Kafka接收器 a1.sinks.k1.type org.apache.flume.sink.kafka.KafkaSink #设置Kafka地址 a1.sinks.k1.brokerList172.16.122.23:9092 #设置发送到Kafka上的主题 a1.sinks.k1.topicnginxlog #设置序列化方式 a1.sinks.k1.serializer.classkafka.serializer.StringEncoder a1.sinks.k1.channelc1 a1.channels.c1.typememory a1.channels.c1.capacity10000 a1.channels.c1.transactionCapacity100 启动 flume flume-ng agent -n a1 -f flume_kafka.confpython 读取 kafka 实时处理 通过 python 实时处理 nginx 的每一条日志数据然后写到 mysql 。 from kafka import KafkaConsumerservers [172.16.122.23:9092, ] consumer KafkaConsumer(bootstrap_serversservers,auto_offset_resetlatest, # 重置偏移量 earliest移到最早的可用消息latest最新的消息默认为latest ) consumer.subscribe(topics[nginxlog]) for msg in consumer:info re.findall((.*?) - (.*?) \[(.*?)\] (.*?) (\\d) (\\d) (.*?) (.*?) .*, msg.value.decode())log NginxLog(*info[0])log.save()数据分析可视化 -- 用户分布 select province, count(distinct remote_addr) from fact_nginx_log where device Spider group by province;-- 不同时段访问情况 select case when deviceSpider then Spider else Normal end, hour(time_local), count(1) from fact_nginx_log group by case when deviceSpider then Spider else Normal end, hour(time_local);-- 最近7天访问情况 select case when deviceSpider then Spider else Normal end, DATE_FORMAT(time_local, %Y%m%d), count(1) from fact_nginx_log where time_local date_add(CURRENT_DATE, interval - 7 day) group by case when deviceSpider then Spider else Normal end, DATE_FORMAT(time_local, %Y%m%d);-- 用户端前10的设备 select device, count(1) from fact_nginx_log where device not in (Other, Spider) -- 过滤掉干扰数据 group by device order by 2 desc limit 10-- 搜索引擎爬虫情况 select browser, count(1) from fact_nginx_log where device Spider group by browser;最后通过 pandas 读取 mysql经 ironman 进行可视化展示。 4 Flask框架 简介 Flask是一个基于Werkzeug和Jinja2的轻量级Web应用程序框架。与其他同类型框架相比Flask的灵活性、轻便性和安全性更高而且容易上手它可以与MVC模式很好地结合进行开发。Flask也有强大的定制性开发者可以依据实际需要增加相应的功能在实现丰富的功能和扩展的同时能够保证核心功能的简单。Flask丰富的插件库能够让用户实现网站定制的个性化从而开发出功能强大的网站。 本项目在Flask开发后端时前端请求会遇到跨域的问题解决该问题有修改数据类型为jsonp采用GET方法或者在Flask端加上响应头等方式在此使用安装Flask-CORS库的方式解决跨域问题。此外需要安装请求库axios。 Flask框架图 相关代码 import os import syssys.path.append(os.path.dirname(os.path.abspath(__file__)) /../)from flask import Flask, render_template from ironman.data import SourceData from ironman.data_db import SourceDataapp Flask(__name__)source SourceData()app.route(/) def index():return render_template(index.html)app.route(/line) def line():data source.linexAxis data.pop(legend)return render_template(line.html, title24小时访问趋势, datadata, legendlist(data.keys()), xAxisxAxis)app.route(/bar) def bar():data source.barxAxis data.pop(legend)return render_template(bar.html, title每日访问情况, datadata, legendlist(data.keys()), xAxisxAxis)app.route(/pie) def pie():data source.piereturn render_template(pie.html, title客户端设备占比, datadata, legend[i.get(name) for i in data])app.route(/china) def china():data source.chinareturn render_template(china.html, title用户分布, datadata)app.route(/wordcloud) def wordcloud():data source.wordcloudreturn render_template(wordcloud.html, title爬虫词云, datadata)if __name__ __main__:app.run(host127.0.0.1, debugTrue)5 最后
http://www.ihoyoo.com/news/136161.html

相关文章:

  • 台州网站专业制作建设工程用地批准手续在哪个网站
  • 南昌旅游集团网站建设安丘网站开发
  • 如何建手机销售网站青岛互联网公司排名
  • 营销型网站建设课程培训现场黄浦区网站建设
  • 如何做购物网站的后台网站建设与管理收获
  • 模板建站和开发网站区别推一手新闻发稿平台
  • 苏州网站建设代理企业网站手机端太简洁
  • 网站定制公司排行榜专业制作门牌
  • 网站建设 中企动力宜昌荣耀手机官方网站
  • 龙岗附近做网站公司用微信小程序赚100万
  • 做百度推广的网络公司广州贵州便宜网站推广优化电话
  • 河南建设建设监理协会网站国家城乡建设规划部网站
  • 网站建设 摄影服务wordpress如何清空
  • 和男朋友都是第一次做网站天津外贸网站建设公司
  • 建站网址wordpress广告窗插件
  • 放单网站建设怎么用wordpress建外贸网站
  • 做固定背景网站seo黑帽是什么意思
  • 网站开发技术难度搜索引擎排名优化是什么意思
  • 教学督导网站建设报告网页图片大全
  • 莱州网络建站品牌推广活动策划案例
  • 做电工的有接单的网站吗快速做网站的方法
  • 汉邦未来网站开发wordpress 中文企业主题
  • 个体制作网站设计规划管理部门的网站建设
  • 个人做分类信息网站西宁网站建设的公司哪家好
  • 做好网站优化的方法有哪些?优秀企业网站设计制作
  • 谁能给做网站网址查询ip地址
  • 个人网站排版设计烟台有哪些网站建站推广公司
  • 国内创意产品网站企点网印通
  • 蓬安网站建设柳州专业做网站
  • wordpress短信通知重庆seo软件