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

基于B/S的網(wǎng)上考試系統(tǒng)高并發(fā)性能優(yōu)化研究與應(yīng)用

2015-07-17 01:25:47徐曉鶴山東鋼鐵股份有限公司萊蕪分公司自動(dòng)化部山東萊蕪271104
山東工業(yè)技術(shù) 2015年7期

徐曉鶴(山東鋼鐵股份有限公司萊蕪分公司自動(dòng)化部,山東 萊蕪 271104)

基于B/S的網(wǎng)上考試系統(tǒng)高并發(fā)性能優(yōu)化研究與應(yīng)用

徐曉鶴
(山東鋼鐵股份有限公司萊蕪分公司自動(dòng)化部,山東 萊蕪 271104)

摘 要:網(wǎng)上考試系統(tǒng)隨著網(wǎng)絡(luò)信息技術(shù)的發(fā)展不斷得到推廣應(yīng)用。隨著應(yīng)用對(duì)象、考試規(guī)模的不斷擴(kuò)大,高并發(fā)高數(shù)據(jù)量成為網(wǎng)上考試系統(tǒng)性能提升的瓶頸。該文結(jié)合萊鋼網(wǎng)上考試系統(tǒng)的系統(tǒng)設(shè)計(jì)與應(yīng)用實(shí)踐,分析了系統(tǒng)在高并發(fā)應(yīng)用條件下的瓶頸,并給出了解決方案。

關(guān)鍵詞:network exam;high—concurrency;研究應(yīng)

0 引言

網(wǎng)上考試是延伸了傳統(tǒng)考試考場(chǎng)的涵義,它利用網(wǎng)絡(luò)的無(wú)限廣闊空間,把考場(chǎng)從學(xué)校延伸到了家中、計(jì)算機(jī)房、辦公室及其它任何網(wǎng)絡(luò)所覆蓋的區(qū)域,并可隨時(shí)對(duì)考生進(jìn)行考試,加上數(shù)據(jù)庫(kù)技術(shù)的利用,使考試變得更公平公正、更具權(quán)威性和可靠性。與傳統(tǒng)考試方式相比,計(jì)算機(jī)網(wǎng)絡(luò)考試可以突破地域限制、實(shí)現(xiàn)自動(dòng)控制、自動(dòng)閱卷評(píng)分等特性,大大節(jié)約人力、財(cái)務(wù)、物力。由丁B/S模式具有客戶端無(wú)需配置、開(kāi)發(fā)效率高、易于管理和維護(hù)等特點(diǎn),基于B/S模式的網(wǎng)絡(luò)考試系統(tǒng)正在逐漸成為主流應(yīng)用。但每個(gè)客戶端用戶的訪問(wèn),都會(huì)占用服務(wù)器一定的資源。因此,在硬件設(shè)備和軟件算法復(fù)雜度不變的情況下,每臺(tái)應(yīng)用服務(wù)器一般都存在一個(gè)最高用戶并發(fā)數(shù),一旦并發(fā)訪問(wèn)的用戶數(shù)量超過(guò)這個(gè)數(shù)量,就會(huì)引起系統(tǒng)性能急劇下降,甚至出現(xiàn)用戶訪問(wèn)無(wú)響應(yīng)等服務(wù)器拒絕服務(wù)的情況。

萊鋼網(wǎng)上考試系統(tǒng)主要用于業(yè)務(wù)技能競(jìng)賽.需要保持各參賽人員試卷內(nèi)容一致,試題隨機(jī)排序,下載、上傳必要的附列資料文檔,一般同時(shí)參加考試人數(shù)在六千人左右,甚至多達(dá)上萬(wàn)人,經(jīng)常出現(xiàn)并發(fā)訪問(wèn)和提交大量數(shù)據(jù),因此,如何優(yōu)化網(wǎng)上考試系統(tǒng)設(shè)計(jì)策略,提升服務(wù)器性能,使之能滿足高并發(fā)大數(shù)據(jù)量的應(yīng)用,是必須解決的問(wèn)題。

1 接入層負(fù)載均衡

根據(jù)網(wǎng)絡(luò)七層協(xié)議定義,在服務(wù)器端,可以在傳輸層或應(yīng)用層對(duì)系統(tǒng)的介入層進(jìn)行負(fù)載均衡考慮。考試系統(tǒng)為B/S架構(gòu),目前使用基于應(yīng)用層HTTP協(xié)議的負(fù)載均衡技術(shù)較為成熟,且應(yīng)用廣泛,使用既有的開(kāi)源技術(shù)即可達(dá)到接入層的網(wǎng)絡(luò)負(fù)載均衡的目的。雖然在越底層做負(fù)載均衡效率越高,資源利用率越小,但是基于傳輸層TCP協(xié)議的LVS(Linux Virtual Server)維護(hù)難度較大,因此在應(yīng)用層做負(fù)載均衡是最佳選擇,在本系統(tǒng)中LVS作為輔助方案。

