Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Beyond HTTP, Breaking Free of The Web
Search
Mark Wolfe
February 09, 2015
Technology
350
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Beyond HTTP, Breaking Free of The Web
Talk I gave at APIdays in Sydney 2015 and Microservices Meetup
Mark Wolfe
February 09, 2015
More Decks by Mark Wolfe
See All by Mark Wolfe
IP Networking in AWS
wolfeidau
0
83
Getting Into Vue.js
wolfeidau
0
210
AWS Automation With Lambda
wolfeidau
1
100
Ansible and Cloudformation
wolfeidau
1
250
Docker Security
wolfeidau
0
210
Building a Proxy in Go
wolfeidau
2
420
Using JWT to Authenticate Microservices
wolfeidau
1
270
Managing Secrets IN AWS
wolfeidau
0
170
ESPlant Workshop Firmware Overview and Demos
wolfeidau
0
150
Other Decks in Technology
See All in Technology
Vibe Coding で作ったプロダクトをどう安全に動かすか / How to Safely Run Products Built with Vibe Coding
glidenote
0
640
Lambda MicroVMsは常駐サーバーの代わりに なるか? Kiro Crew を動かして検証してみた / Kiro Crew on Lambda MicroVMs
k_adachi_01
2
220
メルカリにおけるAI時代の高速プロトタイピング基盤「Arca」
ryotarai
12
9.8k
事業課題から技術的負債に向き合う
sansantech
PRO
2
2.4k
Azure Serverless 2026:Production-ready な AI エージェント基盤 / Azure Serverless 2026: Production-Ready AI Agent Platform
miyake
2
610
AIで社員の自主発信に広報目線を組み込む
_mossann_t
0
140
「ピッケル本」日本語版は4.0(第6版)が出版されるべき / pickaxe4-nagoyark05
kakutani
2
300
HolmesGPTで始めるSREエージェント入門!プラットフォームの障害調査はAIにお任せ 〜
sanghyuk
0
150
Harness Engineering on Rails
joelq
0
520
「大丈夫そう?」をObservabilityで確かめる
mrmtsu
0
160
認知負荷を吸収し、プロダクトをまたぐPR Preview基盤の設計事例
taiki45
2
320
AIエージェント時代のPlatform as a Product —— テックリードがPdMとして回す発見・導入・計測 / Platform as a Product in the AI Agent Era
toshi0607
0
180
Featured
See All Featured
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
2
1.6k
The SEO identity crisis: Don't let AI make you average
varn
0
560
Data-driven link building: lessons from a $708K investment (BrightonSEO talk)
szymonslowik
1
1.3k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
6.1k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
Ethics towards AI in product and experience design
skipperchong
2
380
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
1
540
Discover your Explorer Soul
emna__ayadi
2
1.3k
Claude Code のすすめ
schroneko
67
230k
Scaling GitHub
holman
464
140k
Agile Actions for Facilitating Distributed Teams - ADO2019
mkilby
0
280
Optimising Largest Contentful Paint
csswizardry
37
4k
Transcript
Beyond HTTP, Breaking Free of The Web Mark Wolfe
–From http://www.w3.org/DesignIssues/Architecture.html “The most fundamental specification of Web architecture, while
one of the simpler, is that of the Universal Resource Identifier, or URI.”
–From https://tools.ietf.org/html/rfc2616 “The Hypertext Transfer Protocol (HTTP) is an application
protocol for distributed, collaborative, hypermedia information systems.”
– From http://en.wikipedia.org/wiki/Application_programming_interface “In computer programming, an application programming interface
(API) is a set of routines, protocols, and tools for building software applications.”
APIs We Use != http DNS Used to resolve host
names Also used for service discovery MDNS SPDY
Wireshark Network protocol analyser Our window into the wonderful world
of protocols and APIs Available for Windows, OSX and Linux https://www.wireshark.org/ The wire doesn’t lie
DNS? Protocol uses UDP or TCP for transport Consists of
Questions and Answers Includes some information on authority Uses "intelligent retransmission” Small messages
DNS Continued.. Binary protocol Fixed header Payload uses a compact
self describing binary format TLV (type length value)
DNS Question
DNS Answer
DNS Exchange
HTTP Get Request
In Review Compact messages More likely to transit “wireless” networks
Extensible self describing binary payload Established encoding so others can introspect without a definition! Fast
MDNS Uses UDP Over Multicast Designed for resolving names in
adhoc networks Uses the existing DNS message structure, name syntax, and resource record types
Something Simpler? So lets look at something simpler than DNS
What if we just put text in a UDP packet What would that look like?
Problem I want to send 10s of 1000s of metrics
to a server for aggregation with minimal performance impact I want to keep it simple I want the server to be a staging area for data Perform Aggregation Flush to timeseries at regular intervals
statsd Developed by etsy Uses UDP as a transport Data
is encoded using text Metrics are either a Gauge, Counter, Timer or Meter No reply necessary!
statsd protocol Metrics are generally of the form <metric name>:<value>|<type>
outside_temp|12.2|g get_home_request_time|123|ms get_home_request|1|c
In Review Very simple implementation Doesn’t block Fast Loss doesn’t
really matter in the scheme of things Maths happens in the server
None
The End @wolfeidau on twitter https://github.com/wolfeidau
[email protected]
http://wolfe.id.au
Links Good article on DNS message format https://www.wireshark.org/ Read this
book High Performance Browser Networking Etsy Statsd