Direct push je dobar mehanizam samo ima par sitnica koje mogu da ti pokvare dan.
1. Imaj plan na klijentu za situaciju kad server nije dostupan, poimence razlikuj tu situaciju od one u kojoj je konekcija izbacila timeout po dizajnu i kad izbaci zato sto je host unreachable ili je neka od usputnih mreznih komponenti dropovala konekciju. Moze da ti se desi da jednostavno uletis u petlju i krenes da floodujes server. Ovo je najlase resiti minimalnim razmakom izmedju dva ovaranja konekcije (a koji je manji od tvog planiranog timeout-a)
2. Adaptiraj se i nemoj pretpostaviti da je timeout koji si ti postavio na klijentu onaj koji ce biti realizovan u praksi. Npr NAT admin moze da podesi timeout na port-mapping koji je dosta kraci pa ce ti konekcija pasti.
3. Ne ocekuj da ces dobiti notifikaciju o zatvorenoj konekciji u slucaju #2 :) Network admini vole da samo cutke dropuju :) pa ti cekaj i susi se.
Iz gornjih razloga imaj two-part komunikacioni protokol. Tu long-lived konekciju koristi samo kao flag da je nesto spremno na serveru i onda iskoristi poll metod da povuces konkretne podatke. Ako podatke vracas istom konkecijom iz razloga #2 moze cak da ti se desi da ti konekcija padne usred receiva.
Sloba je za 12 godina promenio antropološki kod srpskog naroda. On je od jednog
naroda koji je bio veseo, pomalo površan, od jednog naroda koji je bio znatiželjan, koji
je voleo da vidi, da putuje, da upozna,
od naroda koji je bio kosmopolitski napravio narod koji je namršten, mrzovoljan,
sumnjicav, zaplašen, narod koji se stalno nešto žali, kome je stalno neko kriv - Z.Đinđić