999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

電視互動應用中大并發的處理

2015-05-05 09:44:05杜歆文瞿向雷
電視技術 2015年16期
關鍵詞:數據庫用戶

杜歆文,瞿向雷,戴 駿

(蘇州廣播電視總臺 技術中心,江蘇 蘇州 215006)

電視互動應用中大并發的處理

杜歆文,瞿向雷,戴 駿

(蘇州廣播電視總臺 技術中心,江蘇 蘇州 215006)

為了增加城市電視傳媒影響力,擴大收視群體,產生用戶即時互動,推進媒體融合,蘇州廣播電視總臺開發了一款城市傳媒即時互動手機應用。該項目提供實時互動、點評節目、愛心捐助、獎品兌換、游戲娛樂等功能。在研發、使用過程中,發現業務存在大并發請求的問題。針對該問題,利用云計算資源,合理規劃系統架構,設計概率算法和金幣發放算法,滿足了業務需求,同時對系統的發展進行了規劃,使系統在一段時間內能夠滿足業務增長。

互動;云計算;大數據;并發;概率

1 背景與意義

傳統模式下的電視節目互動方式有三種,即信件、電話以及采訪。信件互動的特點是信息量大,同步性相對較差;電話互動能實現同步,并且具備交流直觀特點;采訪互動的成本相對較高,但同樣能實現同步。在數字模式下,通常采用短信、網絡、數字機頂盒的形式進行互動。短信近十年已證明了這種模式的成功,但隨著網絡介入互動,需要研究費用更低、實時性更高、受眾更多的網絡模式以及如何與觀眾互動[1]。

借助網絡互動,原來不愿意看電視的網民可能被拉到電視機前,原來只是把電視當作“背景音樂”的觀眾可以關注到內容上來,原來電視節目的鐵桿“粉絲”可以深度參與節目,借助互聯網,可以實現對收視率的拉升,既增加了電視傳播的影響力,也體現了廣告價值。同時,借助網絡收集的大量數據,針對節目受眾,分析用戶行為,節目制作、傳播更加契合市場需求。

目前,城市電視臺嘗試新媒體的方向主要有3種:第一,手機APP應用提供文字、圖片、視頻資訊以及電視、廣播節目;第二,利用電視臺的影響力、公信力為用戶提供城市信息化服務;第三,利用移動互聯網,電視節目與觀眾互動,電視和觀眾互相影響[2]。

針對第三點,各電視臺也做了很多嘗試,比如利用微博、微信增加受眾并與觀眾互動,湖南衛視開發了“芒果圈”、“呼啦”等應用結合實時電視節目[3-4],在手機上開展互動式活動,以娛樂的形式參與節目,并形成用戶與節目、用戶與用戶之間的互動。

2 項目需求

針對電視互動存在的問題,本項目擬研發一款針對電視互動的手機APP應用。該軟件規劃有如下模塊:

1)搖搖看。用戶使用該應用參與電視節目互動,當電視節目中出現通關密碼時,用戶輸入通關密碼可以進入該模塊,搖動手機獲得金幣或獎品。

2)評評看。根據欄目建立評論板塊,用戶進入相應的板塊發布評論,參與互動。評論后臺打通與電視屏幕的接口,通過審核后可以在電視上顯示。

3)捐捐看。該模塊發布一些需要捐助的困難人士的資料,并設定一定的籌款目標,可以與幫忙類欄目相結合,用戶在該模塊中可以把擁有的金幣捐贈給需要幫助的人,后臺把金幣折算成人民幣捐給受捐人。

4)玩玩看。采用應用內游戲,或連接到外部游戲,使用金幣進行對戰,增加娛樂性及用戶黏度。

5)換換看。該模塊發布一系列惠民商品,用戶使用金幣兌換實物商品。

6)活動。展示近期的熱門活動,吸引用戶積極參加。

由于軟件使用主要集中在晚間黃金時段,搖金幣活動的持續時間定位在數分鐘之內,在短時間內大量用戶登錄系統搖金幣,這對系統軟、硬件架構有極大的考驗,需要針對性地研究架構和算法,解決大并發的問題。

3 相關技術

3.1 云計算

云計算是一種按使用量付費的模式,這種模式提供可用的、便捷的、按需的網絡訪問,進入可配置的計算資源共享池(資源包括網絡、服務器、存儲、應用軟件、服務),這些資源能夠被快速提供,只需投入很少的管理工作,或與服務供應商進行很少的交互。

云計算在易用性、費用、部署方式等方面比傳統IT有著巨大的優點,云計算使得項目能夠更加專注功能及架構的設計,使得開發與運維完全分離,同時,云計算按使用量付費的模式避免了資源浪費問題,也能夠快速面對高峰的業務需求。另外,可擴展性是云計算非常大的特點,隨著業務增加,云計算能夠不斷擴展滿足業務需求。

