WebpushEdit

Webpush propunere de Internet Engineering Task Force este un protocol simplu, folosind HTTP versiunea 2 pentru a oferi în timp real de evenimente, cum ar fi primirea de noi apeluri sau mesaje, care pot fi livrate (sau „împins”) într-un timp util. Protocolul consolidează toate evenimentele în timp real într-o singură sesiune care asigură o utilizare mai eficientă a resurselor de rețea și radio. Un singur serviciu consolidează toate evenimentele, distribuind aceste evenimente aplicațiilor pe măsură ce sosesc. Acest lucru necesită doar o sesiune, evitând costurile aeriene duplicate.,notificările Web fac parte din standardul W3C și definesc un API pentru notificările utilizatorilor finali. O notificare permite alertarea utilizatorului în afara contextului unei pagini web a unui eveniment, cum ar fi livrarea de e-mail. Ca parte a acestui standard Push API definit de W3C, este acum implementat de Chrome, Firefox, Edge, și Safari.

HTTP server pushEdit

HTTP Server push (cunoscut și ca HTTP streaming) este un mecanism pentru trimiterea datelor nesolicitate (asincrone) de pe un server web către un browser web. HTTP server push poate fi realizat prin oricare dintre mai multe mecanisme.,ca parte a HTML5 API-ul WebSocket permite unui server web și unui client să comunice printr-o conexiune TCP full-duplex.

în general, serverul web nu termină o conexiune după ce datele de răspuns au fost servite unui client. Serverul web lasă conexiunea deschisă astfel încât, dacă are loc un eveniment (de exemplu, o modificare a datelor interne care trebuie raportată unuia sau mai multor clienți), acesta poate fi trimis imediat; în caz contrar, evenimentul ar trebui să fie în coadă până la următoarea solicitare a clientului. Majoritatea serverelor web oferă această funcționalitate prin CGI (de ex.,, Non-Parsed anteturi script-uri pe serverul HTTP Apache). Mecanismul care stă la baza acestei abordări este codificarea transferului chunked.un alt mecanism este legat de un tip MIME special numit multipart/x-mixed-replace, care a fost introdus de Netscape în 1995. Browserele web interpretează acest lucru ca un document care se schimbă ori de câte ori serverul împinge o nouă versiune către client. Este încă acceptat de Firefox, Opera și Safari astăzi, dar este ignorat de Internet Explorer și este acceptat doar parțial de Google Chrome., Poate fi aplicat documentelor HTML și, de asemenea, pentru streaming de imagini în aplicații webcam.propunerea WHATWG Web Applications 1.0 include un mecanism de împingere a conținutului către client. La 1 septembrie 2006, browserul web Opera a implementat acest nou sistem experimental într-o caracteristică numită „evenimente trimise de Server”. Acum este standardizat ca parte a HTML5.

PushletEdit

în această tehnică, serverul profită de conexiunile HTTP persistente, lăsând răspunsul perpetuu” deschis ” (adică.,, serverul nu termină niciodată răspunsul), păcălind efectiv browserul să rămână în modul „Încărcare” după ce încărcarea inițială a paginii ar putea fi considerată completă. Serverul trimite apoi periodic fragmente de JavaScript pentru a actualiza conținutul paginii, obținând astfel capacitatea de împingere. Folosind această tehnică, clientul nu are nevoie de applet-uri Java sau alte plug-in-uri pentru a menține o conexiune deschisă la server; Clientul este notificat automat despre evenimente noi, împinse de server., Un dezavantaj serios la această metodă, cu toate acestea, este lipsa de control serverul are asupra browser-ul timing out; o actualizare a paginii este întotdeauna necesară în cazul în care apare un timeout la sfârșitul browser-ului.sondarea lungă nu este ea însăși o apăsare adevărată; sondarea lungă este o variație a tehnicii tradiționale de votare, dar permite emularea unui mecanism de împingere în circumstanțe în care o împingere reală nu este posibilă, cum ar fi site-urile cu politici de securitate care necesită respingerea cererilor HTTP/S primite.,

cu interogarea lungă, clientul solicită informații de la server exact ca în sondajele normale, dar cu așteptarea ca serverul să nu răspundă imediat. Dacă serverul nu are informații noi pentru client atunci când sondajul este primit, în loc să trimită un răspuns gol, serverul deține cererea deschisă și așteaptă ca informațiile de răspuns să devină disponibile. Odată ce are informații noi, serverul trimite imediat un răspuns HTTP/S către client, completând cererea HTTP/S deschisă., La primirea răspunsului serverului, clientul emite adesea imediat o altă solicitare a serverului. În acest fel, latența obișnuită a răspunsului (timpul dintre momentul în care informațiile devin disponibile pentru prima dată la următoarea solicitare a clientului), asociată altfel cu clienții de votare, este eliminată.

