摘 要:隨著互聯網的發展,師生們常從網絡獲取教學相關信息。一種方式是直接訪問外部網絡獲得信息,另一種方式是將信息存儲到學校服務器上。訪問外部網絡會產生通信費,而購買服務器也會產生費用。本文綜合考慮兩種方式,兼顧成本和師生的需求,得到一個優化的配置方案。
關鍵詞:內網;信息;優化
中圖分類號:TP393.18 文獻標識碼:A DOI:10.3969/j.issn.1003-6970.2021.02.037
本文著錄格式:林馨.學校內網信息優化配置[J].軟件,2021,42(02):121-122
Information Optimization Scheme for School Intranet
LIN Xin
(Fujian Normal University, Fujian? Fuzhou? 350017)
【Abstract】:With the development of internet, teachers and students often search teaching and studying information online. One method is to visit outer network to receive information, another is to store frequently searched information on local servers in school. Visiting outer network generates telecommunication fee, while buying servers needs money too. In this article, we will balance between these two methods, considering both costs and requirements of teachers and students to get an optimization scheme.
【Key words】:intranet;information;optimization
0引言
隨著互聯網的普及,網絡上信息的多樣化,老師及學生們越來越多地通過網絡獲取教學信息等數據,從而豐富教學內容,提高教學質量。與此同時,這會產生一定的網絡通信費。學??赏ㄟ^把一些常用數據塊下載存儲到服務器,從而節省訪問外部網絡產生的通信費。但購買服務器也需要相當的費用,因此需要權衡二者利弊,給出經濟又實用的方案。
1問題
假定已知每個服務器的容量和價格,師生們需要獲取的數據塊(如課程信息,課件,試題集,講課視頻等),以及從外網獲得這些數據塊所需的通信費,本文將通過算法確定需要購買的服務器數量,選擇一些數據塊并合理地存儲在服務器上。
2求解
假設每個服務器的容量是V,價格為P,單位容量的價格P0=P/V??偣灿衝個數據塊,且每個數據塊不可分割。第j個數據塊Bj的數據量為Dj,從外網獲得時產生的通信費為Cj,單位數據量所產生的通信費為Aj=Cj/Dj。
求解思路:若單位數據量所產生的通信費大于服務器單位容量的價格即Aj>P0時,則將數據塊Bj存儲到服務器,且需要購買的服務器總數能存儲此類數據塊;若服務器還有剩余空間,則將單位數據量所產生的通信費與服務器單位容量的價格足夠接近即滿足0.95P0<
Aj<=P0的數據塊存入剩余空間;其余數據塊,則通過網絡訪問,產生通信費。
設W為單位數據量所產生的通信費大于服務器單位容量的價格的數據塊的集合,V為單位數據量所產生的通信費小于等于服務器單位容量的價格且大于單位數據量所產生的通信費與服務器單位容量的價格的95%的數據塊的集合。
算法1.將數據塊歸類.
BEGIN
Step1.? j=1, k=0, h=0,W=V=Φ.
Step2. 若Aj>P0,則W=W+{Bj},k=k+1,轉step4;否則,轉step3.
Step3. 若0.95P0 Step4. 若j=n, 則停止;否則,轉step5. Step5. j=j+1,轉step2. END 完成數據塊分類之后,由于W中的數據塊滿足單位數據量所產生的通信費大于服務器單位容量的價格,這些數據存儲在服務器中比從外網獲得更經濟,因此我們優先將W中所有的數據塊都存儲到服務器。 由于不同的教學信息的需求量和訪問頻次不同,我們需要給集合中每個數據塊一個代表其重要性的權重,并按降序排列。之后按重要性優先的原則將數據塊存儲到服務器。 算法2. 將集合W中的數據塊存儲到服務器. BEGIN Step1.將W中數據塊按重要性給出權重再由大到小排序[1-2],得E1,E2,...Ek,i=j=1,Ri=V. Step2. 若Ej Step3.? j=j+1,轉step2. Step4.? 若j=k,則轉step6;否則,轉step3. Step5.? i=i+1,轉step2. Step6.? m=i,停止. END 由算法2知,總共需要m個服務器,存儲了W中共k個數據塊之后第i個服務器的剩余容量為Ri。 雖然集合V中的數據塊的單位數據量所產生的通信費小于服務器單位容量的價格,但由于存儲完集合W中的數據塊,服務器仍有剩余空間,我們將集合V中的數據塊存入可充分利用服務器空間。由于不同的教學信息的需求量和訪問頻次不同,我們需要給V中每個數據塊一個代表其重要性的權重,并按降序排列。之后按重要性優先的原則將數據塊存儲到服務器。 算法3.將V中的數據塊存儲到服務器剩余空間. BEGIN Step1. 將V中數據塊按重要性給出權重再由大到小排序[1-2],得T1,T2,...,Th,i=j=1. Step2. 若Tj Step3.? j=j+1,轉step2. Step4.? 若j=h,則轉step7;否則,轉step3. Step5.? i=i+1,轉step2. Step6.? 若i=m, 則轉step7;否則,轉step5. Step7.? d=j,停止. 由算法3知,服務器總共存儲了集合V中d個數據塊,且服務器剩余容量無法再存儲V中剩余數據塊。至此,服務器存儲了集合W中所有數據塊以及集合V中部分數據塊,其余需要訪問的教學信息數據都經由訪問外網獲得,產生通信費用。 END 3結語 本文通過算法,將教學信息分類,確定哪些數據塊要存儲到服務器,如何將數據塊分配給服務器以及哪些數據塊可以填補到服務器剩余空間。由此,學??梢栽谳^低的成本(包括訪問外部網絡產生的通信費和購買服務器所需費用)下,為師生們提供教學信息。在本文設定地基礎上,可進一步探討數據塊可分割存儲的方法以及獲取不同數據塊單位數據的通信費不同時的優化方法。本文的算法和優化思路也可作為其他組織或企業內網信息配置的參考。 參考文獻 [1] 王曉東.數據結構與算法設計[M].北京:電子工業出版社,2002. [2] 唐策善,李龍澍,黃劉生.數據結構——用C語言描述[M].北京:高等教育出版社,2002.