圖1 系統拓撲圖

云計算與“堆硬件”有本質區別。首先,傳統IT方案針對業務壓力時,需要根據峰值采用大量硬件設備,從規劃、建設到投產,整個鏈條周期長、投入大,當業務發生變動時,會造成巨大浪費。其次,如果實際業務峰值超過了初始估計,服務將面臨癱瘓,無法在面臨業務量激增時做到“即插即用”。

3.2 大數據

從技術上看,大數據與云計算的關系就像一枚硬幣的正反面一樣密不可分。大數據必然無法用單臺的計算機進行處理,必須采用分布式計算架構。對海量數據的挖掘必須依托云計算的分布式處理、分布式數據庫、云存儲和虛擬化技術。

大數據技術就是從各種類型的海量數據中獲得有價值信息的技術,其過程包括數據采集、存儲、管理、分析挖掘、可視化等技術及其集成。其特點體現為數據量特別大,數據類型繁多,對處理的速度要求高,價值密度低。

在電視行業,收視率是以樣本戶體現的。在大數據時代,知道整體的用戶行為,了解所有的用戶在想什么、需要什么,對電視制作有現實的指導意義。

4 高并發的處理

智能手機終端的發展,使得用戶生成數據能力的增強,隨著云計算的介入,使用數據的能力增強,其中必須要擁有有效的手段收集數據。電視互動應用既可以吸引用戶收看電視,還可以在用戶使用過程中收集用戶數據,分析用戶行為。由于該應用的用戶同時為電視觀眾,使用時間也和電視觀看重合,因此,用戶數據近似認為是觀眾數據。

由于用戶的使用和電視直播有時間上的重合性,必然帶來一個問題——高并發的處理。根據項目需求,在“搖搖看”模塊,電視公布通關密碼,大量用戶會在同一時間同時涌入系統;在“評評看”模塊,新聞直播過程中一個熱門話題拋出,大量用戶同一時間發表自己的看法,刷新別人的評論;在互動過程中,用戶打開應用驗證登錄的時間都十分集中,這些特點會給系統帶來很大壓力。不同于一般新聞軟件或者社交類軟件,此類應用的用戶訪問雖然在一天中也有起伏,但基本平穩,電視互動類應用的用戶訪問有著集中、量大的特點,為了保證用戶正常使用、體驗流暢,必須對高并發的訪問進行特殊處理。

4.1 系統架構

系統部署于云端,云平臺提供的彈性服務可以根據業務的變化而增加、減少系統資源,滿足業務發展,避免資源浪費,同時能夠快速部署、快速上線,適應互聯網速度。

具體網絡拓撲如圖1所示。

手機客戶端與后臺交互通過Web Service的方式向后臺接口提出請求。后臺根據不同功能劃分為多個功能分區,如“搖搖看”業務為功能分區1,“評評看”業務為功能分區2。請求到達反向代理服務器后,根據配置負載情況,將請求分發到各接口服務器,接口服務器經過運算返回結果給客戶端。為了增加系統冗余,如圖中接口服務器5和6,被反向代理服務器1和2共享,即功能分區1中向反向代理服務器1的請求和功能分區2中向反向代理服務器2的請求,按設置權重都有可能被分發到接口服務器5和6進行計算,功能分區1和2的資源使用高峰不在同一時間點,這樣既增強了系統的安全性,同時也增強了系統資源的使用效率,提高了性能。

在數據庫方面,設計了一主多從的模式,從數據庫數據和主數據庫同步。數據庫服務器1作為主數據庫,所有寫操作都在主數據庫上操作,讀操作被分擔到不同的從數據庫2和3上。由于大部分數據庫操作都是讀操作,根據業務需求,從數據庫可以不斷擴展增加,如此架構保證了系統的擴展性。

4.2 算法設計

4.2.1 概率設計

在電視上公布通關密碼的一刻,大量用戶同時涌入“搖搖看”模塊進行搖金幣操作,因此除了要有健壯的后臺架構外,算法設計也是至關重要的。

首先是概率設計。用戶每次獲得金幣的數額應該是一個隨機值,但總體金幣數量又需要可控。因此,設計的概率設置如圖2所示。

圖2 概率設置

