电商网站需求分析和架构设计(一)|学习笔记

简介: 快速学习电商网站需求分析和架构设计(一)

开发者学堂课程【Java Spring Boot 2.6.0开发实战-1024程序员节创造营公益课电商网站需求分析和架构设计(一)】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址https://developer.aliyun.com/learning/course/903/detail/14337


电商网站需求分析和架构设计(一)


目录:

一、需求分析

二、结构设计

三、电商系统模块架构图

四、三层架构(前后端分离)

五、创建第一个 springboot 项目

 

课程介绍

Springboot2.6 入门将主要从项目的角度进行切入,帮助大家更好的理解Springboot 这个框架。

在工作中就可以理解到学习的理论知识,并不是都能够与实际项目做到一一配对的,有可能就只用到了一两个功能,例如,今后来到了今日头条,京东,淘宝,阿里等一些大厂,你负责的项目可能就是其中的一个功能点,当你重复去使用某一个框架的主要的某些特性,比如使用 Java Springboot 时,我们可能就只负责开发一个功能接口,很难做到将所有的功能都用上。

我们在学习该门课程时也会注重一个侧重点的学习。如果学员们想学习后端的其他的一些周边知识,也可以观看其他的一些视频录像,如 MySQL,微服务架构。

课程背景:

Springboot 是目前应用的比较广的一种框架,java 语言也是当今应用比较广泛的一种编程语言。

当下,企业的应用开发模式主要是前后端分离,比如像阿里,腾讯等一些大厂采取的也都是这种开发模式,并且,在开发的过程中分了很多个团队,其目的是分摊风险,保证项目的正常运行,不会因为某一个成员的流失而导致整个项目被停掉。

一般来讲,创业公司与小公司更倾向于全栈型开发工程师,与之相反的是大公司的开发模式,大公司可能就只需要一颗螺丝钉,只需要你会其中的某个方面即可,分工明确。

两种方式,各有利弊,但是我们作为学习者的话,还是要完整的去了解一下,去寻找适合自己的开发模式。

目前,一些比较著名的电商都是前后端分离的,如淘宝,京东,拼多多等等。

大部分的公司都会被市场淘汰,一个公司从创业初期到最后能够上市的更是少之又少,几乎是万里挑一的存在,如现在的淘宝,京东,拼多多,且他们的服务器数量是非常多的,淘宝更是准备了十万台服务器来应对双十一。


一、需求分析

产品原型:淘宝+支付宝+微信+微博

image.png

电商网站平台架构

image.png

需求分析包括以下几个部分:

Ø 用户需求文档

Ø 产品原型,UI 界面

Ø 用例 Use Case

Ø 流程图

image.png

开发流程:

我们的角色主要是后台开发,还有一个角色是前端开发,包括我们常说的IOS开发,安卓开发,后端包括数据库以及数据库接口,与我们进行交互去实现用户的登录,注册,下单都是属于我们电商中常用的场景。

使用 springboot 进行开发定义的是后端开发工程师。

往上分还可以分为数据库工程师,大数据架构师,还有一个角色便是项目经理,主要负责整个项目能够按时交付。 

架构师在了解完整个屏幕需求之后,要考虑需要使用什么架构,当然,一些小公司没有架构师。


二、架构设计

架构设计包括以下几个部分:

架构示意如下所示:

image.png

Ø 技术选型

Ø 架构设计

Ø 三层架构

Ø 微服务架构

Ø 系统模块图

Ø 物理部署图

开发模式:

曾经是由产品经理(也就是老板)告诉相关的技术人员,由其技术人员去完成功能开发。

这种模式大部分已经被淘汰,我们作为技术开发人员,就必须将架构学好。

微服务架构主要应用于对技术架构比较敏感的互联网公司。如阿里应用的 mysql 数据库到双十一中去,为后来的互联网公司提供了一个很好的案例。

