网站流量日志分析--数据可视化--后端 web 工程架构 | 学习笔记

本文涉及的产品
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
简介: 快速学习网站流量日志分析--数据可视化--后端 web 工程架构

开发者学堂课程【大数据分析之企业级网站流量运营分析系统开发实战(第五阶段):网站流量日志分析--数据可视化--后端 web 工程架构】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/697/detail/12256


网站流量日志分析--数据可视化--后端 web 工程架构

内容介绍

一.WEB 程序工程结构

二.  总结

 

一. WEB 程序工程结构

所谓后端的程序,它的职责很明确,就是把通过 sqoop 导出的各种指标数据按照前端的下室所需要的格式返回给他,也就是纯粹的查询 MYSQL 数据库的过程。

从技术层面来说,不仅仅局限于 Java,还有个编程语言叫做 PHP 也可以实现这一过程。

本项目是个纯粹的 JavaEE 项目,基于 spring 框架整合构建。使用 maven 的 tomcat 插件启动项目。

简单模拟一下,假设有一个首页进行数据可视化页面的展示,叫做 index html。首页是通过浏览器来访问,所以还需要有一个浏览器,叫做 from 的浏览器。

浏览器想请求页面,背后所传递的协议叫做 HTTP 协议,它会发起一个叫做 request ,这个协议发到服务器。

下面讲到 Java 当中标准的三层架构,最上面叫做表现层,然后是业务层和持久层。

表现层主要负责各种请求的响应,也就是说他的请求会被外部 contrast 来接收。

中间层叫做 service 层,具体业务比如要进行什么操作,什么判断,就把它叫做业务层。

最后需要去操作数据,查询数据,所以下面有一个数据操作叫 DAO,它的中文叫做持久层。持久层作业是进行数据持久化,保证我们的业务最终落实到数据库当中。

比如有一个 MySQL,通常用 MySQL 来做数据的导出导入操作。接下来我再追加一个问题,数据库当中的数据指标来自于哪里?持久层数据会去查询数据库,问题在于数据库的数据来自于哪里?之前说过大数据分析是在 hive 当中分析,那分析完之后怎么来到 MySQL? 是用 sqoop 导出的。

那么这个图就可以继续画一个大数据的分析平台,标注数据仓库,数据仓库中的数据简单写一下,用 sqoop 导出,导出之后,mysql 进行查询数据,会得出一个结果。这个结果层层向上传递:持久层到业务层到表现层。在业务层需要把数据进行相关的转换和调整。最后返回到浏览器把数据进行渲染,用户就得到了 response,看到一个非常完美的页面。

图片里整个左边部分和大数据没有关系,是非常纯粹的 javaEE 项目。表现层使用的软件是 spring MVC,业务层使用的是 spring,持久层使用的是 mybatis。这样就完成了相关技术的操作。整个项目是用 maven web 项目,使用 tomcat 插件运行。

image.png

这就是数据可视化后端 web 项目的架构图。有了架构图之后就可以明确,我们要做的就是查询 MySQL 中的指标数据返回给前端。

 

二.总结

数据可视化后端 web 工程

职责:把导出在 mysql 中的数据按照前端需要的格式查询返回给前端

技术: php java 本项目中使用 javaEE 基于 SSM 做数据查询