以圖2為例,用戶獲得1~10個金幣的概率是15%,獲得10~20個金幣的概率是45%,獲得20~50個金幣的概率是20%,獲得50~70個金幣和70~100個金幣的概率均為10%。用戶進入搖金幣活動,搖動手機,手機客戶端訪問后臺接口,接口程序根據概率設計首先確定該用戶獲得的金幣區間,比如用戶有45%的概率獲得金幣值10~20,然后在10~20的區間內再進行一次隨機,獲得的值為該用戶搖得的金幣。對于單個用戶來說,其每次搖金幣的概率滿足圖2分布,對于整體用戶而言,所有搖金幣次數應該也滿足圖2分布,即獲得10~20金幣的用戶占整體用戶的45%。因此只需要調整金幣區間和每個區間的概率,即可控制用戶整體獲得金幣的數量。

4.2.2 金幣發放設計

通常情況下,每個用戶搖動手機,向服務器請求金幣,服務器按以上算法計算本次應發金幣數量,并把已發放金幣總額和應發放金幣總額進行比較,余額充足則直接發放,余額小于該次請求金額,則只發放剩余金幣。

當請求數量多時,大量請求在同一時刻到達服務器,如圖3 所示。假設剩余金幣僅夠一次發放,在第二步操作有多個請求同時計算已發放金幣,判斷剩余金幣是否滿足發放,多個請求都判斷滿足發放,執行發放金幣操作,記錄發放金幣,如此發放金幣必然會超過預設值。該假設一般情況由于同時請求的概率很低,因此不會發生,當并發量大時,會造成發放無法控制。因此,計算已發放金幣和判斷剩余金幣必須線性操作,如圖4所示。

圖3 同時請求發金幣

圖4 線性的發金幣流程

按照圖4所示的方式發放金幣,可以保證金幣發放嚴格按照庫存進行,但同時帶來一個問題,大量請求積壓在等待環節,數據庫變成單線程操作,用戶會感受到卡頓、反應慢。如果業務能夠允許部分金幣超出預設值,按照圖3的方式,可以很大程度改善用戶性能。如果既保證性能,又保證業務的嚴謹性,算法就無法實現了。

既要保證客戶端請求在服務器上多線程并發處理,又要保證金幣數量一致性,需要采用預先生成的方式,將動態數據轉化為靜態數據。

在建立一個搖金幣活動時,后臺自動建立2張表,如圖5所示,根據設定概率和發放金幣總額預先生成金幣表并填充數據,同時建立1張空的預生成用戶表,2張表的ID均從1自增,當進行搖金幣活動時,所有請求用戶被插入預生成用戶表,如第n個搖金幣的用戶插入表后返回插入行的ID值n,去預生成金幣表進行比對,相同ID行即ID等于n的行所對應的金幣數量為該用戶獲得金幣數值。當預生成用戶表的返回ID值大于預生成金幣表的最大ID時,無法找到對應金幣數量,說明金幣已發放完,直接返回0金幣即可。

預生成金幣表預生成用戶表ID金幣數量ID用戶1102123154759…………

圖5 搖金幣預生成表

由于數據庫的ID自增機制保證了2張表的ID列從1開始每行連續自動增長,因此,大量用戶同時對數據庫表進行插入操作,依然能夠保證ID的唯一性,預生成用戶表的插入操作自動返回當前插入行ID值,不需要進行額外計算,預生成金幣表中數據在活動開始前預先生成,節約了活動進行過程中的計算資源。整個流程無鎖表操作,不會造成數據沖突,既保證了效率,也保證了數據安全。

5 問題與展望

軟件的設計在目前階段已基本能滿足業務的發展,但隨著用戶的增長,必然會遇到性能瓶頸。當用戶量達到一定規模時,還可以從以下幾部分進一步優化。

1)增加接口服務器數量。按照4.1節的系統架構描述,本系統接口服務器數量可以橫向任意擴展,當訪問量增加時,必然需要更多服務器處理訪問請求。

2)使用數據緩存系統。當請求數過多時,數據庫的讀寫成為瓶頸,可以考慮使用Memcache或Redis等數據緩存系統,將數據庫數據緩存進內存,在內存中進行讀寫,性能將有極大改善。

3)客戶端進行緩存。可以考慮從源頭上客戶端應用減少請求次數,每次請求服務器返回數據包含結果數據和數據有效期,根據業務類型設置不同的數據有效期。客戶端獲得結果數據后緩存在手機本地,在數據有效期到達之前不再向服務器發起請求,直接從本地讀取數據,如此將很大程度上減少請求數量。

[1] 陳琳娜. 新媒體時代電視節目互動研究[D].南京:南京師范大學,2011.

[2] 徐占基. TV“搖搖樂”助力城市臺新媒體啟航[R].北京:BIRTV臺長論壇與第二屆中國臺網融合高峰論壇,2014.

[3] 李真明. 電視互動類APP的興起——以湖南衛視“呼啦”APP 為例[J].新聞世界,2014(3):8-9.

