提高WebService效能大資料量網路傳輸處理

2021-06-07 19:14:11 字數 4082 閱讀 7375

(1)直接返回dataset物件

< xmlnamespace prefix ="p" />

特點:通常元件化的處理機制,不加任何修飾及處理;

優點:**精減、易於處理,小資料量處理較快;

缺點:大資料量的傳遞處理慢,消耗網路資源;

建議:當應用系統在內網、專網(區域網)的應用時,或外網(廣域網)且資料量在kb級時的應用時,採用此種模式。

示例如下:

**

1

[webmethod(description ="

直接返回 dataset 物件。")]

2public

dataset getnorthwinddataset()

313

客戶程式呼叫方法:

**

private

void

button1_click(

objectsender, eventargs e)

", datetime.now

-dtbegin);

binddata(dataset);

}

(2) 返回dataset物件用binary序列化後的位元組陣列

特點

:位元組陣列流的處理模式;

優點

:易於處理,可以中文內容起到加密作用;

缺點

:大資料量的傳遞處理慢,較消耗網路資源;

**

[webmethod(description ="

返回 dataset 物件用 binary 序列化後的位元組陣列。")]

public

byte

getdatasetbytes()

示例如下:客戶程式呼叫方法:

**

private

void

button2_click(

object

sender, eventargs e)

", datetime.now

-dtbegin) +"

"+buffer.length;

binddata(dataset);

}

(3) 返回datasetsurrogate物件用binary序列化後的位元組陣列

特點

:微軟提供的開源元件;

優點

:易於處理,可以中文內容起到加密作用;

缺點

:大資料量的傳遞處理慢,較消耗網路資源;

示例如下:

**

1

[webmethod(description ="

返回 datasetsurrogate 物件用 binary 序列化後的位元組陣列。")]

2public

byte

getdatasetsurrogatebytes()312

客戶程式呼叫方法:

**

1

private

void

button3_click(

object

sender, eventargs e)2"

, datetime.now

-dtbegin) +"

"+buffer.length;

10binddata(dataset);11}

12

(4)返回datasetsurrogate物件用binary序列化並zip壓縮後的位元組陣列

特點:對位元組流陣列進行壓縮後傳遞;

優點:當資料量大時,效能提高效果明顯,壓縮比例大;

缺點:相比第三方元件,壓縮比例還有待提高;

建議:當系統需要進行大資料量網路資料傳遞時,建議採用此種可靠、高效、免費的方法。

示例如下:

**

[webmethod(description ="

返回 datasetsurrogate 物件用 binary 序列化並 zip 壓縮後的位元組陣列。")]

public

byte

getdatasetsurrogatezipbytes()

public

byte

compress(

byte

data)

catch

}}

客戶程式呼叫方法:

**

1

private

void

button4_click(

object

sender, eventargs e)2"

, datetime.now

-dtbegin) +"

"+zipbuffer.length;

11binddata(dataset);12}

13private void

binddata(dataset

dataset)< xmlnamespace prefix ="o" />

**

1

客戶端unzipclass程式

2public

static

class

unzipclass315

catch1619}

20public

static

byte

extractbytesfromstream(stream zipstream,

intdatablock)

2134

totalbytesread

+=bytesread;35}

36array.resize(

refdata, totalbytesread);

37return

data;38}

39catch4043}

44}45

怎樣提高WebService的效能

伺服器端webservice程式 using system.runtime.serialization.formatters.binary using system.io using system.io.compression using system.data.sqlclient public c...

怎樣提高WebService的效能

伺服器端webservice程式 c using system.runtime.serialization.formatters.binary using system.io using system.io.compression using system.data.sqlclient public...

提高SQL Server效能

如何提高sql server的效能 提供sql server效能總的來說有兩種方式 1 擴容,提高伺服器效能,顯著提高cpu 記憶體,解決磁碟i o瓶頸。2 優化應用程式 引起資料效能問題主要原因 1.不了解系統效能和可擴充套件行 2.一次檢索太多資料 3.錯誤的使用資料庫事務 4.錯誤的使用資料庫...