Nyligen skrev jag om PubNub, en leverantör av API:er för flera enheter och plattformar och global meddelandeinfrastruktur för att förenkla kodningen av dina realtidsappar. Du kanske läste den artikeln och kanske till och med provat PubNub själv. Om du tyckte att det var spännande, kanske apputveckling i realtid är ditt styrhytt? Kanske är du osäker på om appar som du har utvecklat eller för närvarande kodar kvalificerar som realtidsappar? Om du svarade ja på någon av dessa frågor tror jag att du kommer att tycka att dagens ämne är ganska utvecklande. Vi kommer att gå igenom några av de faktorer som gör en applikation till en av realtidsvarianterna.
Realtid kontra traditionella applikationer
En realtidsapplikation (RTA) är en som fungerar inom en tidsram som användaren känner som omedelbar eller mycket nära den. Det säger sig självt att latensen måste vara mindre än en sekund eller två, kanske till och med mycket mindre. Men det är mer än så. Annars skulle alla någorlunda välinställda DBMS-stödda appar kvalificeras som realtid. Den viktigaste ingrediensen som saknas i dessa gamla skolappar är den daterade karaktären på deras data. Även de senaste värdena kan vara timmar, veckor eller månader gamla.
Ta en titt på följande exempel på RTA och fundera över vilken typ av data de skulle hantera:
- Videokonferensapplikationer
- VoIP (voice over Internet Protocol)
- Onlinespel
- Molnlösningar för resursdelning
- Vissa e-handelstransaktioner
- Chatta
- IM (snabbmeddelanden)
Lagrade data spelar en avgjort mindre roll i RTA. Det är hänvisat till beständig konfiguration, säkerhet och användarprofilinformation; stjärnan i programmet är data som kommer från andra appar, dataflöden, Internet of Things (IoT)-enheter och en myriad av andra källor som överför data så fort den blir tillgänglig.
Varför nu?
Liksom många "nya" tekniker är realtidsappar faktiskt inte nya. Jag kan fortfarande minnas den utbredda användningen av chattappar på campus när jag gick på college för tjugo år sedan. Skillnaden mellan då och nu är att realtidsappar nu dominerar över traditionella databasstödda applikationer, medan de förr i tiden var undantaget från regeln. Faktum är att realtidsappar har blivit avgörande för vår tidskänsliga, reaktiva livsstil, där till och med några sekunders försening kan orsaka oss stor sorg.
Tipppunkten nåddes när smarta telefoner tog över marknadsandelen. Så snart de började spåra sina användares rörelser och plats blev behovet av realtidsbearbetning väsentligt. Lägg därtill ökningen av IoT och Big Data, så blir realtid verkligen en nödvändighet.
Realtidsappar ger många fördelar:De ger oss möjligheten att fatta bättre beslut och vidta meningsfulla åtgärder vid rätt tidpunkt. Kreditkortsföretag kan upptäcka bedrägerier så snart någon sveper ett kreditkort. Andra företag kan utlösa ett erbjudande medan en shoppare står vid en kassakö, eller placera en annons på en webbplats medan någon tittar på en specifik webbsida. Realtid handlar om att kombinera och analysera data så att du kan vidta rätt åtgärd, vid rätt tidpunkt och på rätt plats.
Gå framåt
Om du är intresserad av att utveckla realtidsapplikationer, kanske du vill kolla in PubNubs webbplats för att lära dig mer om det. De erbjuder många produkter, men deras främsta är ett API för publicering/prenumeration av meddelanden i realtid byggt på deras globala dataströmsnätverk. Den består av ett replikerat nätverk av minst 14 datacenter i Nordamerika, Sydamerika, Europa och Asien. Nätverket betjänar för närvarande över 330 miljoner enheter och strömmar över en biljon meddelanden per månad.