一、摘要

自“十四五”计划提出以来,国家将“互联网+教育”列为工作重点。再结合后疫情时代的大发展背景,人们的需求已经从简单的“拥有一个线上平台”变为了“拥有性能较好、可用性较高的线上平台”。当前已有的软件基本可以满足用户观看直播的需求,但在满足用户自行开启直播、分享直播与系统的响应速度方面还有待提升,时常出现无法满足用户需求的情况。

为切实解决实际生活中出现的需求,在贴合时代发展的背景下,该项目运用了当下最流行的微服务架构、Spring Cloud开发框架等高新技术,开发了一套直播系统,满足了在信息化时代的当下人们对于娱乐、学习等方面的需求。本系统为用户提供了观看直播、开启直播、发送弹幕、礼物、评论视频、发布视频、分享直播、点赞、收藏、修改个人信息等功能。从直播平台搭建的角度来看,功能完备,性能优越。对于平台管理者来说,本系统也提供了直播管理、直播数据分析、系统日志等内容,用以对平台进行数据监测及管理。同时,该项目可在多端运行,针对各端不同的特性进行设计,适应不同需求。在兼顾较为传统的pc端的同时,也考虑到新兴的手机端的需求。

关键词:微服务,直播平台,Spring Cloud框架,Spring Cloud Alibaba框架​​​​​​​

Since the 14th Five-Year Plan was put forward, the country has made "Internet plus education" a priority. Combined with the great development background in the post-epidemic era, people's demand has changed from a simple "owning an online platform" to "owning an online platform with better performance and higher usability". Currently, the existing software can basically meet the needs of users to watch live broadcasting, but it needs to be improved in terms of meeting the needs of users to start live broadcasting, share live broadcasting and the response speed of the system, which often fails to meet the needs of users.

In order to effectively solve the needs in real life, in the context of the development of the times, the project uses the most popular microservices architecture, Spring Cloud development framework and other high-tech, developed a live system to meet the needs of people in the information age for entertainment, learning and other aspects. The system provides users with the functions of watching live, opening live, sending pop-ups, gifts, commenting on videos, posting videos, sharing live, liking, collecting and modifying personal information. From the perspective of live streaming platform building, the functions are complete and the performance is superior. For platform managers, the system also provides live broadcast management, live data analysis, system logs, etc. for data monitoring and management of the platform. At the same time, the project can run on several ends While taking into account the more traditional PC terminal, it also takes into account the needs of the emerging cell phone terminal.

KEY WORDS: Microservices, live streaming platform, Spring Cloud framework, Spring Cloud Alibaba framework

二、背景和意义

随着互联网高速发展以及第五代移动通信技术的诞生,人们对于娱乐的需求呈爆炸式增长,这一点从近年来B站、抖音、快手等视频软件的风靡可以体现。与此同时,人们对娱乐的质量开始寄予更高的期望。短短几年前还可称为新鲜的娱乐形式,如文字、图片、视频等,已不能再满足人们的日常需求。在这样的大环境下,人们不断寻求一种更加直接、刺激、更能够满足感官欲望的的娱乐形式,于是,网络直播走入了人们的日常生活。

近年来,因疫情的影响,人们的生活发生了翻天覆地变化。这样的改变已渗透进生活的方方面面。针对学生和老师群体来说,教学的模式从以往的粉笔板书,变为电子投屏与板书结合,再变成如今的线上课程,疫情在其中起到了决定性的影响作用。现阶段,以直播形式进行在线授课已成为常态化。在线教育以互联网为平台进行直播,师生无需在固定的地点和时间参加课堂,突破了时间和空间的约束。只要拥有一台电子设备,教师和学生便可以随时随地便捷地开课或参加课程。这样的教学模式具有受众广、支持碎片化学习等特点。

传统的线上教学模式深受网络质量影响,虽跨越了时间、空间的难题,但在实际开课过程中也仍有许多问题亟需解决。在基础设施方面,线上教学需要稳定的网络基站提供信号,教学质量及其依靠网速及信号。在软件使用方面,也存在着功能布局不合理、难以操作、层次不清晰等问题。本人将利用所学知识,使用微服务进行直播软件的开发,从架构上提升软件质量,直面用户需求,确保软件在使用过程中的稳定性,增加容错率。

《“十四五”信息化和工业化深度融合发展规划》提出,提出到2025年,工业互联网平台普及率达45%。推进工业互联网平台建设和应用,是“十四五”两化深度融合发展规划的工作重点。[1]

