Newsgroup: it.comp.macintosh
Titolo: come funziona il PUSH?

scusate, giacch� se ne parla, in questo periodo
ma tecnicamente, come funziona il PUSH?
voglio dire: siamo su TCP/IP, c'� uno che chiama e uno che risponde. il
push inverte per cos� dire i ruoli: non � il client che chiede al server
"ci sono novit�?" ma � il server che contatta il client per dirgli "ehi, ci
sono novit�!".
ma tecnicamente, il tutto, come funziona? il canale di comunicazione rimane
sempre aperto? client e server si scambiano? c'� un (agh!) polling continuo
da cliena a server?
qualcuno me lo sa spiegare nella pratica?
d.

 d.
E soprattutto, se chiama lui, paga lui ?

 da cliena a server?
Ogni tre minuti un processo sveglia l'iPhone e si attacca con una
connessione TCP ai server di Apple. Se c'è roba la tiene per un po', se
no si spegne. — ∞

 no si spegne. — ∞
Ma va la`... Quello e` il normalissimo polling.
http://en.wikipedia.org/wiki/Push_technology
Tieni sempre aperta la connessione in stato di 'idle' e quando al server
arriva qualcosa invia dati.
Ad esempio:
http://na.blackberry.com/eng/developers/javaappdev/BlackBerry_Push_APIs_Whitepaper.pdf
[...] applications no longer need to repeatedly poll servers for new
data. Although these polling requests and responses are small
individually, these can add up quickly with frequent polling intervals
across multiple applications. In polling scenarios, the user receives
limited return on their data investment.
[...]
BlackBerry Push APIs minimize the impact on battery life; instead of
actively checking for new data, the application simply listens in the
background for the server to push data to it. Once delivered, the
application can process it as required.
-- 
Valentino Volonghi aka Dialtone
http://stacktrace.it
 -- Aperiodico di resistenza informatica
Blog: 
http://www.twisted.it/
Public Beta: 
http://www.adroll.com/

 ma tecnicamente, come funziona il PUSH?
Di sicuro NON funziona come quello dell'iPhone. Citofonare Blackberry per 
vedere il vero push
-- 
  Cristian Castellari - 
http://www.skyflash.it
  La mia guida su IPCop: 
http://tinyurl.com/yqe64j
  Per scrivermi, de-ROTta l'email

 Whitepaper.pdf
Il push di iPhone non funge come quello del Blackberry. — ∞

 Preferisco martellarmi le palle da solo, grazie.
'acchio, l'avete svegliato
^__^
d.

 Il push di iPhone non funge come quello del Blackberry. — ∞
Non funge ESATTAMENTE nello stesso modo, ma di sicuro non possono
vendere PUSH quando fanno polling.
La tecnologia si chiama PUSH perche` non necessita di polling, poi
pensala come preferisci :).


 pensala come preferisci :).
L'idea è che l'iPhone cerca di mantenere una connessione attiva, e
fintanto che quella connessione è attiva è vero push (l'iPhone riceve i
messaggi immediatamente). L'iPhone però spegne quella connessione
periodicamente per non avere una durata della batteria imbarazzante. — ∞
 

 periodicamente per non avere una durata della batteria imbarazzante. — ∞
Spegne significa solo che va in idle. Seriamente, se quello che dici
fosse vero significherebbe che tu puoi ricevere segnalazioni solo ogni 3
minuti. Prova per credere, mandati un po' di IM, aspetta 2 minuti e
rimanda. Sara` istantaneo, riprova anche con tutti gli intervalli che
preferisci entro i 3 minuti (o entro il tempo che scegli essere
l'intervallo in cui viene fatto il controllo). O l'iphone si sveglia
ogni 3 minuti, e fa polling e non e` push, oppure tiene una connessione
attiva e quando c'e` qualcosa la sveglia.
Alternativamente quello che puo` capitare, ma potrebbe essere una
cazzata perche` non so come funzionino le reti cellulari nel dettaglio,
l'iphone essendo sempre agganciato al ripetitore per ricevere chiamate
usa lo stesso meccanismo per le notifiche, arriva un segnale dal
ripetitore che sveglia l'iphone e gli fa pigliare la roba sul server,
eventualmente resta sveglio per qualche minuto per le successive
notifiche immediate e quindi torna a dormire aspettando il successivo
segnale del ripetitore.
Di _sicuro_ (e sono sicuro al 200%) l'iphone non si sveglia
periodicamente per controllare se c'e` roba perche` quello non e` push
ma polling e si mangia viva la batteria, altro che il push... Io ho il
push attivo e non e` neanche vicino a quello che costa in batteria
tenere il polling delle mail ogni 15 minuti (neanche ogni 3), arrivavo a
fine giornata e moriva. Tanto piu` che il push con mobileme c'e` sempre
stato e non mi ha mai mangiato la batteria.



Posso dirti come dovrebbe essere se parliamo di standard IMAP,
rispettando tutte le direttive (cosa che Mail *non* fa, gli altri
client sì in genere).
La regola dice: il client imap *deve* (MUST) accettare connessioni dal
server in qualsiasi momento.
Questo comporta che, se arriva una nuova e-mail, il mail server la
invia (push) subito al tuo client che le deve accettare.
Tradotto: se sia il server che il client rispettano le regole, NON
serve impostare "controlla la posta ogni N minuti", perché i messaggi
devono arrivarti "da soli" :)
In alcuni casi, si sopperisce ai difetti del server impostando l'uso
del comando IDLE sul client, ma è un aggirare una mancanza.
Ora, con l'iPhone immagino che il problema sia relativo all'avere la
connessione aperta per via della batteria, ma non per altri
impedimenti tecnici (se non i bug di Mail).
ciao,
Gabriele