基于Go語言的點播云消息處理模塊的設(shè)計與實現(xiàn)
發(fā)布時間:2018-06-27 11:11
本文選題:點播云 + Go; 參考:《南京大學(xué)》2017年碩士論文
【摘要】:隨著互聯(lián)網(wǎng)的大力發(fā)展,云服務(wù)逐漸普及起來。點播云是云計算在視頻上的嘗試,其背后蘊含了復(fù)雜的技術(shù),包括上傳下載,轉(zhuǎn)碼,域名分發(fā),廣告,加密防盜鏈等。點播云服務(wù)為中小型創(chuàng)業(yè)公司提供快速接入的開發(fā)工具,方便快速二次開發(fā)一個視頻點播平臺而不依賴于傳統(tǒng)的大視頻點播平臺,能為用戶提供便捷的視頻服務(wù)。本文針對點播云業(yè)務(wù)場景,設(shè)計并實現(xiàn)了七牛云點播云平臺的內(nèi)部消息處理模塊,以下簡稱Fetcher。本模塊主要服務(wù)于點播云內(nèi)部,針對用戶上傳視頻文件后產(chǎn)生的消息數(shù)據(jù)進行處理操作。模塊采用Go語言編寫,同時使用了分布式消息隊列Kafka和非關(guān)系型數(shù)據(jù)庫MongoDB。本文主要闡述Fetcher模塊及其高可用的設(shè)計與實現(xiàn)。本文首先介紹了點播云項目的背景和項目意義,描述了本系統(tǒng)使用的相關(guān)技術(shù),包括Go語言技術(shù)棧,MongoDB,mgo框架,Heartbeat等。然后針對點播云的業(yè)務(wù)邏輯進行Fetcher的需求分析,對系統(tǒng)進行模塊劃分,介紹系統(tǒng)的整體架構(gòu),設(shè)計了數(shù)據(jù)庫表,對各個模塊的功能和業(yè)務(wù)流程進行了詳細分析和設(shè)計,并設(shè)計和實現(xiàn)了 Fetcher模塊的高可用。最后,本文用偽代碼對模塊進行描述,闡述了 Fetcher內(nèi)部模塊的具體實現(xiàn)過程,展示了部分模塊的運行圖;谶@些實現(xiàn),能穩(wěn)定支撐點播云的業(yè)務(wù)平臺。目前有大量客戶在使用七牛點播云。
[Abstract]:With the vigorous development of the Internet, cloud services are gradually popularizing. VOD cloud is an attempt of cloud computing in video, which contains complex technologies, such as uploading and downloading, transcoding, domain name distribution, advertising, encryption chain and so on. VOD cloud service provides a rapid access development tool for small and medium-sized startups. It is convenient to develop a video-on-demand platform quickly and twice without relying on the traditional VOD platform. It can provide users with convenient video services. In this paper, we design and implement the internal message processing module of QiNiuyun on demand cloud platform, which is referred to as Fetcher. This module is mainly used in the on-demand cloud to handle the message data generated after the user uploads the video file. The module is written in go language, using distributed message queue Kafka and non-relational database MongoDB. This paper mainly describes the design and implementation of Fetcher module and its high availability. This paper first introduces the background and significance of the on-demand cloud project, and describes the related technologies used in this system, including the go language technology stack, MongoDB / Mgo framework and Heartbeat, etc. Then the Fetcher requirement analysis is carried out for the business logic of the on-demand cloud, the system is divided into modules, the overall structure of the system is introduced, the database table is designed, and the functions and business processes of each module are analyzed and designed in detail. The high availability of Fetcher module is designed and implemented. Finally, this paper describes the module with pseudo code, describes the implementation process of Fetcher internal module, and shows the operation diagram of some modules. Based on these implementations, can support the cloud on demand business platform. At present, there are a large number of customers in the use of seven cattle on demand cloud.
【學(xué)位授予單位】:南京大學(xué)
【學(xué)位級別】:碩士
【學(xué)位授予年份】:2017
【分類號】:TP393.09
,
本文編號:2073729
本文鏈接:http://sikaile.net/wenyilunwen/guanggaoshejilunwen/2073729.html
最近更新
教材專著