Выкарыстанне GZipStream для Client/Server асінхроннай сувязі

У мяне ёсць сістэма кліент/сервер (з дапамогай сокета) з некалькімі кліентамі і адным серверам, які адпраўкі xml DATAS кожную секунду на ўсіх кліентах.

У xml Дадзеныя заўсёды ў розным памеры ад 1 - 18000 знакаў і сервер павінен адправіць гэтыя XML-DATAS ўсім кліентам адначасова.

Цяпер я хачу ведаць, як зрабіць сувязь паміж серверам і кліентамі хутчэй.

Можа быць, я буду прасіць больш, чым адно пытанне, але я сапраўды stucked ў дадзены момант, і я не магу працягваць больш.

  • Калі I <моцны> кампрэс кожны XML-дадзеных перад адпраўкай?
  • Калі I <моцны> серыялізацыі у XML-Datas? (Магчыма, памер XML-дадзеных будзе паменшаная)
  • Мне трэба пераўтварыць кожны XML-DATAS ў байце Do [] масіў (для буфера), таму што паведамленне павінна быць зроблена ў Sametime для ўсіх кліентаў.

Дзякуй!

1

3 адказы

Мяркуючы, што вы працуеце ў інтрасеткі, я б рэкамендаваў шматадрасных Вашы дадзеныя XML. Такім чынам, ваш сервер будзе пасылаць адну копію дадзеных xml кожны другі (замест адпраўкі N копій дадзеных для N кліента)

0
дададзена
Гэта залежыць ад вашага правайдэра, хутчэй за ўсё, не.
дададзена аўтар L.B, крыніца
Што рабіць, калі я не працую ў інтрасеткі? Ёсць яшчэ адзін спосаб шматадрасных перадачы дадзеных XML?
дададзена аўтар Racooon, крыніца

Калі вы карыстаецеся WCF вы можаце лёгка інтэграваць сціск GZip.

check here: WCF Compression over HTTP sample

0
дададзена
Выбачайце забыўся сказаць, што гэта дадатак, якое выкарыстоўвае сокет (ТСР)
дададзена аўтар Racooon, крыніца
Я праверу, дзякуй
дададзена аўтар Racooon, крыніца
Затым паглядзіце на гэта: codeproject.com/KB/IP/RCSStream.aspx
дададзена аўтар Davide Piras, крыніца

Вы можаце выкарыстоўваць сярэдні пласт з убудаваным у паб-суб тапалогіі, калі вы ў цяперашні час пераборы падлучаных кліентаў. 0MQ мае магчымасць для аднаго выдаўца вельмі эфектыўна адпраўляць абанентам п і мае C# звязванне. Акрамя таго, можна сціснуць паведамленні перад адпраўкай, як вы прапанавалі.

0
дададзена
Ці ёсць 0MQ сціснуць тэст спіс? Я вельмі дзіўна 0QM. Ці магу я выкарыстаць яго для маёй сістэмы?
дададзена аўтар Racooon, крыніца
З дакументаў: «Гэта сокеты на пазіцыі, метадалагічнай». Гэта сярэдняе посуд, і яна можа прымаць шмат цяжкасці з сеткі сувязі. «ØMQ (ZeroMQ, 0MQ, zmq) выглядае як ўбудавальная бібліятэка сеткі, але дзейнічае як асновы паралельнасці. Яна дае сокеты, якія перавозяць цэлыя паведамленні праз розныя транспарты, як у працэсе вытворчасці, міжпрацэсных, TCP і шматадрасных рассылка. Вы можаце падключыць раздымы N-к-N з ўзорамі, як, паб разгалінавання-суб, размеркаванне задач, і запыт-адказ. Гэта досыць хутка, каб тканіна для кластарных прадуктаў «. Гэта можа зрабіць шмат для вас і зрабіць вашу жыццё прасцей.
дададзена аўтар robowahoo, крыніца