NGINX是開(kāi)源的基于HTTP的反向代理,除了具有HTTP包轉(zhuǎn)發(fā)的功能外,還能通過(guò)配置實(shí)現(xiàn)HTTP協(xié)議的負(fù)載均衡。在服務(wù)器上部署多套考試系統(tǒng)Server端程序后,在NGINX的配置文件nginx. conf中,添加負(fù)載均衡配置項(xiàng),并根據(jù)各自服務(wù)器的性能及部署情況設(shè)置各自的權(quán)重,即可達(dá)到按需負(fù)載均衡的目的。

下面的配置表示,每6個(gè)對(duì)考試系統(tǒng)的HTTP請(qǐng)求中,3個(gè)請(qǐng)求會(huì)被轉(zhuǎn)發(fā)到10.10.10.110服務(wù)器,2個(gè)被轉(zhuǎn)發(fā)到10.10.10.111服務(wù)器,1個(gè)被轉(zhuǎn)發(fā)到10.10.10.112服務(wù)器。

upstream exameServer { server 10.10.10.110:8080 weight=3; server 10.10.10.111:8080 weight=2; server 10.10.10.112:8080; }

2 核心業(yè)務(wù)和非核心業(yè)務(wù)分離

考試系統(tǒng)的核心業(yè)務(wù)為考試功能,除此外還包含了非核心業(yè)務(wù)如試卷生成、評(píng)分、查分、統(tǒng)計(jì)、通告等。一般情況下,考試功能是考試系統(tǒng)的核心,保證考試功能不被其他非核心業(yè)務(wù)的影響至關(guān)重要。系統(tǒng)需要將考試功能獨(dú)立成為單獨(dú)的進(jìn)程,防止非核心業(yè)務(wù)功能因宕機(jī)、資源利用率過(guò)高等造成對(duì)考試的影響。

3 根據(jù)題型劃分服務(wù)端程序

一次考試試卷中,往往有多種題型,題型不同,用戶在WEB界面上停留的時(shí)間長(zhǎng)短不同,對(duì)后端產(chǎn)生的數(shù)據(jù)讀寫(xiě)請(qǐng)求數(shù)也不相同。以選擇題和問(wèn)答題為例,用戶在選擇題上停留的時(shí)間一般較短,短時(shí)間內(nèi)產(chǎn)生的數(shù)據(jù)讀寫(xiě)請(qǐng)求較多,單條數(shù)據(jù)的數(shù)據(jù)長(zhǎng)度較小;但用戶在問(wèn)答題上停留的時(shí)間一般會(huì)較長(zhǎng),產(chǎn)生的數(shù)據(jù)讀寫(xiě)請(qǐng)求較少,但是單條數(shù)據(jù)的數(shù)據(jù)長(zhǎng)度往往較大。

因此,可以根據(jù)題型的不同,將讀寫(xiě)頻繁的頁(yè)面和讀寫(xiě)較少的頁(yè)面獨(dú)立成不同的應(yīng)用,并合理分配兩者之間的比例,將有利于提高對(duì)服務(wù)器資源的利用。根據(jù)統(tǒng)計(jì)用戶在選擇題上的平均停留時(shí)間為1分鐘,在問(wèn)答題傷的平均時(shí)間為5分鐘,那么相對(duì)更多地部署選擇題對(duì)應(yīng)的服務(wù)器端應(yīng)用。在較大的并發(fā)讀寫(xiě)請(qǐng)求情況下,將其進(jìn)程部署個(gè)數(shù)分配為5:1將是比較合理的選擇。

4 數(shù)據(jù)庫(kù)讀寫(xiě)分離

考試系統(tǒng)的數(shù)據(jù)持久化層使用了數(shù)據(jù)庫(kù)作為存儲(chǔ)工具,多并發(fā)讀寫(xiě)數(shù)據(jù)庫(kù)的情況下,鎖操作頻繁將導(dǎo)致系統(tǒng)花費(fèi)大量時(shí)間在數(shù)據(jù)庫(kù)的讀寫(xiě)上。因此,對(duì)數(shù)據(jù)庫(kù)進(jìn)行讀寫(xiě)分離將顯得尤為重要。

考試系統(tǒng)讀寫(xiě)分離后,對(duì)數(shù)據(jù)的寫(xiě)操作如考試功能作用于主庫(kù),對(duì)數(shù)據(jù)的讀操作如查分功能作用于備庫(kù)。若單個(gè)備庫(kù)不能滿足查詢業(yè)務(wù)需求時(shí),可建立多個(gè)備庫(kù),并根據(jù)業(yè)務(wù)量合理分配備庫(kù)的使用程序。

4.1 數(shù)據(jù)庫(kù)分庫(kù)分表

