下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
精品文檔-下載后可編輯PB的C/S模式數(shù)據(jù)通信軟件的開發(fā)1客戶端服務(wù)器端網(wǎng)絡(luò)通信實(shí)現(xiàn)
目標(biāo)主機(jī)上程序代碼如下://定義全局變量winsockgs_wssocketdgramgs_udpintgi_port//定義目標(biāo)主機(jī)端口號(hào)//在open事件中創(chuàng)建winsock和數(shù)據(jù)報(bào)式套接口對(duì)象gs_ws=createwinsockgs_udp=createsocketdgram//通知套接字端口有請(qǐng)求事件發(fā)生gs_udp.wsaasyncselect(handle(parent),1025,gs_ws.fd_read+gs_ws.fd_write)//欲接收讀、寫準(zhǔn)備好通知//綁定端口gs_udp.bind(0,gi_port)//綁定目標(biāo)主機(jī)端口號(hào)在調(diào)用wsaasyncselect后,窗口需處理消息,此處需為窗口定義一個(gè)新的自定義事件,事件的ID為pbm_custom02。該事件有兩個(gè)變量,wparam與lparam,變量類型分別為un-signedlong與long。//接收源主機(jī)發(fā)來的消息并發(fā)送消息至源主機(jī),uPeerClient,i//ClientPort分別為源主機(jī)的IP地址與端口號(hào)gs_udp.recvfrom(ls_data,1024,0,uPeerClient,iClientPort)//接//收消息,消息存于ls_data變量中接收到消息后,程序可進(jìn)行//其他操作處理,向源主機(jī)發(fā)送消息gs_udp.sendto(ls_data_return,len(string(ls_data_return)),0,u-PeerClient,iClientPort)//使用完成后,在close事件中關(guān)閉socket,釋放資源gs_udp.closesocket()destroygs_udpdestroygs_ws源主機(jī)上程序代碼如下://定義全局變量winsockgs_wssocketdgramgs_udpintgs_ip,gi_port//定義目標(biāo)主機(jī)的IP號(hào)與端口號(hào)//在open事件中創(chuàng)建winsock和數(shù)據(jù)報(bào)式套接口對(duì)象gs_ws=createwinsockgs_udp=createsocketdgram//通知套接字端口有請(qǐng)求事件發(fā)生gs_udp.wsaasyncselect(handle(parent),1025,gs_ws.fd_read+gs_ws.fd_write)//欲接收讀、寫準(zhǔn)備好通知//在發(fā)送按鈕下寫發(fā)送程序代碼gs_udp.sendto(ls_data,len(string(ls_data)),0,gs_ws.Inet_addr(gs_ip),gi_port)//ls_data為發(fā)送的消息,其中Inet_addr將//IPv4格式轉(zhuǎn)換為無符號(hào)的長(zhǎng)整型函數(shù),實(shí)現(xiàn)IP地址的轉(zhuǎn)換在調(diào)用wsaasyncselect后,窗口需處理消息,此處需為窗口定義一個(gè)新的自定義事件,事件的ID為pbm_custom02。在該事件中,有接收目標(biāo)主機(jī)消息程序代碼。gs_udp.recvfrom(ls_data_return,1024,0,uPeerClient,iClient-Port)//接收目標(biāo)主機(jī)發(fā)送的消息//使用完成后,在close事件中關(guān)閉socket,釋放資源gs_udp.closesocket()destroygs_udpdestroygs_ws
2主備服務(wù)器的數(shù)據(jù)庫(kù)同步備份
在軟件設(shè)計(jì)時(shí),需要在任意時(shí)刻對(duì)數(shù)據(jù)庫(kù)進(jìn)行備份和還原,其備份文件保存在管理員機(jī)端的相應(yīng)文件夾下。由于這種備份功能是由管理員的意愿進(jìn)行備份,故每次備份時(shí)都將覆蓋上一次的備份文件,以保留管理員所希望的最新的備份文件。但是人工備份方式也有一些缺陷,它具有不可連續(xù)性操作,備份時(shí)間點(diǎn)不確定等缺點(diǎn),而且當(dāng)主服務(wù)器上的數(shù)據(jù)庫(kù)遭到損壞、系統(tǒng)故障或服務(wù)器硬件故障等原因主服務(wù)器無法啟動(dòng)時(shí),也顯得束手無策,為此設(shè)計(jì)了一種基于PB的主備服務(wù)器的同時(shí)定時(shí)備份軟件。功能示意圖如圖2所示。該軟件工作時(shí),將主服務(wù)器中的數(shù)據(jù)庫(kù)階段性的以備份文件(*.dat)的形式保存起來,當(dāng)出現(xiàn)數(shù)據(jù)無法使用或數(shù)據(jù)保存錯(cuò)誤的情況時(shí),可通過告知管理員,在主服務(wù)器上手動(dòng)進(jìn)行還原,將數(shù)據(jù)還原到自己所需要的時(shí)間點(diǎn);或是通過服務(wù)器上的管理員端軟件對(duì)數(shù)據(jù)庫(kù)進(jìn)行還原。當(dāng)主服務(wù)器關(guān)機(jī)時(shí),管理員通過手動(dòng)開啟備用服務(wù)器,仍可向用戶提供最后一次還原的時(shí)間點(diǎn)的數(shù)據(jù)。
2.1定時(shí)開機(jī)與關(guān)機(jī)功能(1)保證硬件連接:用網(wǎng)線將筆記本網(wǎng)口與備用服務(wù)器的管理口(SystemMGMT)相連。(2)設(shè)定筆記本與備用服務(wù)器的IP地址和子網(wǎng)掩碼,保證兩個(gè)地址在同一個(gè)網(wǎng)段。(3)在筆記本上打開IE瀏覽器(或其他瀏覽器),在網(wǎng)址中輸入:192.168.70.125(默認(rèn)IMM的IP地址)(4)在彈出的頁(yè)面中,分別輸入用戶名:USERID,密碼:PASSW0RD(此處0為數(shù)字零)。(5)登錄后,點(diǎn)擊continue,選擇tasks下的Power/Restart,再選擇ScheduleDaily/WeeklyPowerandRestartActions,在這里設(shè)定時(shí)間并Save(此處選擇每天定時(shí)開機(jī)、關(guān)機(jī))。注意:必須保證IMM時(shí)間與服務(wù)器時(shí)間相同,可在IMMControl下的SystemSettings中設(shè)置。
2.2主服務(wù)器軟件主服務(wù)器上開機(jī)時(shí)自動(dòng)運(yùn)行一個(gè)小程序,完成定時(shí)備份的功能。程序啟動(dòng)后,一直監(jiān)測(cè)備用服務(wù)器的共享文件夾定時(shí)備份是否存在。若不存在,則將timebackup.ini文件中的backup置0;若存在則判斷timebackup.ini文件中的backup是否為0,若為0則為是第一次檢測(cè)到,隨后將backup置1,并備份主服務(wù)器中的test數(shù)據(jù)庫(kù),將此文件拷貝至主服務(wù)器定時(shí)備份文件存放地址下(創(chuàng)建以備份時(shí)間命名的文件夾),以完成主服務(wù)器的定時(shí)備份;同時(shí)將此文件拷貝至備用服務(wù)器的共享文件夾下,并通過SQL語句將該備份還原至備用服務(wù)器,以完成備用服務(wù)器與主服務(wù)器的數(shù)據(jù)庫(kù)數(shù)據(jù)同步。
2.3備用服務(wù)器軟件同理,在備用服務(wù)器上也同時(shí)運(yùn)行一個(gè)小程序,其功能是檢測(cè)備用服務(wù)器自身的共享文件夾中是否存在數(shù)據(jù)庫(kù)備份文件(.dat),此備份文件為主服務(wù)器數(shù)據(jù)庫(kù)最近一個(gè)時(shí)間點(diǎn)的備份文件。若存在則將該備份文件拷貝至備用服務(wù)器文件夾下(創(chuàng)建以備份時(shí)間命名的文件夾)。這樣,只要管理員打開備用服務(wù)器,鍵入密碼進(jìn)入桌面,即可將主服務(wù)器數(shù)據(jù)庫(kù)最新的備份文件拷貝一份至備用服務(wù)器存儲(chǔ)起來,對(duì)數(shù)據(jù)庫(kù)的數(shù)據(jù)又加了一層保護(hù)。由于服務(wù)器程序是以備用服務(wù)器的共享文件夾是否存在為基礎(chǔ)的,與時(shí)間無關(guān),因此這兩套程序不受定時(shí)開機(jī)、關(guān)機(jī)的時(shí)間的約束,即可以隨意更改定時(shí)開機(jī)、關(guān)機(jī)的時(shí)間,以滿足工作的需要。又因與時(shí)間無關(guān),當(dāng)管理員在任意時(shí)間點(diǎn)打開備用服務(wù)器時(shí),這兩套程序仍然正常運(yùn)行,即也會(huì)設(shè)立一個(gè)新的時(shí)間點(diǎn)進(jìn)行備份(此操作不影響當(dāng)天的定時(shí)備份環(huán)節(jié)),這樣也間接地完成了不定時(shí)備份功能。
3結(jié)語
在
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 安保服務(wù)接收協(xié)議書(2篇)
- 提升家長(zhǎng)與教師溝通效果的實(shí)踐方法
- 工程人工承包合同協(xié)議書
- 心理健康在商業(yè)領(lǐng)導(dǎo)力培養(yǎng)中的重要性
- 數(shù)學(xué)思維培養(yǎng)與高效學(xué)習(xí)策略
- 廣告代理發(fā)布框架協(xié)議
- 數(shù)據(jù)分析定制合同樣本
- 員工餐廳承包合同
- 小學(xué)數(shù)學(xué)教育中的科技應(yīng)用與探索
- 相機(jī)租賃合同模板
- 分期還款協(xié)議書
- 小區(qū)住戶手冊(cè)范本
- ??低?視頻監(jiān)控原理培訓(xùn)教材課件
- 《鄭伯克段于鄢》-完整版課件
- 土壤肥料全套課件
- 畢業(yè)生延期畢業(yè)申請(qǐng)表
- 學(xué)校6S管理制度
- 肽的健康作用及應(yīng)用課件
- T.C--M-ONE效果器使用手冊(cè)
- 8小時(shí)等效A聲級(jí)計(jì)算工具
- 人教版七年級(jí)下冊(cè)數(shù)學(xué)計(jì)算題300道
評(píng)論
0/150
提交評(píng)論