EPISODE · Mar 2, 2016 · 54 MIN
103: Don’t Hate Us, Nolan
from iOhYes · host Darryl Thomas & John Sextro
Discussion Pushing info to clients Long Polling Client sends request to server, waits for response or timeouts (Loop) Can send and receive information, but not full-duplex iOS Implementation NSURLConnection sendSynchronousRequest Common uses Fallback from Websockets and SSE when streams are unreliable or impractical HTTP Streams Can only push information to your client If you need to send info back to server use standard rest approach Transported over simple HTTP Built in support for re-connection and event-id iOS Implementation Server Sent Events (SSE) NSURLSession, NSInputStream, NSSteamEvent Setup the connection Implement code to handleEvents from the input stream Common uses Stock ticker streaming “Status” feed updating Push Notifications Websockets Designed to overcome many of the pitfalls/shortcomings described in RFC 6202 Standardized by IETF (Internet Engineering Task Force) in 2011 Can send and receive information (full-duplex pipe) Protocol based on TCP Uses HTTP only for initial handshake, while leveraging existing HTTP infrastructure iOS Implementation CFStreamCreatePairWithSocketToHost takes url, read and write stream Cast read and write stream to NSInputStream and NSOutputStream, respectively Set delegate for input and output streams Schedule both in a run loop (Can do without but will block the execution of other code) Open connection Write code to handleEvents from the input stream Implement message sending via the output stream Server considerations Not as easy to get started with as a generic web server Buy one, borrow one or build one Common uses Chat Player vs. Player games Real time interactions Popular Abstractions/Frameworks TRVSEventSource from Travis Jeffery SignalR from Microsoft At-a-glance Comparison Websockets SSE Long Polling Client Performance Best Best Worst Server Performance Best Worst Worst Complexity Highest Lowest Mid When to Use 2-way messaging Push to Client Just getting started Picks Darryl Proportional Spacing with Auto Layout John Google Cloud Vision API Detects types of images, landmarks, recognizes text, does image sentiment analysis and can even detect “inappropriate content” Agile and Beyond 2016 May 5-6 in Ypsilanti, MI Alternative show title suggestions Uncanny valley The cooker's always on Canonical Framing Technique
Embed this episode
Ready to play
103: Don’t Hate Us, Nolan
No transcript for this episode yet
Similar Episodes
No similar episodes found.
Similar Podcasts
No similar podcasts found.