考試系統(tǒng)的核心數(shù)據(jù)分為題庫(kù)和用戶考題數(shù)據(jù),題庫(kù)用于記錄考題元數(shù)據(jù),用戶考題數(shù)據(jù)用于記錄用戶的考試題目、用戶考試答案,以及考試時(shí)間等信息。題庫(kù)一般數(shù)據(jù)條數(shù)不多,使用單表即可滿足日常應(yīng)用。但是用戶考試記錄隨著年限的增長(zhǎng),當(dāng)達(dá)到百萬(wàn)級(jí)別的時(shí)候,讀寫(xiě)性能將明顯降低。根據(jù)需要,為每一個(gè)庫(kù)(也可以到表級(jí)別)設(shè)置一套數(shù)據(jù)文件(元數(shù)據(jù)文件、索引文件和數(shù)據(jù)文件),不同數(shù)據(jù)庫(kù)的文件又放置在不同的磁盤(pán)中,將大大提高磁盤(pán)的讀寫(xiě)效率。

4.2 為考試設(shè)計(jì)的分庫(kù)分表

考試過(guò)程中的數(shù)據(jù)讀寫(xiě)并發(fā)量,主要是用戶對(duì)自己的考試數(shù)據(jù)的讀寫(xiě)與更新,可以按照用戶維度,進(jìn)行分庫(kù)分表。在實(shí)際運(yùn)行中發(fā)現(xiàn),單庫(kù)單表只能支撐p人的同時(shí)考試,那么為了滿足t人同時(shí)考試,可以建立m個(gè)庫(kù)n張表,其中t <= m*n*p。在用戶考試時(shí),根據(jù)用戶的登錄名稱或內(nèi)部號(hào)碼等Hash到這m*n個(gè)庫(kù)表中,從而讓這些庫(kù)表共同分擔(dān)了t個(gè)人考試的讀寫(xiě)請(qǐng)求。

作者簡(jiǎn)介:徐曉鶴(1983-),男,山東濟(jì)南人,本科,工程師,研究方向:工業(yè)自動(dòng)化控制軟件工程。

主站蜘蛛池模板: 亚洲色婷婷一区二区| 欧美激情综合一区二区| 性色在线视频精品| 色精品视频| 国产成人精品高清在线| 亚洲国产成人麻豆精品| 国产成人精品高清在线| 精品91在线| 久久久久国产精品熟女影院| 一本久道热中字伊人| 久久人人爽人人爽人人片aV东京热 | 亚洲第一网站男人都懂| 亚洲精品自在线拍| av一区二区三区高清久久| 婷婷伊人久久| 97视频精品全国免费观看| 国产白浆一区二区三区视频在线| 欧美在线天堂| 波多野结衣中文字幕久久| 影音先锋亚洲无码| 91啦中文字幕| 天天综合网亚洲网站| 美女无遮挡免费视频网站| 正在播放久久| 婷婷99视频精品全部在线观看 | 国产精品视频观看裸模| 国产精彩视频在线观看| 黄色网址免费在线| 亚洲精品人成网线在线 | 日本免费新一区视频| 欧美国产日韩在线| 成年免费在线观看| 原味小视频在线www国产| av天堂最新版在线| 天堂成人av| 波多野结衣视频一区二区| AV天堂资源福利在线观看| 亚洲综合日韩精品| 国产亚洲精品无码专| 亚洲天堂福利视频| 亚洲欧洲日本在线| 国产成年女人特黄特色毛片免| 亚洲成人精品在线| 婷婷六月综合网| 18禁黄无遮挡网站| 午夜精品一区二区蜜桃| 97色伦色在线综合视频| 国产成人欧美| 久久精品人人做人人| 欧美一区二区人人喊爽| 日本一区高清| 久久综合AV免费观看| 亚洲a免费| 婷婷99视频精品全部在线观看 | 日韩午夜伦| 久久99国产乱子伦精品免| 九色综合伊人久久富二代| 亚洲αv毛片| 中文字幕永久在线观看| 亚洲小视频网站| 91在线播放免费不卡无毒| 国产成a人片在线播放| 欧美一道本| 国产真实二区一区在线亚洲| 日韩精品中文字幕一区三区| 99久久免费精品特色大片| 国产欧美日韩综合在线第一| 亚洲一区二区三区国产精品 | 91精品国产情侣高潮露脸| 97一区二区在线播放| 一区二区三区国产精品视频| 亚洲精品黄| 在线观看亚洲人成网站| 无码人中文字幕| 日本欧美一二三区色视频| 99久久精品国产精品亚洲| 国产av无码日韩av无码网站| 久久综合九九亚洲一区| 国产传媒一区二区三区四区五区| 2021最新国产精品网站| 男人天堂亚洲天堂| 午夜国产在线观看|