相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
相关文章
|
14天前
|
前端开发 JavaScript 关系型数据库
从前端到后端:构建现代化Web应用的技术探索
在当今互联网时代,Web应用的开发已成为了各行各业不可或缺的一部分。从前端到后端,这篇文章将带你深入探索如何构建现代化的Web应用。我们将介绍多种技术,包括前端开发、后端开发以及各种编程语言(如Java、Python、C、PHP、Go)和数据库,帮助你了解如何利用这些技术构建出高效、安全和可扩展的Web应用。
|
15天前
|
API 数据库 开发者
构建高效可靠的微服务架构:后端开发的新范式
【4月更文挑战第8天】 随着现代软件开发的复杂性日益增加,传统的单体应用架构面临着可扩展性、维护性和敏捷性的挑战。为了解决这些问题,微服务架构应运而生,并迅速成为后端开发领域的一股清流。本文将深入探讨微服务架构的设计原则、实施策略及其带来的优势与挑战,为后端开发者提供一种全新视角,以实现更加灵活、高效和稳定的系统构建。
18 0
|
29天前
|
负载均衡 测试技术 持续交付
高效后端开发实践:构建可扩展的微服务架构
在当今快速发展的互联网时代,后端开发扮演着至关重要的角色。本文将重点探讨如何构建可扩展的微服务架构,以及在后端开发中提高效率的一些实践方法。通过合理的架构设计和技术选型,我们可以更好地应对日益复杂的业务需求,实现高效可靠的后端系统。
|
1月前
|
监控 Kubernetes 持续交付
构建高效可扩展的微服务架构:后端开发实践指南
在数字化转型的浪潮中,企业对软件系统的要求日益提高,追求快速响应市场变化、持续交付价值成为核心竞争力。微服务架构以其灵活性、模块化和独立部署的特点,成为解决复杂系统问题的有效途径。本文将深入探讨如何构建一个高效且可扩展的微服务架构,涵盖关键设计原则、技术选型及实践案例,为后端开发者提供一条清晰的指导路线,帮助其在不断变化的技术环境中保持竞争力。
130 3
|
3天前
|
消息中间件 监控 持续交付
构建高效微服务架构:后端开发的进阶之路
【4月更文挑战第20天】 随着现代软件开发的复杂性日益增加,传统的单体应用已难以满足快速迭代和灵活部署的需求。微服务架构作为一种新兴的分布式系统设计方式,以其独立部署、易于扩展和维护的特点,成为解决这一问题的关键。本文将深入探讨微服务的核心概念、设计原则以及在后端开发实践中如何构建一个高效的微服务架构。我们将从服务划分、通信机制、数据一致性、服务发现与注册等方面入手,提供一系列实用的策略和建议,帮助开发者优化后端系统的性能和可维护性。
|
22天前
|
存储 缓存 监控
构建高效可扩展的后端服务架构
在当今互联网时代,构建高效可扩展的后端服务架构对于企业的业务发展至关重要。本文将探讨如何通过合理设计和优化后端服务架构,实现系统的高性能、高可用性和易扩展性,从而满足不断增长的业务需求和用户规模。
17 0
|
24天前
|
监控 Java 开发者
构建高效微服务架构:后端开发的新范式
在数字化转型的浪潮中,微服务架构以其灵活性、可扩展性和容错性成为企业技术战略的关键组成部分。本文深入探讨了微服务的核心概念,包括其设计原则、技术栈选择以及与容器化和编排技术的融合。通过实际案例分析,展示了如何利用微服务架构提升系统性能,实现快速迭代部署,并通过服务的解耦来提高整体系统的可靠性。
|
30天前
|
监控 数据管理 API
构建高效微服务架构:后端开发的新趋势
在现代软件开发领域,随着业务需求的不断复杂化以及敏捷迭代的加速,传统的单体应用架构逐渐暴露出其局限性。微服务架构作为一种新的解决方案,以其高度模块化、独立部署和可扩展性,正成为后端开发领域的新趋势。本文将探讨微服务架构的核心概念,分析其优势与面临的挑战,并提供实施高效微服务的策略和最佳实践,帮助读者理解如何利用这一架构模式提升系统的可靠性、灵活性和可维护性。
136 5
|
1月前
|
人工智能 运维 监控
构建高性能微服务架构:现代后端开发的挑战与策略构建高效自动化运维系统的关键策略
【2月更文挑战第30天】 随着企业应用的复杂性增加,传统的单体应用架构已经难以满足快速迭代和高可用性的需求。微服务架构作为解决方案,以其服务的细粒度、独立性和弹性而受到青睐。本文将深入探讨如何构建一个高性能的微服务系统,包括关键的设计原则、常用的技术栈选择以及性能优化的最佳实践。我们将分析微服务在处理分布式事务、数据一致性以及服务发现等方面的挑战,并提出相应的解决策略。通过实例分析和案例研究,我们的目标是为后端开发人员提供一套实用的指南,帮助他们构建出既能快速响应市场变化,又能保持高效率和稳定性的微服务系统。 【2月更文挑战第30天】随着信息技术的飞速发展,企业对于信息系统的稳定性和效率要求
|
1月前
|
消息中间件 监控 开发者
构建高效微服务架构:后端开发的新趋势
【2月更文挑战第30天】 在现代软件开发领域,微服务架构已成为实现可扩展、灵活且容错的系统的首选设计。本文深入探讨了构建高效微服务架构的关键步骤和最佳实践,涵盖了从服务划分到部署管理的全过程。我们不仅将分析微服务的优势与挑战,还将提供具体的技术建议和解决方案,以帮助后端开发者有效地构建和优化其系统结构。