de exemplu, BOSH este o tehnică HTTP populară, de lungă durată, folosită ca alternativă de lungă durată la o conexiune TCP continuă atunci când o astfel de conexiune este dificil sau imposibil de utilizat direct (de ex.,, într-un browser web); este, de asemenea, o tehnologie de bază în XMPP, pe care Apple o folosește pentru suportul iCloud push.

Flash XMLSocket relaysEdit

Această tehnică, utilizată de aplicații de chat, face uz de XMLSocket obiect într-un singur pixel Adobe Flash film. Sub controlul JavaScript, clientul stabilește o conexiune TCP la un releu unidirecțional de pe server. Serverul releu nu citește nimic din acest soclu, în schimb trimite imediat clientului un identificator unic. În continuare, clientul face o solicitare HTTP către serverul web, inclusiv cu acesta acest identificator., Aplicația web poate apoi să împingă mesajele adresate clientului către o interfață locală a serverului releu, care le transmite prin soclul Flash. Avantajul acestei abordări este că apreciază asimetria naturală de citire-scriere care este tipică pentru multe aplicații web, inclusiv chat, și, în consecință, oferă o eficiență ridicată. Deoarece nu acceptă date despre prizele de ieșire, serverul releu nu trebuie să sondeze deloc conexiunile TCP de ieșire, ceea ce face posibilă menținerea a zeci de mii de conexiuni concurente deschise., În acest model, limita la scară este stiva TCP a sistemului de operare al serverului de bază.

Livrare de date de grup de încredere (RGDD)editare

în servicii, cum ar fi Cloud Computing, pentru a crește fiabilitatea și disponibilitatea datelor, este de obicei împins (replicat) la mai multe mașini. De exemplu, sistemul de fișiere distribuite Hadoop (HDFS) face 2 copii suplimentare ale oricărui obiect stocat. RGDD se concentrează pe turnarea eficientă a unui obiect dintr-o locație în mai multe, economisind lățimea de bandă prin trimiterea unui număr minim de copii (doar unul în cel mai bun caz) ale obiectului pe orice legătură din rețea., De exemplu, Datacast este o schemă de livrare către mai multe noduri din centrele de date care se bazează pe topologii regulate și structurate, iar DCCast este o abordare similară pentru livrarea în centrele de date.o notificare push este un mesaj care este „împins” de la serverul backend sau aplicație la interfața cu utilizatorul, de exemplu (dar fără a se limita la) aplicații mobile și aplicații desktop. Notificările Push au fost introduse pentru prima dată de Apple în 2009.In 2010 Google a lansat propriul serviciu, Google Cloud pentru mesagerie dispozitiv., (De atunci a fost înlocuit de Google Cloud Messaging și apoi Firebase Cloud Messaging.) Noiembrie 2015, Microsoft a anunțat că serviciul de notificare Windows va fi extins pentru a utiliza arhitectura Universală a platformei Windows, permițând trimiterea datelor push către Windows 10, Windows 10 Mobile, Xbox, precum și alte platforme acceptate folosind apeluri API universale și solicitări POST.notificările Push sunt împărțite în principal în 2 abordări, notificări locale și notificări la distanță., Pentru notificările locale, aplicația programează Notificarea cu sistemul de operare al dispozitivului local sau, alternativ, stabilește ca cronometru în aplicația în sine dacă este capabil să ruleze continuu în fundal. Când se atinge ora programată a evenimentului sau este îndeplinită condiția programată a evenimentului, mesajul este afișat în interfața de utilizator a aplicației.

notificările de la distanță sunt gestionate de un server de la distanță. În acest scenariu, aplicația client trebuie să fie înregistrată pe server cu o cheie unică (de exemplu, un UUID)., Serverul declanșează apoi mesajul împotriva cheii unice pentru a livra mesajul către aplicația client printr-un protocol client/server convenit, cum ar fi HTTP sau XMPP, iar clientul afișează mesajul primit. Când sosește Notificarea push, poate transmite notificări și mesaje scurte, poate seta ecusoane pe pictogramele aplicației, poate clipi sau aprinde continuu LED-ul de notificare sau poate reda sunete de alertă pentru a atrage atenția utilizatorului. Notificările Push sunt de obicei utilizate de aplicații pentru a aduce informații în atenția utilizatorilor., Conținutul mesajelor poate fi clasificat în următoarele categorii de exemplu:

  • Mesaje de Chat, de ex.: mesaje de la Facebook messenger trimise de alți utilizatori.
  • oferte speciale ale furnizorilor, de exemplu: un furnizor poate dori să facă publicitate ofertelor lor sociale clienților.
  • memento de evenimente, de exemplu: unele aplicații pot permite clientului să creeze memento sau alertă pentru o anumită perioadă de timp.
  • modificări de subiecte abonate, de ex.: utilizatorii pot dori să primească actualizări privind vremea în locația lor sau să monitorizeze o pagină web pentru a urmări modificările, de exemplu.,notificările push în timp Real pot ridica probleme de confidențialitate, deoarece pot fi utilizate pentru a lega identitățile virtuale ale pseudonimelor rețelelor sociale de identitățile reale ale proprietarilor de smartphone-uri.