目的: 满足X人同时通过移动APP(ios,android)进行电台收听,解决方案的分析。请大拿们拍砖,因为鄙人不懂这个地。。。。 基本概述(如果这里的结论发生错误,一定要指正啊): 1.纯数据的服务,多个服务器做负载均衡 应该可以提供足够的并发连接 主要消耗
目的:
满足X人同时通过移动APP(ios,android)进行电台收听,解决方案的分析。请大拿们拍砖,因为鄙人不懂这个地。。。。
基本概述(如果这里的结论发生错误,一定要指正啊):
1. 纯数据的服务, 多个服务器做负载均衡 应该可以提供足够的并发连接 主要消耗的就是带宽 服务器性能要求都不会高的
2. 网络电台的话 采用P2P技术会很大地降低服务器的带宽要求
3. 连接处理能力对CPU、要求也不会高的
4.移动设备,尤其是ios上,P2P实现难度高,见下面知呼 截图,另外移动设备本身的上行带宽估计也不是很好吧
资料:
CDN,CDN全称Content Delivery Network,即内容分发网络。国内很多供应商提供,例如百度,腾讯提供的CDN服务与一般意义上的CDN服务是一样的,旨在将网站的静态内容发布到最接近用户的网络的边缘,使用户可以就近取得所需的内容,提高用户访问网站的响应速度。(这个技术在第一稿的方案中提到CDN,后来说IT管理,集中化,就改动了,但考虑下来CDN可能还是最好的)//由于本方案中目前要求的音频资源量不大,数据复制问题不是很大,一般直接采用cdn服务商提供的服务即可。
带宽要求:
类型 品质 带宽
音频 一般话音品质 8K
一般音乐品质 16K
调频音乐品质 24K
接近CD品质 48K
完全 CD 品质 64K
类型 品质 带宽 音频 一般话音品质 8K 一般音乐品质 16K 调频音乐品质 24K 接近CD品质 48K 完全CD品质 64KP2P:
P2P网络的一个重要的目标就是让所有的客户端都能提供资源,包括带宽,存储空间和计算能力。因此,当有节点加入且对系统请求增多,整个系统的容量也增大。这是具有一组固定服务器的Client-Server结构不能实现的,因为在上述这种结构中,客户端的增加意味着所有用户更慢的数据传输。
P2P网络的分布特性通过在多节点上复制数据,也增加了防故障的健壮性,并且在纯P2P网络中,节点不需要依靠一个中心索引服务器来发现数据。在后一种情况下,系统也不会出现单点崩溃。
当用P2P来描述Napster 网络时,对等协议被认为是重要的,但是,实际中,Napster 网络取得的成就是对等节点(就像网络的末枝)联合一个中心索引来实现。这可以使它能快速并且高效的定位可用的内容。对等协议只是一种通用的方法来实现这一点。
案列:
1.CDN+NETAPP NAS
北京广播网(http://www.rbc.cn),是个网页+电台的媒体,北京广播网拥有 26 个频道,200 多个二级页面,日点击量超过 500万人次。北京广播网拥有两个专业 IDC 机房。
天津机房拥有500 兆独享带宽,中国电信、中国网通、中国联通、中国移动、教育网等多线路光纤接入,实现全网互连互通,并有专业防火墙、负载均衡设备,Cisco 高性能交换设备,采用高速安全 NAS 存储系统。
北京网通机房位于网通骨干节点,独享百兆带宽。
随着用户规模的扩大,凭借以往单一的网站发布中心已经不能够满足越来越多的用户访问需求。为此,北京广播网在全国范围内建立了CDN(Content
Delivery Network)内容发布中心。
随着网络电台建设的完成,北京广播网已初步建成了覆盖全国的
CDN内容发布网络,以北京(廊坊机房)为中心发布站点,广州为核心镜像站点,并同时在中国教育网建设了网站热点内容的镜像发布,为北京广播网的下一步发展奠定了坚实的网络基础。廊坊机房现配备有 FAS3020、FAS2050两套存储系统,编辑人员根据页面信息、视频、音频、论坛等类别分别将其存储在不同的存储空间中,再通过 SnapMirror 将北京节点的内容同步到广州电信节点和中国教育网节点。
2.云服务
- 作为移动APP应用的典型代表,唱吧拥有百万级的日活跃用户。对音视频数据和图片数据都拥有大量需求。同时,基于阿里云提供的简单直接的云基础服务,唱吧技术人员可以将更多精力投入上层业务搭建。
- 使用服务:开放存储服务+内容分发网络
不算案列的例子
招聘岗位:某网络电台 运维工程师
年薪: (嘿嘿,除了能拿到理想薪资待遇,还有各种你意想不到的福利哦)
岗位职责:
1、负责制定运维资源需求及运维计划
2、针对应用系统功能使用,支持相关业务流程变更或升级,配置相关系统参数、业务数据事项。
3、维护所有机房设备,保证网络正常并建立警报机制。
4、产品使用的网络状况监控与故障响应,同时做好内部归类、总结。
5、负责制定应用系统的管理制度、应急机制和保障方案,并贯彻执行。
6、开发运维平台系统
岗位要求:
1、大专以上学历,三年以上系统工程师运维工作经验。
2、精通Linux系统管理,熟悉Kernel调优,有性能监控和优化工作经验。
3、熟练使用Nginx,Apache,Varnish,Memcached,Mysql,Redis,Iptables,dns,lvs等技术。
4、熟悉MySQL数据库优先。
5、有软件开发经验,掌握shell/perl/php/python中的一种或两种脚本编程语言者优先。
6、具备大型及分布式数据中心整体架构设计与规划能力,能规划和维护千万级PV的多IDC网络结构优先。
7、有过自动化运维的经验,如puppet的使用优先。
8、有虚拟化、云计算、CDN经验优先。
仔细分析以上的关键词,LVS集群,我们方案中采用,redis缓存,节目列表,访问静态内容。多IDC 机房(不能集约化),做CDN分发
参考:
P2P技术应用于网络电台
http://wenku.baidu.com/view/de25d67931b765ce05081431.html
p2p
http://zh.wikipedia.org/wiki/%E5%B0%8D%E7%AD%89%E7%B6%B2%E8%B7%AF
荔枝电台的招聘
http://bbs.linuxtone.org/thread-24245-1-1.html
2010年,优酷网主要采用dell PowerEdge 1950、PowerEdge 860,存储阵列以dell MD1000为主。这些设备的主要配置如下:
PE1950采用英特尔至强5310处理器,4G内存,两块300G SAS硬盘。PE860采用英特尔至强3060处理器,4G内存,一块80G SATA硬盘。MD1000存储阵列则装载有15块750G SATA硬盘。
在体系结构上,优酷网采用分布式的结构,服务器和存储设备分布在全国各地,用户就近访问,获得最快的视 频体验。
优酷网将PE1950作为Web服务器和流媒体服务器,分别服务于页面系统与视频系统。页面系统用以展 示用户信息、积分、留言及视频的截图、排名、展示等,该系统所用的服务器数量只占20%左右,80%的服务器都是用于视频系统的流媒体服务器,它们通过负 载均衡的方式为用户提供流媒体服务。
优酷网视频系统的加速机制较复杂,简单而言,它通过多种方式保证分布在全国各地的用户进行就近访问—CDN— 用户点击视频请求后,优酷网将根据用户所处地区位置,将离用户最近、服务状况最好的视频服务器地址传送给用户,从而保证用户可以得到快速的视频体验。目前优酷网采用的是基于Flash的视频点播技术,这与P2P直播/点播有所不同,前者所有流量都来自服务器。因此优酷网相比其他网站,更需要大量存储和流媒体服务器。

Stored procedures are precompiled SQL statements in MySQL for improving performance and simplifying complex operations. 1. Improve performance: After the first compilation, subsequent calls do not need to be recompiled. 2. Improve security: Restrict data table access through permission control. 3. Simplify complex operations: combine multiple SQL statements to simplify application layer logic.

The working principle of MySQL query cache is to store the results of SELECT query, and when the same query is executed again, the cached results are directly returned. 1) Query cache improves database reading performance and finds cached results through hash values. 2) Simple configuration, set query_cache_type and query_cache_size in MySQL configuration file. 3) Use the SQL_NO_CACHE keyword to disable the cache of specific queries. 4) In high-frequency update environments, query cache may cause performance bottlenecks and needs to be optimized for use through monitoring and adjustment of parameters.

