n-tier架構...
如果是寫在ASP.NET中, 是在Application Server運算, 也就是在IIS上, 但也有人把job寫成在Client端運算(就是寫在Javascript中), 這樣就是Browser端執行
如果寫成SQL Server CRL, ASP.NET呼叫CRL執行, 是在SQL Server上運算...
ERP每人寫法都不同.
光是邏輯就可以寫在很多地方.
如
資料邏輯層SP.
企業邏輯層BL.
UI邏輯層UL.
做大量的資料運算當然寫在SP裡.
寫企業物件實體,企業複雜流程,呼叫上游廠商,下游客戶的Web Service..寫在Web Service主機裡.
做資料輸出入驗證,動畫,I/O機台控制..寫在UI邏輯層.
反正看需求去做.看需求去擴充.
以前我去面試,面試官就問我什麼寫在什麼地方,那個面試官態度非常囂張,我就故意全部答案寫跟他完全相反.
小弟只懂一些粗淺的操作,現在遇到的問題是,該erp是用ie當client,再開啟各項功能時會頓噸的,要等一下才會出現,但執行過後再回去就比較快些;再key單時打資料也是要一下子才會撈回資料,做查詢列印時就更慢了,尤其是有人要查詢時等同當機,才會想說是不是要加強一下主機效能並把ap與sql分開看會不會改善,只是想知道查詢運算時是哪個服務iis或sql在做處理。
是硬體的問題嗎 ?
機器規格 ?
記憶體太少 ?
硬碟太舊? 太小?
要不然 應該放在一台就很夠了~
還是你的連線數超多 ?
若真的要分開 考慮效能的話~
建議 IIS 裝兩片網路卡 一片接 Internet 一片接 SQL Server
Windows 工作管理員->處理程序.
就可以看到IIS和SQL相關處理程序所佔的資源,如CPU,記憶體..
缺什麼補什麼...
IIS只是做一些網路的Request,Resopnse和一些路由的動作,看他要路由到哪個Web Service去做.
反正很複雜,不是你說的三言二語就知道哪個負載大.有時要去看AP,SQL指令,資料庫規劃,資料量大小..綜合評估才能做決定.
自己有寫過一套完整的ERP系統,現在也在維護別人家的產品,一些實戰經驗分享:
輸入用的表單資料,不要在畫面上Show任何的計算結果,特別是加總的結果...
例如:請款金額打完之後,就要立刻在畫面上顯示截止本期為止加總金額,
這時如果你用VIEW/SP/SQL來達成要求,作業的LOADING就在SQL,
你用程式碼走迴圈來達成要求,作業的LOADING就在AP。
但是,我現在使用中的ERP系統顧問,遇到這種需求都是直接回客戶,
我另外做一個查詢畫面,這個查詢畫面目前無條件開啟時間已經來到一分鐘了。
所以,正確作法是要挖欄位來存放這些計算結果,於每次關聯表單異動時,
自動計算單一項目回寫計算結果。 但是怎樣可以做到模組化、規模化回寫,
就不是這家系統業者強項了,計算結果回填的計算邏輯散得到處都是。