c/s (client/server,客戶機/伺服器)模式又稱c/s結構,是軟體系統體系結構的一種。c/s模式簡單地講就是基於企業內部網路的應用系統。客戶端負責執行前台功能,實現各自的使用者介面和業務邏輯處理;而伺服器端執行資料庫管理系統(dbms)。這種應用系統基本執行關係體現為「請求/響應」模式,客戶通過結構化查詢語言(sql)提出資料訪問請求,伺服器接受請求並響應,並把執行結果返回給客戶,在這裡事務規則功能可以由客戶應用程式來完成,也可以由資料庫伺服器通過儲存過程、觸發器約束、規則等方式實現。在這種結構中,資料庫系統一般採用大型資料庫系統,如sql server、sybase、0racle等。
圖1 兩層c/s模式圖
(1)資訊存貯與管理比較集中規範。目前,網際網路上可以公開訪問的資訊基本上都儲存在伺服器上,資訊的儲存管理功能較為透明,使用者提出訪問請求後,無須再過問其它,伺服器則根據一定的規則應答訪問請求。
(2)安全性較好。從安全的角度來說,各種系統都存在或多或少的安全漏洞,由於c/s模式採用集中管理,客戶端被動地從伺服器接受指令,因此,一台客戶機出現安全問題,不會影響整個系統。
(1) c/s 模式投資大且維護成本高昂。採用c/s架構,網路管理工作人員既要對伺服器維護管理,又要對客戶端維護和管理,這需要高昂的投資和複雜的技術支援,維護成本很高,維護任務量大。而且,傳統的c/s結構的軟體需要針對不同的作業系統開發不同版本的軟體,由於產品的更新換代十分快,代價高和低效率已經不適應工作需要。
(2) c/s 模式下,伺服器及頻寬決定了網路的效能。每台伺服器的自身儲存空間決定了所能提供的資訊量,而且客戶端訪問數量過多,超過了伺服器所能容納的量,伺服器會負荷過大而造成系統的癱瘓。
(3) c/s 模式下,伺服器容錯性不高,一旦伺服器出現問題,整個系統將會癱瘓。
圖2 系統功能模組圖
使用者帳號(log_file)資料庫儲存使用者帳號和密碼,其資料結構見表1。
表1 使用者帳號資料庫資料結構
欄位名字段型別
備註user_name
nchar
儲存使用者名稱
code
nchar
儲存使用者密碼
檔案共享(share_file)資料庫儲存客戶端上傳的檔案,其資料結構見表2。
表2 檔案共享資料庫資料結構
欄位名字段型別
備註number
int儲存檔案編號
file_name
char
儲存檔名稱
file_blob
image
儲存檔案內容
file_class
char
儲存檔案所屬類別
file_type
char
儲存檔案格式
transmit_author
char
儲存上傳人姓名
udown_time
datetime
儲存上傳時間
memo
ntext
儲存備註資訊
檔案類別(type_file)資料庫儲存客戶端上傳檔案的類別,其資料結構見表3。
表3 檔案類別資料庫資料結構
欄位名字段型別
備註number
int儲存檔案編號
file_name
char
儲存檔名稱
file_blob
image
儲存檔案內容
file_class
char
儲存檔案所屬類別
file_type
char
儲存檔案格式
transmit_author
char
儲存上傳人姓名
udown_time
datetime
儲存上傳時間
memo
ntext
儲存備註資訊
伺服器端使用sql server資料庫儲存資料。客戶端軟體系統採用delphi作為開發工具,它是美國borland公司推出的物件導向的視覺化程式設計工具,擁有功能強大的繼承開發環境(ide)和世界上速度極快的編譯器,因此將delphi7作為本系統開發工具。
日常工作中使用的文件資料格式型別有很多種,主要包括word文件(*.doc)、pdf文件(*.ftp)、網頁格式文件(*.htm/*.html)、幻燈片文件(*.ppt)以及各種文件等。這些文件格式有如下特點:①這些型別文件有的是以單個檔案形式存在,有的以多個檔案形式存在,比如網頁格式文件,除了乙個主要檔案還包括乙個存放的資料夾;②對應於這些型別的文件,通常的客戶端都具有相應的應用程式。
客戶端要實現將不同型別檔案(包括doc、html、htm、pdf、txt格式檔案以及各種型別檔案)上傳到伺服器資料庫。
其中,word文件(*.doc)、pdf文件(*.pdf)幻燈片文件(*.ppt)以及各種文件等是以單個檔案形式存在;而網頁格式文件(*.htm/*.html)以多個檔案形式存在,除了乙個主要檔案還包括乙個存放的資料夾對應於這些型別的文件,上傳該型別文件時需將這種型別轉換為word文件(*.doc)以保證不丟失資訊。
將使用者對文件查詢的需求動作細化,形成可組合的查詢條件,增強查詢的靈活性。包括模糊查詢功能、查詢所有檔案功能以及高階查詢功能,其中高階查詢功能又包括根據檔案型別、種類查詢功能。
圖3 檔案上傳流程圖
圖4 系統操作主介面
圖5 高階查詢介面
圖6 預覽介面
CS架構客戶端軟體公升級方案
目的 概念 u 整包公升級 軟體功能進行了大範圍的變更,主版本號發生變化,客戶端需要重新安裝。u 補丁包公升級 軟體修復部分bug,功能進行了小範圍調整或變更。u 檔案公升級 軟體的個別檔案進行了細微的調整或bug修復,為最小粒度軟體公升級。框架 客戶端主要由公升級管理主程式和提供公升級功能的底層支...
基於UDP的服務端 客戶端
udp套接字的特點 udp提供的是不可靠的傳輸服務。如果只考慮可靠性tcp要優於udp,但是udp的結構要比tcp更簡潔。udp不會傳送ack的應答資訊,也不會像seq那樣給資料分配序號。因此,udp效能有時比tcp高出很多。程式設計實現簡單。可靠性雖然不及tcp,但也不會像想象中那麼頻繁的資料損毀...
基於XML檔案的客戶端校驗
所謂客戶端校驗,就是在提交請求之前對使用者輸入資訊進行校驗。在struts2應用中使用客戶端校驗需要 1 將輸入頁面的表單元素全都改為struts2標籤來生成表單 2 為 action login validate true name username label username name pas...