The reasons why MySQL is widely used in various projects include: 1. High performance and scalability, supporting multiple storage engines; 2. Easy to use and maintain, simple configuration and rich tools; 3. Rich ecosystem, attracting a large number of community and third-party tool support; 4. Cross-platform support, suitable for multiple operating systems.

The steps for upgrading MySQL database include: 1. Backup the database, 2. Stop the current MySQL service, 3. Install the new version of MySQL, 4. Start the new version of MySQL service, 5. Recover the database. Compatibility issues are required during the upgrade process, and advanced tools such as PerconaToolkit can be used for testing and optimization.

MySQL backup policies include logical backup, physical backup, incremental backup, replication-based backup, and cloud backup. 1. Logical backup uses mysqldump to export database structure and data, which is suitable for small databases and version migrations. 2. Physical backups are fast and comprehensive by copying data files, but require database consistency. 3. Incremental backup uses binary logging to record changes, which is suitable for large databases. 4. Replication-based backup reduces the impact on the production system by backing up from the server. 5. Cloud backups such as AmazonRDS provide automation solutions, but costs and control need to be considered. When selecting a policy, database size, downtime tolerance, recovery time, and recovery point goals should be considered.

MySQLclusteringenhancesdatabaserobustnessandscalabilitybydistributingdataacrossmultiplenodes.ItusestheNDBenginefordatareplicationandfaulttolerance,ensuringhighavailability.Setupinvolvesconfiguringmanagement,data,andSQLnodes,withcarefulmonitoringandpe

