为什么我们要用BS架构来开发流媒体平台?

2024-04-24 03:32

本文主要是介绍为什么我们要用BS架构来开发流媒体平台?,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

熟悉我们的小伙伴都知道,我们开发的所有流媒体平台EasyNVR、EasyGBS、EasyCVR、EasyDSS等都是BS架构,至于BS架构和CS架构的区别,我们在之前的博文中也提到过:视频流媒体服务器BS架构与CS架构的区别在哪里?大家有兴趣可以了解一下。

BS和CS两种架构针对不同的场景有不同的应用需求,简单来说,BS主要支持浏览器的无插件直播,而CS主要是在客户端直播方面发挥作用。CS架构要先于BS架构出现,BS架构是CS架构的一种变化或者说是改进,解决了CS架构无法统一客户端的难题,将系统功能实现的核心部分集中到服务器上,简化了系统的开发、维护和使用。

在EasyNVR的使用中,一般项目场景比较大的用户团队应该有明显的感觉,如果没有采用BS架构,那么系统管理人员需要在基数量庞大的电脑服务器之间重复运行,不仅工作量大,且效率低下,还会浪费大量人力资源。但采用B/S架构的EasyNVR平台,则只需管理服务器就行了,所有的客户端只是浏览器,无需做过多人力维护,且无论用户规模会达到何种级别,也无论分支机构有多少,都不影响维护升级的工作量,只需关注服务器操作即可。

此外,基于BS架构的EasyNVR流媒体平台具备windows和Linux两种版本,在系统的选择性上相对更高,而且安全性高,不管选用哪种操作系统都可以让大部分人使用windows作为桌面操作系统电脑不受影响,还可以充分发挥Linux中数据库免费的绝对优势。

EasyNVR背景分析1.png

然而BS架构仍给EasyNVR的实际运行带来了一定的劣势。由于用户界面主要事务逻辑在服务器(Server)端完全通过浏览器实现,极少部分事务逻辑在前端(Browser)实现,因此服务器承载了大部分的数据,随着数据增加,负荷将会越来越重。也正是因为这个原因,很多视频项目都会准备一套数据库存储服务器以防万一。

针对负荷问题,EasyNVR也有自身的处理方式,即集群和分布存储。集群的特点是通过多台计算机完成同一个工作,当一台服务器崩溃,也不会影响其他服务器的运行。自身拥有拉取安防RTSP视频流的功能,同时自身也拥有流媒体分发的能力。以集群的方式来说,就是多个流媒体进行视频分发、多个服务进行视频拉流,是集群服务的直接使用形式。

实际上不仅是EasyNVR,很多场景运用中都经常会有高并发和多设备的情况,我们则提供了一个相对具备优势的解决方案,不管是BS架构还是集群和分布式存储,我们都有将视频传输或者说服务器压力降低的方式。如果大家有兴趣,可以关注我们获取更多相关视频解决方案,欢迎大家了解。

TSINGSEE2.png

这篇关于为什么我们要用BS架构来开发流媒体平台?的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/930649

相关文章

基于Python开发电脑定时关机工具

《基于Python开发电脑定时关机工具》这篇文章主要为大家详细介绍了如何基于Python开发一个电脑定时关机工具,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1. 简介2. 运行效果3. 相关源码1. 简介这个程序就像一个“忠实的管家”,帮你按时关掉电脑,而且全程不需要你多做

Java中的Opencv简介与开发环境部署方法

《Java中的Opencv简介与开发环境部署方法》OpenCV是一个开源的计算机视觉和图像处理库,提供了丰富的图像处理算法和工具,它支持多种图像处理和计算机视觉算法,可以用于物体识别与跟踪、图像分割与... 目录1.Opencv简介Opencv的应用2.Java使用OpenCV进行图像操作opencv安装j

基于Qt开发一个简单的OFD阅读器

《基于Qt开发一个简单的OFD阅读器》这篇文章主要为大家详细介绍了如何使用Qt框架开发一个功能强大且性能优异的OFD阅读器,文中的示例代码讲解详细,有需要的小伙伴可以参考一下... 目录摘要引言一、OFD文件格式解析二、文档结构解析三、页面渲染四、用户交互五、性能优化六、示例代码七、未来发展方向八、结论摘要

在 VSCode 中配置 C++ 开发环境的详细教程

《在VSCode中配置C++开发环境的详细教程》本文详细介绍了如何在VisualStudioCode(VSCode)中配置C++开发环境,包括安装必要的工具、配置编译器、设置调试环境等步骤,通... 目录如何在 VSCode 中配置 C++ 开发环境:详细教程1. 什么是 VSCode?2. 安装 VSCo

C#图表开发之Chart详解

《C#图表开发之Chart详解》C#中的Chart控件用于开发图表功能,具有Series和ChartArea两个重要属性,Series属性是SeriesCollection类型,包含多个Series对... 目录OverviChina编程ewSeries类总结OverviewC#中,开发图表功能的控件是Char

鸿蒙开发搭建flutter适配的开发环境

《鸿蒙开发搭建flutter适配的开发环境》文章详细介绍了在Windows系统上如何创建和运行鸿蒙Flutter项目,包括使用flutterdoctor检测环境、创建项目、编译HAP包以及在真机上运... 目录环境搭建创建运行项目打包项目总结环境搭建1.安装 DevEco Studio NEXT IDE

Python开发围棋游戏的实例代码(实现全部功能)

《Python开发围棋游戏的实例代码(实现全部功能)》围棋是一种古老而复杂的策略棋类游戏,起源于中国,已有超过2500年的历史,本文介绍了如何用Python开发一个简单的围棋游戏,实例代码涵盖了游戏的... 目录1. 围棋游戏概述1.1 游戏规则1.2 游戏设计思路2. 环境准备3. 创建棋盘3.1 棋盘类

mybatis的整体架构

mybatis的整体架构分为三层: 1.基础支持层 该层包括:数据源模块、事务管理模块、缓存模块、Binding模块、反射模块、类型转换模块、日志模块、资源加载模块、解析器模块 2.核心处理层 该层包括:配置解析、参数映射、SQL解析、SQL执行、结果集映射、插件 3.接口层 该层包括:SqlSession 基础支持层 该层保护mybatis的基础模块,它们为核心处理层提供了良好的支撑。

流媒体平台/视频监控/安防视频汇聚EasyCVR播放暂停后视频画面黑屏是什么原因?

视频智能分析/视频监控/安防监控综合管理系统EasyCVR视频汇聚融合平台,是TSINGSEE青犀视频垂直深耕音视频流媒体技术、AI智能技术领域的杰出成果。该平台以其强大的视频处理、汇聚与融合能力,在构建全栈视频监控系统中展现出了独特的优势。视频监控管理系统EasyCVR平台内置了强大的视频解码、转码、压缩等技术,能够处理多种视频流格式,并以多种格式(RTMP、RTSP、HTTP-FLV、WebS

百度/小米/滴滴/京东,中台架构比较

小米中台建设实践 01 小米的三大中台建设:业务+数据+技术 业务中台--从业务说起 在中台建设中,需要规范化的服务接口、一致整合化的数据、容器化的技术组件以及弹性的基础设施。并结合业务情况,判定是否真的需要中台。 小米参考了业界优秀的案例包括移动中台、数据中台、业务中台、技术中台等,再结合其业务发展历程及业务现状,整理了中台架构的核心方法论,一是企业如何共享服务,二是如何为业务提供便利。