针对互联网企业来说,线上办公,视频会议已经是工作的一部分。传统企业上云进程加快,驱使我国云计算市场规模——特别是公有云——快速扩张,为打造IT数字化基础能力奠定坚实的基础。[2]此外,大数据、边缘计算、物联网、区块链、人工智能和5G等新一代数字技术的持续发展突破,都为企业实现数字化转型提供了技术保障。从市场需求来看,全球经济、市场、商品等多维一体化发展的趋势,不断迫使企业从信息化转向数字化,并进一步向数智化方向发展。而企业直播服务可以留存并打通企业用户数据,并进一步在AI和人工智能算法的帮助下对直播运营环节提供优化的方向,进而提升运营效率,帮助企业更好的应对愈发激烈的市场竞争。

在这种背景下,本人基于微服务架构,设计了一个直播系统。本系统充分使用微服务架构、Spring Cloud、Spring Cloud Alibaba框架等高新技术,服务细粒度划分到功能,服务之间解耦,从而提高开发效率和独立扩展能力。同时,该项目使用服务通信、负载均衡、降级熔断、链路追踪、分布式集群等技术和方案,保证服务的高可用性和可拓展性。

三、国内外研究现状

在疫情时代来临前,国内线上直播平台主要用于娱乐休闲。近年来互联网直播的发展历程大致可以划分为以下4个时期:以YY、六间房为主的基于PC端的秀场直播;从YY发展而来的虎牙、斗鱼、龙珠等各类游戏直播;以花椒、映客陌陌为主的移动泛娱乐直播;以微鲸科技、花椒直播为主的VR直播。

市场上还存在各种垂直类直播,典型的如淘宝直播(主打购物)、知牛财经(主打金融)、酷狗直播(主打音乐)、100直播(主打教育)等等。该类直播具有鲜明的用户需求,定位准确[1]。

国外视频直播最原始的形态即制作YouTube视频,主打以分享的方式传播视频。而Twitch是最早尝试视频直播的公司,主要提供游戏视频进程实况直播与游戏活动赛事等的转播,也支持聊天室的功能。该系列功能退出后迅速引爆互联网,吸引大量用户关注[2]。

国内的在线教育最早起源于教育部门的试点工程,通过录制优质课程或远程课堂的形式,使得经济欠发展地区的学生可以享受优质的教育资源。目前,国外已经涌现出如可汗学院、Coursera Udacity等优质的平台。这些平台课程质量优秀、深受学生喜爱。此外,基本每个顶尖学府均搭建了依托本校教学内容的在线学习平台[3]。

对于微服务这一新兴的开发方式而言,系统根据需求分析和微服务理论对系统功能模块进行划分以实现模块之间的解耦,划分后以服务为单位进行开发、部署和维护[4]。

四、本文主要架构

本课题是基于当前社会发展现状和人们的切实需求,设计且实现一个基于微服务架构的直播系统。满足用户在平台上可以进行多人视频直播,在线视频学习,并且进行交互和讨论。本文的主要研究工作如下:

(1)对直播平台各种角色用户的需求进行详细分析,并配合用例图说明。从系统性能和可靠性的角度出发明确系统的各项非功能需求。

(2)研究和学习微服务架构的理论和各种技术,进行技术调研和选型,为系统的设计与实现打下基础。研究提高系统性能的各种计数原理,例如服务治理、服务网关、服务等。

(3)基于需求分析,设计和实现面向微服务架构的系统。按照微服务的基本原则设计功能模块和拆分服务,以实现服务之间的高内聚和低耦合。按照业务实体设计数据库。采用 Spring Cloud 技术栈,综合应用集群、负载均衡、前后端分离架构等技术手段实现各功能模块,提高系统的性能和可用性。

(4)系统部署、运行和测试。使用容器技术 Docker 部署系统,做到监控系统的同时保证服务可动态伸缩。综合运用各种方法和工具对系统进行测试,根据测试结构对系统进行优化和改进。

五、论文组织结构

本论文的组织结构如下:

第一章 阐明课题的研究背景,介绍课题的研究现状和来源,并概述设计(论文)的主要工作和创新点。

第二章 系统分析。主要用来阐述项目的需求、系统中的主要业务、非功能性分析、可行性分析等内容。

第三章 系统总体设计。主要用来描述项目的具体设计,包含数据库设计与接口设计等内容,用图表加以叙述。

第四章 系统详细设计。主要用来解释项目中的对象、交互、功能等内容,用类图、协作图、流程图等进行描述。

第五章 系统实现。结合代码进行演示,并配合效果图阐述,主要用来呈现项目实际完成的功能和效果。

第六章 系统测试与部署。主要对前文讲述的各项功能、板块等进行测试,从测试结果反推代码是否正确,在最终项目完成前做最后的整体检查。

第七章 总结与展望。对本课题进行总结,分析优点与不足,并对今后的研究做出总结和展望。