Optimizing database schema design in MySQL can improve performance through the following steps: 1. Index optimization: Create indexes on common query columns, balancing the overhead of query and inserting updates. 2. Table structure optimization: Reduce data redundancy through normalization or anti-normalization and improve access efficiency. 3. Data type selection: Use appropriate data types, such as INT instead of VARCHAR, to reduce storage space. 4. Partitioning and sub-table: For large data volumes, use partitioning and sub-table to disperse data to improve query and maintenance efficiency.

TooptimizeMySQLperformance,followthesesteps:1)Implementproperindexingtospeedupqueries,2)UseEXPLAINtoanalyzeandoptimizequeryperformance,3)Adjustserverconfigurationsettingslikeinnodb_buffer_pool_sizeandmax_connections,4)Usepartitioningforlargetablestoi


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

EditPlus Chinese cracked version
Small size, syntax highlighting, does not support code prompt function

Zend Studio 13.0.1
Powerful PHP integrated development environment

PhpStorm Mac version
The latest (2018.2.1) professional PHP integrated development tool

VSCode Windows 64-bit Download
A free and powerful IDE editor launched by Microsoft

mPDF
mPDF is a PHP library that can generate PDF files from UTF-8 encoded HTML. The original author, Ian Back, wrote mPDF to output PDF files "on the fly" from his website and handle different languages. It is slower than original scripts like HTML2FPDF and produces larger files when using Unicode fonts, but supports CSS styles etc. and has a lot of enhancements. Supports almost all languages, including RTL (Arabic and Hebrew) and CJK (Chinese, Japanese and Korean). Supports nested block-level elements (such as P, DIV),