[4] 向方霖. 電視臺互動APP運用的問題與對策——以湖南衛視“芒果圈”為例[J].新聞世界,2013(6):136-138.

責任編輯:任健男

Treatment of High Concurrentin TV Interactive Applications

DU Xinwen, QU Xianglei, DAI Jun

(TechnologyCenter,SuzhouBroadcastingSystem,JiangsuSuzhou215006,China)

In order to increase the city TV media influence, expand the audience groups, generate user real-time interaction, promote media convergence, a TV interactive application is developed. The project provides real-time interaction, program reviews, donations, prizes exchange, video games and other features. During the research, development and using, the business exists high concurrent problem. In this paper, some methods, such as using cloud computing resources, planning system architecture, designing algorithms of probabilistic and coins, are used to meet business needs. At the same time, the development planning of the system can meet the business growth in a period of time.

interactive;cloud computing;big data;concurrent;probability

TN948

B

10.16280/j.videoe.2015.16.007

2015-02-14

【本文獻信息】杜歆文,瞿向雷,戴駿.電視互動應用中大并發的處理[J].電視技術,2015,39(16).

猜你喜歡
數據庫用戶
數據庫
財經(2017年15期)2017-07-03 22:40:49
數據庫
財經(2017年2期)2017-03-10 14:35:35
關注用戶
商用汽車(2016年11期)2016-12-19 01:20:16
關注用戶
商用汽車(2016年6期)2016-06-29 09:18:54
數據庫
財經(2016年15期)2016-06-03 07:38:02
關注用戶
商用汽車(2016年4期)2016-05-09 01:23:12
數據庫
財經(2016年3期)2016-03-07 07:44:46
數據庫
財經(2016年6期)2016-02-24 07:41:51
Camera360:拍出5億用戶
創業家(2015年10期)2015-02-27 07:55:08
100萬用戶
創業家(2015年10期)2015-02-27 07:54:39
主站蜘蛛池模板: 欧美日韩免费| 嫩草在线视频| 久久精品一卡日本电影| 日本午夜三级| 91在线激情在线观看| 亚洲国产天堂久久九九九| 欧美精品v欧洲精品| 黄网站欧美内射| 国模沟沟一区二区三区 | 国产91线观看| 亚洲精品手机在线| 久久无码av三级| 亚洲天堂久久久| 亚洲综合久久一本伊一区| 伊伊人成亚洲综合人网7777| 毛片基地视频| 久久青草精品一区二区三区| 国产SUV精品一区二区| 日韩毛片在线播放| 免费A级毛片无码无遮挡| 国产精品女熟高潮视频| 精品视频福利| 亚洲国产日韩欧美在线| 福利片91| 成人福利在线视频免费观看| 毛片基地美国正在播放亚洲| 狠狠色婷婷丁香综合久久韩国| 国产综合色在线视频播放线视| av午夜福利一片免费看| 亚洲无线一二三四区男男| 97视频精品全国在线观看| 日本福利视频网站| 无码人妻热线精品视频| 国产白浆视频| 中日无码在线观看| 国产一区二区三区精品久久呦| 国产乱视频网站| 亚洲男人在线| 四虎在线观看视频高清无码| 一级毛片无毒不卡直接观看| 丁香婷婷激情网| 亚洲精品大秀视频| 国产69精品久久久久孕妇大杂乱| 99re在线观看视频| 亚洲另类色| 国产欧美日韩一区二区视频在线| 国产美女无遮挡免费视频| 国产精品欧美激情| 亚洲国产中文精品va在线播放| 精品伊人久久久香线蕉| 日韩精品无码免费专网站| 久久精品一卡日本电影| 国产丰满成熟女性性满足视频| 丝袜无码一区二区三区| 91九色国产porny| 97免费在线观看视频| 亚洲系列无码专区偷窥无码| 2021天堂在线亚洲精品专区 | 在线观看无码av免费不卡网站| 色婷婷在线播放| 人妻中文久热无码丝袜| 国产欧美中文字幕| 精品视频一区在线观看| 精品国产免费观看| 日韩国产高清无码| 亚洲美女高潮久久久久久久| 欧美日韩国产在线人成app| 91精品国产自产91精品资源| 国内精品九九久久久精品| a毛片免费观看| 中文无码精品a∨在线观看| 九色国产在线| 99国产精品国产高清一区二区| 99er这里只有精品| 国产成人久久综合一区| 日韩麻豆小视频| 国产一级做美女做受视频| 欧美一区二区人人喊爽| 国产美女免费| 国产色图在线观看| 国产色网站| 欧美视频免费一区二区三区|