Programmēšana

9 slepkavas izmanto WebSockets

Visiem maniem lasītājiem: Man par laimi es šobrīd esmu Brazīlijas mērogošanas sistēmās, mērcēju 90 ° F (32,2 ° C) laika apstākļus un piepildīju feijoada un caipirinha. Tikmēr, lai šis emuārs atbilstu jūsu standartiem, esmu piesaistījis savu galveno vīrieti Džonatanu Frīmanu, lai jūs izglītotu, kamēr es esmu prom. Bez papildu domām, šeit ir Džonatans - front-end guru, lielo datu speciālists un džeza mūziķis. Izbaudiet un tiekamies pēc pāris nedēļām! - ACO

Lietotāji tagad pieprasa informāciju, tiklīdz tā ir pieejama. Ja jums ir jāatsvaidzina lapa, lai iegūtu jaunu informāciju, jau ir par vēlu. Par laimi, visu mūsdienu pārlūkprogrammu atbalstītais protokols ļauj veikt tiešu datu apmaiņu: WebSockets.

Nav neviena cita risinājuma, kas nodrošina patiesu divvirzienu komunikāciju, piemēram, WebSockets, tomēr daudzi tīmekļa izstrādātāji joprojām paļaujas uz tādiem hackiem kā AJAX ilgtermiņa aptauja. (Atzīmējot, es domāju, ka ilgstoša aptauja ir ļoti radoša un funkcionāla, taču tomēr uzlaušana.) Entuziasma trūkums par WebSockets var būt saistīts ar drošības ievainojamību pirms gadiem vai pārlūkprogrammas atbalsta trūkumu tajā laikā, taču abi jautājumi ir novērsti. uzrunāts.

[Strādājiet gudrāk, nevis grūtāk - vai programmētājiem ir jāzina padomi un tendences izstrādātāju izdzīvošanas ceļvedī. Lejupielādējiet PDF jau šodien! | Sekojiet līdzi jaunākajām izstrādātāju ziņām, izmantojot Developer World biļetenu. ]

Ir vienkārši noteikt, vai WebSockets izmantot attiecīgajam darbam:

  • Vai jūsu lietotnē ir iesaistīti vairāki lietotāji, kas sazinās savā starpā?
  • Vai jūsu lietotne ir logs uz servera puses datiem, kas pastāvīgi mainās?

Ja uz kādu no šiem jautājumiem atbildējāt apstiprinoši, apsveriet iespēju izmantot WebSockets. Ja jūs joprojām neesat pārliecināts un vēlaties iedvesmu, šeit ir daži slepkavas lietošanas gadījumi.

1. Sociālās plūsmas

Viens no sociālo lietotņu ieguvumiem ir zināt, ko visi draugi dara, kad viņi to dara. Protams, tas ir nedaudz rāpojošs, bet mums visiem tas patīk. Jūs nevēlaties gaidīt minūtes, lai uzzinātu, vai kāds ģimenes loceklis uzvarēja pīrāgu cepšanas konkursā vai arī kāds draugs ir saderinājies. Jūs esat tiešsaistē, tāpēc jūsu plūsma ir jāatjaunina reāllaikā.

2. Daudzspēlētāju spēles

Tīmeklis ātri nonāk savā kā spēļu platformā. Neapstājoties paļauties uz spraudņiem (es skatos uz tevi, Flash) Web izstrādātāji tagad var ieviest un eksperimentēt ar augstas veiktspējas spēlēm pārlūkprogrammā. Neatkarīgi no tā, vai jūs nodarbojaties ar DOM elementiem, CSS animācijām, HTML5 audeklu vai eksperimentējat ar WebGL, ļoti svarīga ir efektīva spēlētāju mijiedarbība. Es negribu atklāt, ka mans pretinieks ir pārvietojies pēc tam, kad esmu nospiedis sprūdu.

3. Sadarbības rediģēšana / kodēšana

Mēs dzīvojam sadalītu dev komandu laikmetā. Darbs ar dokumenta kopiju bija pietiekams, taču pēc tam jums bija jāizdomā veids, kā apvienot visas rediģētās kopijas. Versiju kontroles sistēmas, piemēram, Git, var palīdzēt ar noteiktiem failiem, taču jums joprojām būs jāseko cilvēkiem, kad Git atrod konfliktu, ar kuru to nevar tikt galā. Izmantojot sadarbības risinājumu, piemēram, WebSockets, mēs varam strādāt pie tā paša dokumenta un izlaist visas apvienošanas. Ir viegli saprast, kurš ko rediģē un vai jūs strādājat ar tādu pašu dokumenta daļu kā kāds cits.

4. Clickstream dati

Spēja analizēt, kā lietotāji mijiedarbojas ar jūsu vietni, ir ļoti svarīgi, lai to uzlabotu. HTTP izmaksas mums ir likušas noteikt prioritāti un apkopot tikai vissvarīgākos datus. Tad, sešus mēnešus pēc kārtas, mēs saprotam, ka mums vajadzēja vākt citu metriku - tādu, kas izskatījās nesvarīga, bet tagad izgaismotu kritisku lēmumu. Ja HTTP pieprasījumu pieskaitāmās izmaksas nav pieejamas, jūs varat mazāk ierobežot datu veidu, ko sūtāt no klienta. Vai vēlaties sekot peles kustībai papildus lapas ielādēm? Vienkārši nosūtiet datus, izmantojot WebSocket savienojumu, uz aizmuguri un saglabājiet tos savā iecienītākajā NoSQL veikalā. (MongoDB ir piemērots, lai reģistrētu šādus notikumus.) Tagad jūs varat atskaņot klientu mijiedarbību, lai uzzinātu, kas patiesībā notiek.

$config[zx-auto] not found$config[zx-overlay] not found