相关文章
|
3月前
|
自然语言处理 前端开发 测试技术
使用 Playwright MCP 实现 UI 自动化测试
本文介绍如何结合Playwright与MCP协议实现智能化UI自动化测试。通过自然语言指令控制浏览器,降低技术门槛,提升效率,并涵盖环境搭建、核心功能、实战案例及最佳实践,展现对话式自动化的未来趋势。
|
自然语言处理 PyTorch 算法框架/工具
掌握从零到一的进阶攻略:让你轻松成为BERT微调高手——详解模型微调全流程,含实战代码与最佳实践秘籍,助你应对各类NLP挑战!
【10月更文挑战第1天】随着深度学习技术的进步,预训练模型已成为自然语言处理(NLP)领域的常见实践。这些模型通过大规模数据集训练获得通用语言表示,但需进一步微调以适应特定任务。本文通过简化流程和示例代码,介绍了如何选择预训练模型(如BERT),并利用Python库(如Transformers和PyTorch)进行微调。文章详细说明了数据准备、模型初始化、损失函数定义及训练循环等关键步骤,并提供了评估模型性能的方法。希望本文能帮助读者更好地理解和实现模型微调。
1181 2
掌握从零到一的进阶攻略:让你轻松成为BERT微调高手——详解模型微调全流程,含实战代码与最佳实践秘籍,助你应对各类NLP挑战!
|
存储 前端开发 关系型数据库
在服务的数据驱动中使用三层架构
【6月更文挑战第17天】 三层架构是软件设计中的一种经典模式,将应用分为表示层(UI)、应用层(BLL)和数据层(DAL)。相比于双层架构,三层架构提供了更好的模块化和安全性。多层架构虽少见,但三层架构在现代云原生技术中依然重要,常与微服务结合使用。
321 2
在服务的数据驱动中使用三层架构
|
运维 安全 Docker
【Docker 专栏】Docker 镜像安全扫描与漏洞修复
【5月更文挑战第9天】Docker技术在软件开发和部署中带来便利,但其镜像安全问题不容忽视。本文探讨了Docker镜像安全扫描与漏洞修复,强调了镜像安全对应用和系统的重要性。文中介绍了静态和动态扫描方法,列举了软件漏洞、配置漏洞和恶意软件等常见安全问题,并提到了Clair和Trivy等扫描工具。修复策略包括更新软件、调整配置和重建镜像。此外,加强安全意识、规范镜像制作流程和定期扫描是管理建议。未来,将持续面对新的安全挑战,需持续研究和完善安全技术。
1054 3
【Docker 专栏】Docker 镜像安全扫描与漏洞修复
|
图形学 开发者
U3D开发进阶:精细调整Collider与优化碰撞检测性能
【7月更文第11天】在Unity 3D(简称U3D)开发过程中,精确控制Collider(碰撞器)的设置与合理利用Layer Collision Matrix(层级碰撞矩阵)对于提升游戏性能、优化物理模拟至关重要。本文将深入探讨这两项技术的应用,通过实际案例和代码示例,帮助开发者构建更加高效、流畅的游戏体验。
1994 2
|
Kubernetes Docker 容器
重置kubernetes集群
重置kubernetes集群
541 0
|
存储 弹性计算 负载均衡
使用SLB+2ECS+NAS,部署电商web网站的高可用架构
如您需要开发电商网站并且对外提供服务,当您的业务上升时,您需要为应用考虑高吞吐,高并发,高可用等能力,来应对用户的并发访问,保证应用稳定。本场景主要介绍如何使用SLB,ECS和NAS搭建高可用电商网站,助您业务上升。
|
DataWorks 安全 数据库
DataWorks产品使用合集之在DataWorks中,使用Power BI Desktop来连接Hologres数据库需要设置白名单如何解决
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
413 2
|
SQL 安全 测试技术
扫描神器:AppScan 保姆级教程(附步骤)
扫描神器:AppScan 保姆级教程(附步骤)
|
Prometheus 数据可视化 数据库
可视化工具Grafana:简介及安装
可视化工具Grafana:简介及安装
384 0