Latency - delay - ping pri komunikaciji

Živjo,

pred mano je projekt, kjer bo oseba A pošiljala sporočilca do petim osebam hkrati. Kratka tekstovna sporočila pošilja oseba A, ostali udeleženci pa so le bralci teh sporočil. Prosil bi za kakšen nasvet kako naj čim bolj izničim čas pošiljanja teh sporočil? Zamik bi mi namreč povzročal veliko težav, saj bo delovanje klientove aplikacije odvisno od pravočasno prejetih sporočil.

Pri izbiri tehnologije kolebam med dvema. Ena je namizna aplikacija, ki bo klientom pošiljala sporočila. Klient bi bila prav tako namizna (opcijsko celo web) aplikacija. Druga opcija je, da vse skupaj postavim v web in komuniciram preko brskalnika. Tako sicer enostavno pokrijem vse platforme vendar se bojim, da bo prevelik zamik. Zaenkrat nameravam delati v Visual Studiu z jezikom C#.

6 odgovorov

Jaz bi naredil to prek weba.. to zagotovo.

A tole si pogledal http://socket.io
OZ.. https://www.ably.io/ https://framework.realtime.co/messaging/ http://www.spikaapp.com/#
ipd..

Še najbolj učinkovito in brez jebanja bi bilo da bi enostavno uporabil en framework ala ti zgoraj in njim prepustil rtm delo.. danes nekako res nima smisla tega razvijati.

Če res želiš namizje, zakaj potem ne pidgin, trillian,.. pa interni xmpp server in je private network ?

Koliko pa maš max dovoljeni delay ?

Kaj pa firebase k je realtime update in se pri prejemnikih refresha na 1 sekundo?

K temu kar ti je predlagal @hanyo bi glede na to, da si na Visual Studio in C# dodal še SignalIR knjižnjico.
Glede, da imajo moderni brskalniki tudi že native podporo za WebRTC bi tudi to malo pogledal, sicer je bolj mišljen za medio, ampak bi se dalo tudi kakšne JSON sporočila pošiljat.

evo recept za pol ure brez kodiranja, če ti bo všeč:

https://en.wikipedia.org/wiki/XMPP

... jaz imam recimo postavljenXMPP Openfire serverza interni real-time chat na lokalni mreži, ker je bil to edini način da ga uporabljajo (thunderbird imajo odprt zaradi maila non-stop, chat klienta pa nikoli niso vklopili ali pa so ga celo zaprli), klient za XMPP je že po defaultu vgrajen v Thunderbird ... lahko pa uporabiš tudi Google talk za kot XMPP server in kot XMPP klient, če te ne moti da imaš podatke izven svojega nadzora ... hitrost in zanesljivost Googlovega omrežja bo verjetno težko izboljšat za zmerno ceno...

@hanyo hvala za vse te linke... očitno sem čisto narobe brskal in jih nisem našel oz. sem jih spregledal. Delay enostavno nebi smel biti, vendar vem, da praktično to ni mogoče.

V oči mi je najbolj padla platforma Ably. Z njihovim demom namreč ne opazim delaya, ker je zelo v redu in bi aplikacijo na client strani lahko zelo dobro krmilil. Le cena je huda, saj predvidevam da bom pošiljal krepko čez 3m (krmilnih) sporočil.

Ostale predloge pa še preverim :)