按我的想法,從物理檢視來看,b/s結構分為客戶端browse,web伺服器,資料庫三個層次。由於b/s系統的物理檢視通常都是這樣,所以分層一般指的是ui層、業務規則層、資料訪問層、資料儲存層,而現在像.***與j2ee這樣的架構中對每一層都提供了大量的框架與類庫,像.***中的asp.***,ado.***就分別了ui層與資料訪問層提供了框架,而j2ee中,struts/spring等為ui層提供了框架,jdo/ejb為資料訪問層提供了框架。
1. 像asp這樣,或是在asp.***或是jsp直接通過ado.***或是jdbc在ui層訪問資料庫的,也是感覺最混亂的一種方式,就是簡單的二層結構,現在到底有多少人現在有這個結構,你們覺得有什麼好處與問題,你的系統的規模大嗎?
2.如果你使用ui層、業務規則層、資料訪問層這樣的多層構架,你在資料訪問層使用專業的資料對映構架(如jdo,entitybean,hibernate)嗎,你覺得帶來的效果好嗎?如果沒有使用這些構架,你們公司有沒有專門的api或是架構來解決這個問題?
3.你在ui層、業務規則層、資料訪問層是使用什麼來傳資料的,dataset還是resultset,或是根據資料庫結構自動生成的資料物件?
4.事務處理是資料庫、業務規則層、或是直接在ui層來完成?
5.你覺得這樣的參考構架有實際意義嗎?你們公司有沒有按這個參考構架來做專案?如果對參考構架進行了修改、裁減、完善、細劃,請談談是怎麼做的,帶來了什麼好處?
6.按乙個架構來實現的系統能不能很好的支援分布式布置與負栽均衡?
7.你使用了資料快取了嗎?資料快取一般放在哪一層?資料快取一般快取什麼樣的資料,更新策略是什麼?它帶來了效能上顯著的提公升嗎?
8.關於像報表、工作流這樣的中介軟體,你使用的是第三方提供的還是自己寫的,你是如何把根據這樣的中介軟體提供的構架來擴充套件你的系統,還是把中介軟體融合到你的系統中?
9.你的系統在開發過程中注重復用嗎?像ui層控制項、特殊的業務處理的api這樣的比較容易實現復用,但是像組織機構、許可權管理,審批工作流這樣關係到多層的功能上的復用,你保留的只是設計思想,還是把**設計得比較通用呢?
10.你的專案注重軟體工程嗎?都使用了什麼開發過程,使用了什麼case工具,專案管理、配置與變數管理工具,bug追蹤工具?這樣的工具與過程帶來了顯著的效果嗎,還是把你的團隊帶入了文件與工具使用的泥潭?
11.你的專案是按功能還是接層來進行模組劃分?有沒有針對模組進行專門的單元測試?如果進行單元測試,你們使用什麼樣的單元測試架構(如xunit),如果單元測試時本模組要呼叫的模組還沒有完成,你一般是怎麼做?
12.你的專案在客戶端使用了activex控制項了嗎?一般用來實現什麼功能?
架構的選擇沒有定式,應該結合實現情況來進行選擇。但是具體該怎麼選擇,事實上大家都在摸索,所以我希望大家能夠把你的經驗分享出來。
自主設計開發BS結構系統的監控實現
在提及網路監控,網路流量,網路上機器的狀況和web伺服器狀況監控,如伺服器cpu占有率,發熱情況,記憶體使用情況 我相信大家都有自己很好的方案,比如通過socket shell jni,jsnmp,jms,前台用flex或ajax等實現重新整理資料展示.這是大家日後都會面臨的乙個問題,我提點我的想法...
多層迴圈巢狀結構的設計
在很多程式設計的書籍中會給出這樣的建議 在多重迴圈中,如果有可能,應當將最長的迴圈放在最內層,最短的迴圈放在最外層,以減少cpu 跨切迴圈層的次數。這個 跨迴圈層 的概念本身是說,由外層迴圈進入內層迴圈是要重新初始化迴圈計數器的,包括儲存外層迴圈的計數器和載入內層迴圈計數器,退出內層的時候再恢復外層...
B S系統操作日誌設計思路
最近做的系統需要實現操作日誌的功能,主要記錄使用者的 增,刪,改的操作。自己想的方法笨點兒但能滿足需求,待日後有更好的解決方法了再來優化了,不多說先上效果圖。一,效果圖 1,日誌列表 2,日誌詳細 二,設計思路 1,頁面載入完成後,利用js 記錄需要記錄的值到 對應的隱藏域中。2,頁面提交時利用js...