基于微服务架构的直播平台搭建【一】相关推荐

  1. 基于微服务架构的云平台总体设计

    正好这段时间我们在封闭研发我们的新一代数字化云平台(theplatform),借此机会和大家分享一下我们的总体设计及思路: theplatform是一款基于微服务架构的DevOps容器云平台,设计主体 ...

  2. 基于SpringCloud微服务架构的直播平台的设计与实现(前端小程序+后端Java IDEA) 文档+项目源码

    摘 要 本文的主题是设计与实现一个基于 SpringCloud+Golang 微服务框架的分布式直播平台,主要聚焦于短视频与直播流媒体服务.系统由服务端,后台管理端和微信小程序端三部分组成,推拉直播流 ...

  3. 基于SpringCloud微服务架构的直播平台的设计与实现

    摘 要 本文的主题是设计与实现一个基于 SpringCloud+Golang 微服务框架的分布式直播平台,主要聚焦于短视频与直播流媒体服务.系统由服务端,后台管理端和微信小程序端三部分组成,推拉直播流 ...

  4. SWIFT PLM 介绍|基于微服务架构的Swift PLM云平台

    基于微服务架构的Swift PLM云平台 1.       Swift PLM 云平台基于微服务架构 杰信软件公司致力于一系列基于PLM系统的实施及二次开发的解决方案,并在近期取得巨大进展,自主研发了 ...

  5. 基于java基于微服务架构的在线音乐平台计算机毕业设计源码+系统+lw文档+mysql数据库+调试部署

    基于java基于微服务架构的在线音乐平台计算机毕业设计源码+系统+lw文档+mysql数据库+调试部署 基于java基于微服务架构的在线音乐平台计算机毕业设计源码+系统+lw文档+mysql数据库+调 ...

  6. 基于微服务架构的餐饮系统的设计与实现计算机毕业设计源码86393

    摘    要 近年来,我国经济和社会发展迅速,人们物质生活水平日渐提高,餐饮行业更是发展迅速,人们对于餐饮行业的认识和要求也越来越高.传统形式的餐饮行业都是以人为本,管理起来需要很多人力.物力.财力, ...

  7. 基于微服务架构,改造企业核心系统之实践

    2019独角兽企业重金招聘Python工程师标准>>> 1. 背景与挑战 随着公司国际化战略的推行以及本土业务的高速发展,后台支撑系统已经不堪重负.在吞吐量.稳定性以及可扩展性上都无 ...

  8. 计算机毕业设计springcloud基于微服务的家居体验平台的设计与实现

    最新200套计算机专业原创毕业设计参考选题都有源码+数据库是近期作品 如果题目不合适,可以评论留下题目,或add_用户名,有时间看到机会给您发 1 ssm高校大学生就业系统 2 ssm智创员工管理系统 ...

  9. saas系统的微服务器,基于微服务架构的SaaS服务应用的研究与实践

    摘要: SaaS(Software as a Service)应用作为一种新型的软件服务模式,在日常生产生活中越来越重要.在SaaS应用的落地过程中传统的的单体架构不能满足SaaS应用的需求,于是微服 ...

最新文章

  1. (转)eclipse 代码自动补全
  2. 计算机专业名词术语raid,RAID中的9个专业术语详解
  3. 今天会见广州用友的SALER
  4. esxi usb插口_酷暑大作战 | USB-C风扇新体验
  5. 华为内核已经升级到鸿蒙,安卓再见!华为升级全力转向鸿蒙OS
  6. 网宿科技:向云服务商转型
  7. CSS webkit
  8. 【数据结构(C语言)】数据结构-图
  9. linux系统时间和硬件时钟问题
  10. Vulkan Loader 何时加载 ICD 驱动文件
  11. flash用FlashPlayer将一个swf打包成exe
  12. PHP HTML转PDF
  13. JavaScript中的symbol对象
  14. 百度Apollo的dreamview的frontend的数据传输部分简单梳理
  15. 聊聊前端框架——尤雨溪
  16. Redis RU101课程 Introduction to Redis Data Structures 第5周学习笔记
  17. P-Link ARM Cortex-M脱机编程器开源前的一些准备工作----第四章 几个重要的结构体介绍
  18. 一个很好用的gif动态图控件:GifImageView
  19. 视觉机器人+人体姿态识别项目总结
  20. layui点击表格图片放大

热门文章

  1. 深入理解Java虚拟机——魔数与Class文件的版本
  2. ES更改默认分片数量及副本
  3. SMART 关键指标解析, 如何通过解读 SMART 信息预测硬盘故障
  4. html居中小圆点●,圆点怎么打_居中小圆点怎么打出来_电脑常识_中华康网
  5. 分手后怎样才能让前任重回你身边
  6. DOS命令:assoc
  7. linux和windows下分别如何查看电脑是32位的还是64位?
  8. 手机号登录和微信登录
  9. ORA-01045: user ICCS lacks CREATE SESSION privilege; logon denied
  10. SAP S4 FI 后台详细配置教程文档 PART2 (财务会计的基本设置篇)