程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> .NET實例教程 >> 包含實時功能的ASP.NET系統結構

包含實時功能的ASP.NET系統結構

編輯:.NET實例教程

結構和背景:

目前有一個系統,它的結構和一般的B/S比,有一個不同的地方,就是最底下有一層(說是一層,其實是一個單獨的程序),這一層是winform程序,暫且用“交換”來表示它。主要用來和“外部”通訊,收發和處理一些信息。具體不贅述。

那麼系統現在的結構是:

客戶端--web服務器(展現層--邏輯層--數據訪問層)--數據庫--交換--外部

在某些時候需要進行一些“實時”的通信(當然說是實時,其實不可能做到象CS那樣,只是在“客戶端”做定時器),將“外部”發送的數據及時的顯示給“客戶端”或者“客戶端”發送的數據及時發送給“外部”。我們稱之為“實時通信”。而大部分時候“外部”的數據是要直接由“交換”存進數據庫留以後用的,我們稱之為“常規通信”。

 

目前有兩個選擇:

一不管是“實時通信”還是“常規通信”,“交換”從外部接收的數據全部給數據庫,客戶端定時去找web服務器,web服務器去數據庫取數據,然後返回。客戶端的數據也都直接發到數據庫裡,然後“交換”去讀數據,並轉發給“外部”。具體就是上面的一條線的圖。

這種對數據庫要求較高,因為所有的數據都經過數據庫,涉及到大量的數據交換和表的操作,不知道SQL2005能不能抗的住。

二對於“實時通信”,將“交換”這一層作為remoting的server,web服務器作為remoting的clIEnt。即實現web服務器直接和“交換”程序進行通訊,這個時候數據都是保存在“交換”程序的那台計算機的內存裡,客戶端定時還是定時去找web服務器。而“常規通信”還是按照第一種方法處理。具體結構就是在上面一條線的基礎上加上一個Web服務器直接和“交換”通訊的分支,在需要的時候(即“實時通信”的時候)數據都走這個分支。

這種做法會不會有什麼問題?我對remoting不熟,對這樣的結構性能能到一個什麼程度一點譜也沒有。

 

區別:

這兩種方法裡,“常規通信”這部分的結構沒什麼問題。關鍵是“實時通信”部分,簡單來說就是數據是從數據庫走還是web服務器直接和“交換”通信。

 

現在需要考慮采用何種結構,要求是:

一某一台服務器不能壓力太大,否則系統承受不起。(“外部”的並發量非常大)

二對“實時通信”部分的性能要求非常高。

 

注意:

一 BS結構已經定下來了,不能改。(公司以前的項目就是C/S的,現在想過渡到B/S來)

二 硬件沒有任何問題,每塊都是單獨的高配置服務器。

三 可能大家對“交換”這部分的認識並不很清楚,其實它要負責的功能也比較多,壓力也會非常大。當然它也是單獨的服務器。

四 一些配置基本上如下:Windows2003,MS-SQL2005,VS2005等,都是企業版。

 

問題:

一 上面的方法一和二哪中結構性能會好點?(主要考慮“實時”部分的性能,別的暫時不談)

二 還有沒有別的可行的結構?或者技術?

三 有些東西可能我說的不清楚,請留言我會盡快回復。

四 有沒有做GPS定位的朋友?請留下聯系方式,請教問題。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved