SlideShare uma empresa Scribd logo
1 de 72
Baixar para ler offline
Production Engineer, Traffic Team
Building a Billion User Load
Balancer
Patrick Shuff
We’ll be talking about
© 2015 Facebook | Dublin | Credits: network icon by Daniel Gamage https://thenounproject.com/term/network/49138/, tools icon by Kiryl Sytsko https://thenounproject.com/term/tools/122204/, chess icon by Dream Icons, https://thenounproject.com/term/chess/127867/, Paraglider by Matt Brooks https://thenounproject.com/term/paraglider/114410/, Question by Henrik Lund Mikkelsen
https://thenounproject.com/term/question/8325/ https://creativecommons.org/licenses/by/3.0/ https://thenounproject.com/term/web-search/18390/
Serving Dynamic
Facebook Requests
L4/L7 Load
Balancing
Edge PoP and
Reducing Latency
Global DNS
Load Balancing
Q&A
Traffic @ fb
Facebook scale
as of March 2015
936 million daily active
people on average
798 million mobile daily
active people on average
1.25 billion mobile
monthly active people
1.44 billion monthly
active people
© 2015 Facebook | Dublin | Credit: Network icon by Daniel Gamage https://thenounproject.com/term/network/49138/ Public Domain
Facebook scale
as of March 2015
936 million daily active
people on average
798 million mobile daily
active people on average
1.25 billion mobile
monthly active people
1.44 billion monthly
active people
Approximately 82.4% of our daily active users are outside the US and Canada
© 2015 Facebook | Dublin | Credit: Network icon by Daniel Gamage https://thenounproject.com/term/network/49138/ Public Domain
What is facebook?
Photos
Videos
Newsfeed
Likes
© 2015 Facebook | Dublin | Credit: Network icon by Daniel Gamage https://thenounproject.com/term/network/49138/ Public Domain
Dynamic Requests
Javascript/CSSStatus Updates
Static Requests
Messaging
(from traffic's perspective)
What is facebook?
Photos
Videos
Newsfeed
Likes
© 2015 Facebook | Dublin | Credit: Network icon by Daniel Gamage https://thenounproject.com/term/network/49138/ Public Domain
Dynamic Requests
Javascript/CSSStatus Updates
Static Requests
Messaging
(from traffic's perspective)
Terabits of egress (outgoing bits per second)
What is facebook?
Photos
Videos
Newsfeed
Likes
© 2015 Facebook | Dublin | Credit: Network icon by Daniel Gamage https://thenounproject.com/term/network/49138/ Public Domain
Dynamic Requests
Javascript/CSSStatus Updates
Static Requests
Messaging
(from traffic's perspective)
© 2015 Facebook | Menlo Park | Credit:
What are we talking about?


HHVM
© 2015 Facebook | Menlo Park | Credit:
What are we not talking about?


HHVM


MySQL


Cache


Msgs


Feed


Ads
7 Days
Egress
Ingress
Weekly egress cycle
11 AM
24 hours
3 PM
Diurnal egress Cycle
Time zone == Pacific
(-0800 GMT)
United Kingdom
Canada
Indonesia
7 PM
24 hours
9 AM
Sum of timezones
Time zone == Pacific
(-0800 GMT)
TCP/IP Review
© 2015 Facebook | Menlo Park | Credit:
OSI Model
Layer Purpose Ex
7: Application High-Level API HTTP, SPDY, MQTT
6: Presentation Data Translation ASCII, JPEG
5: Session Communication Session RPC
4: Transport Transmission TCP, UDP
3: Network Address, Routing, Flow IPv6, IPv4
2: Data Link Reliable Physical Comm. IEEE, 802.2
1: Physical Raw bit transmission DSL, USB
© 2015 Facebook | Menlo Park | Credit:
IP Header (OSI Layer 3)
Version DSCP ECN Flow Label
Payload Length Next Header Hop limit
Source Address
Destination Address
Data
© 2015 Facebook | Menlo Park | Credit:
TCP Header (OSI Layer 4)
Source Port Destination Port
Sequence Number
Acknowledgement Number
….
Application Payload
© 2015 Facebook | Menlo Park | Credit:
HTTP Request (OSI Layer 7)
GET / HTTP/1.1
host: www.facebook.com
© 2015 Facebook | Menlo Park | Credit:
Putting it all together
Version DSCP ECN Flow Label
Payload Length Next Header Hop limit
Source Address
Destination Address
Source Port Destination Port
Sequence Number
Acknowledgement Number
….
GET / HTTP/1.1
host: www.facebook.com
L3
L4
L7
© 2015 Facebook | Menlo Park | Credit:
Putting it all together
IP Packet
TCP Segment
HTTP Request
Serving Dynamic Facebook
Requests
© 2015 Facebook | Menlo Park | Credit:
FB Request -- one web server
low rps
how do we get more
rps?!
GET / 

HHVM
AAAA www.facebook.com
DNS
rps = requests per second
<html>...
AAAA 2a03:2880:2130:cf05:face:b00c::1
© 2015 Facebook | Menlo Park | Credit:
Add a load balancer!
www ?
GET /
<html>...


L7LB
(proxygen)


PHP


PHP


HHVM
GET /
<html>...
AAAA 2a03:2880:2130:cf05:face:b00c::1
DNS
rps = requests per second
how do we get more
rps?!
lots more rps low rps
AAAA www.facebook.com
© 2015 Facebook | Menlo Park | Credit:
Add another load balancer!
www ?
GET /
<html>...


L7LB
(proxygen)


PHPL4LB
(ipvs)


PHP


PHP
GET /
<html>...


L7LB
(proxygen)


L7LB
(proxygen)
GET /
<html>...
DNS
how do we get more rps?!
network bound lots more rps low rps


PHP


HHVM
AAAA 2a03:2880:2130:cf05:face:b00c::1
AAAA www.facebook.com
© 2015 Facebook | Menlo Park | Credit:
Add another load balancer!
GET /
<html>...


L7LB
(proxygen)
L4LB
(shiv)
GET /
<html>...


L7LB
(proxygen)


L7LB
(proxygen)
GET /
<html>...
L4LB
(ipvs)
DNS
network bound
lots more rps low rps


L7LB
(proxygen)


PHP


PHP


PHP


PHP


HHVM


PHP


PHP


PHP


PHP


HHVM
ECMP
AAAA 2a03:2880:2130:cf05:face:b00c::1
AAAA www.facebook.com
© 2015 Facebook | Menlo Park | Credit:
Front end Web
Cluster
~10
~100
Thousands
© 2015 Facebook | Menlo Park | Credit:
cont.
x 10 or more
© 2015 Facebook | Menlo Park | Credit:
More RPS? Add another cluster!
w
GET /
<html>...


L7LB
(proxygen)


PHP
L4LB
(shiv)


PHP


HHVM
how do we get more rps?!
GET /
<html>...


L7LB
(proxygen)


L7LB
(proxygen)
GET /
<html>...
L4LB
(ipvs)
GET /
<html>...


L7LB
(proxygen)


PHP
L4LB
(shiv)


PHP


HHVM
GET /
<html>...


L7LB
(proxygen)


L7LB
(proxygen)
GET /
<html>...
L4LB
(ipvs)
DNS
AAAA www.facebook.com
AAAA 2a03:2880:2130:cf05:face:b00c::1
© 2015 Facebook | Menlo Park | Credit:
Add another datacenter!
w
G
<
G
<
G
<
G
<
G
<
G
<
G
<
G
<
G
<
G
<
G
<
G
<
G
<
G
<
G
<
G
<
G
<
G
<
DNS
AAAA www.facebook.com
AAAA 2a03:2880:2130:cf05:face:b00c::1
Not really top down
1.2.3.4
L4LB


L7LB


HHVM
© 2015 Facebook | Menlo Park | Credit:
Datacenter Locations
Load Balancing: L4/L7
© 2015 Facebook | Menlo Park | Credit:
Let's break it down
GET /
<html>...


L7LB
(proxygen)


PHP
L4LB
(shiv)


PHP


HHVM
GET /
<html>...


L7LB
(proxygen)


L7LB
(proxygen)
GET /
<html>...
L4LB
(ipvs)
www?
A 1.2.3.4 DNS
L4 = IP/port
L7 = HTTP
© 2015 Facebook | Menlo Park | Credit:
OSI Model: What is L4/L7?


L7LB
(proxygen)
L4LB
(ipvs)
Layer Purpose Ex
7: Application High-Level API HTTP, SPDY, MQTT
6: Presentation Data Translation ASCII, JPEG
5: Session Communication Session RPC
4: Transport Transmission TCP, UDP
3: Network Address, Routing, Flow IPv6, IPv4
2: Data Link Reliable Physical Comm. IEEE, 802.2
1: Physical Raw bit transmission DSL, USB
ECMP
L4LB L4LB
L4LB
ECMP
Hash
BGP


L7LB


L7LB


L7LB


L7LB
NOTE: L7 (proxygen) Listens to the VIP on loopback (lo) interface. Not eth0.
face:b00c::1 face:b00c::1
face:b00c::1 (lo) face:b00c::1 (lo) face:b00c::1 (lo) face:b00c::1 (lo)
L4LB
State
Table
+
Hash
ECMP
Hash
BGP
L4LB L4LB


L7LB


L7LB


L7LB


L7LB
NOTE: L7 (proxygen) Listens to the VIP on loopback (lo) interface. Not eth0.
Service
Discovery
(Zookeeper)
face:b00c::1 face:b00c::1
face:b00c::1 (lo) face:b00c::1 (lo) face:b00c::1 (lo) face:b00c::1 (lo)


L7LB


L7LB


L7LB


L7LB
L4LB L4LB
L4LB Example
State
Table
+
Hash
ECMP
Hash
A
face:b00c::1 (lo) face:b00c::1 (lo) face:b00c::1 (lo) face:b00c::1 (lo)
face:b00c::1 face:b00c::1


L7LB


L7LB


L7LB


L7LB
L4LB L4LB
L4LB Routing
D
State
Table
+
Hash
ECMP
Hash
A
A
face:b00c::1 (lo) face:b00c::1 (lo) face:b00c::1 (lo) face:b00c::1 (lo)
face:b00c::1 face:b00c::1


L7LB


L7LB


L7LB


L7LB
L4LB L4LB
L4LB Routing
B
State
Table
+
Hash
ECMP
Hash
face:b00c::1 (lo) face:b00c::1 (lo) face:b00c::1 (lo) face:b00c::1 (lo)
face:b00c::1 face:b00c::1


L7LB


L7LB


L7LB


L7LB
L4LB L4LB
L4LB Routing
B
State
Table
+
Hash
ECMP
Hash
face:b00c::1 (lo) face:b00c::1 (lo) face:b00c::1 (lo) face:b00c::1 (lo)
face:b00c::1 face:b00c::1
Direct
Server
Return
TCP Routing
Facebook


HHVM


HHVM
L4LB


HHVM


HHVM
L7LBL7LBL7LBL7LB
TCP
SSL
HTTP
face:b00c::1
face:b00c::1 (lo) face:b00c::1 (lo) face:b00c::1 (lo) face:b00c::1 (lo)
© 2015 Facebook | Menlo Park | Credit:
Remember this?
Original IP Packet
TCP Segment
HTTP Request
© 2015 Facebook | Menlo Park | Credit:
IP Packet from IPVS
IP in IP encapsulation
Original IP Packet
TCP Segment
HTTP Request
Direct
Server
Return
Original IP Packet
TCP Segment
HTTP Request
L4LB
L7LB
Response IP Pckt
TCP Segment
HTTP Response
face:b00c::1 (lo)
IP Packet from IPVS
Original IP Packet
TCP Segment
HTTP Request
L4LB L7LB
TCP/SSL Term
Forward HTTP RequestIP Packet from IPVS
Original IP Packet
TCP Segment
HTTP Request
face:b00c::1 (lo)face:b00c::1
face:b00c::1


Edge PoP’s & Reducing Latency
International RTT
circa 11/2011
Seoul -> Oregon
TCP Connect: 150ms
HTTPS Seoul -> Oregon
GET
HTTP 1.1
ChangeCipherSpec
ChangeCipherSpec
ACK
ServerHello
SYN+ACK
SYN
ClientHello
TCP conn
established:
150 ms
SSL session
established:
450 ms
Response
Received
600 ms
75ms
Seoul -> Tokyo -> Oregon
TCP Connect: 30ms
SSL Session: ??
HTTP Response: ??
NRT
HTTPS Seoul->Tokyo->Oregon
GET
HTTP 1.1
Sessions
established:
90 ms
(vs 450 ms)
Response
Received:
240 ms
60ms
GET
HTTP 1.1 200
15ms
Request
Received
Seoul -> Oregon
NRT
TCP Connect: 150ms
SSL Session: 450ms
HTTP Response: 600ms
30ms
90ms
240ms
© 2015 Facebook | Menlo Park | Credit:
Edge POP Locations
*POP = points of presence.
© 2015 Facebook | Menlo Park | Credit:
How do the LB’s in PoP’s work?
"Flag of Sweden". Licensed under Public Domain via Wikipedia - http://en.wikipedia.org/wiki/File:Flag_of_Sweden.svg#/media/File:Flag_of_Sweden.svg
TCP Routing
(ip/port)
Facebook
L4LB


L7LB
TCP/SSL
HTTP


HHVM
face:b00c::1
face:b00c::1 (lo)


HHVM


L7LB
L4LB
face:b00c::1
face:b00c::1 (lo)
DNS LB: Cartographer
© 2015 Facebook | Menlo Park | Credit:
Edge POP Locations
*POP = points of presence.
DNS LB Decision
Considerations:
•Closest Edge** to user
•Capacity
•Health
•Geo data
???
Sonar: Measuring “Closeness”
NRT
HKG
SEA
LAX
ORD
Cartographer Architecture
Internet
ISP DNS
resolver
Facebook Infrastructure
DNS mapcartographer
offline processing
DNS Serverresolvers/latency
capacity
routing
health
Cartographer Architecture
Cartographer in action
Regional Load Shedding
Global Load Shedding
Monitoring
Monitoring (Not enough time)
Open Source
Open Source Components
• Proxygen Libs
https://github.com/facebook/proxygen
• HHVM
https://hhvm.com
• TinyDNS
https://cr.yp.to/djbdns/tinydns.html
• IPVS (IP Virtual Server)
http://www.linuxvirtualserver.org/software/ipvs.html
• ExaBGP
https://github.com/Exa-Networks/exabgp
• Python
https://python.org
• Zookeeper
https://zookeeper.apache.org
Photo Credits
http://www.flickr.com/photos/27587002@N07/5170590074
http://www.flickr.com/photos/yaketyyakyak/7001664846
http://www.flickr.com/photos/hinnosaar/3778903507
http://www.flickr.com/photos/eamoncurry/8698726494
http://www.flickr.com/photos/43158397@N02/4514113429
http://www.flickr.com/photos/nobusue/6876280595
http://www.flickr.com/photos/29487672@N07/14760573314
http://www.flickr.com/photos/joyosity/3595242078
http://www.flickr.com/photos/kyntharyn74/3262089319
http://www.flickr.com/photos/rexipe/826987087
http://www.flickr.com/photos/lablasco/6815671096
https://thenounproject.com/term/iphone-profile/54906/
https://thenounproject.com/term/browser/59091/
Buildinga billionuserloadbalancer may2015-sre-con15europe-shuff
Buildinga billionuserloadbalancer may2015-sre-con15europe-shuff

Mais conteúdo relacionado

Mais procurados

Stacking up with OpenStack: Building for High Availability
Stacking up with OpenStack: Building for High AvailabilityStacking up with OpenStack: Building for High Availability
Stacking up with OpenStack: Building for High Availability
OpenStack Foundation
 

Mais procurados (20)

Automatic Operation Bot for Ceph - You Ji
Automatic Operation Bot for Ceph - You JiAutomatic Operation Bot for Ceph - You Ji
Automatic Operation Bot for Ceph - You Ji
 
LF_OVS_17_LXC Linux Containers over Open vSwitch
LF_OVS_17_LXC Linux Containers over Open vSwitchLF_OVS_17_LXC Linux Containers over Open vSwitch
LF_OVS_17_LXC Linux Containers over Open vSwitch
 
How Networking works with Data Science
How Networking works with Data Science How Networking works with Data Science
How Networking works with Data Science
 
Control Your Network ASICs, What Benefits switchdev Can Bring Us
Control Your Network ASICs, What Benefits switchdev Can Bring UsControl Your Network ASICs, What Benefits switchdev Can Bring Us
Control Your Network ASICs, What Benefits switchdev Can Bring Us
 
(WEB401) Optimizing Your Web Server on AWS | AWS re:Invent 2014
(WEB401) Optimizing Your Web Server on AWS | AWS re:Invent 2014(WEB401) Optimizing Your Web Server on AWS | AWS re:Invent 2014
(WEB401) Optimizing Your Web Server on AWS | AWS re:Invent 2014
 
Salvatore Sanfilippo – How Redis Cluster works, and why - NoSQL matters Barce...
Salvatore Sanfilippo – How Redis Cluster works, and why - NoSQL matters Barce...Salvatore Sanfilippo – How Redis Cluster works, and why - NoSQL matters Barce...
Salvatore Sanfilippo – How Redis Cluster works, and why - NoSQL matters Barce...
 
Stacking up with OpenStack: Building for High Availability
Stacking up with OpenStack: Building for High AvailabilityStacking up with OpenStack: Building for High Availability
Stacking up with OpenStack: Building for High Availability
 
OpenStack and OpenFlow Demos
OpenStack and OpenFlow DemosOpenStack and OpenFlow Demos
OpenStack and OpenFlow Demos
 
Using SLOs for Continuous Performance Optimizations of Your k8s Workloads
Using SLOs for Continuous Performance Optimizations of Your k8s WorkloadsUsing SLOs for Continuous Performance Optimizations of Your k8s Workloads
Using SLOs for Continuous Performance Optimizations of Your k8s Workloads
 
OVS v OVS-DPDK
OVS v OVS-DPDKOVS v OVS-DPDK
OVS v OVS-DPDK
 
Open vSwitch Introduction
Open vSwitch IntroductionOpen vSwitch Introduction
Open vSwitch Introduction
 
Peter Zaitsev "18 ways to fix MySQL bottlenecks"
Peter Zaitsev "18 ways to fix MySQL bottlenecks"Peter Zaitsev "18 ways to fix MySQL bottlenecks"
Peter Zaitsev "18 ways to fix MySQL bottlenecks"
 
"High-load is at the intersection of DevOps and PHP development",
"High-load is at the intersection of DevOps and PHP development", "High-load is at the intersection of DevOps and PHP development",
"High-load is at the intersection of DevOps and PHP development",
 
Accelerating Envoy and Istio with Cilium and the Linux Kernel
Accelerating Envoy and Istio with Cilium and the Linux KernelAccelerating Envoy and Istio with Cilium and the Linux Kernel
Accelerating Envoy and Istio with Cilium and the Linux Kernel
 
LF_OVS_17_State of the OVN
LF_OVS_17_State of the OVNLF_OVS_17_State of the OVN
LF_OVS_17_State of the OVN
 
Open stack HA - Theory to Reality
Open stack HA -  Theory to RealityOpen stack HA -  Theory to Reality
Open stack HA - Theory to Reality
 
RGW Beyond Cloud: Live Video Storage with Ceph - Shengjing Zhu, Yiming Xie
RGW Beyond Cloud: Live Video Storage with Ceph - Shengjing Zhu, Yiming XieRGW Beyond Cloud: Live Video Storage with Ceph - Shengjing Zhu, Yiming Xie
RGW Beyond Cloud: Live Video Storage with Ceph - Shengjing Zhu, Yiming Xie
 
Zero mq logs
Zero mq logsZero mq logs
Zero mq logs
 
Usenix lisa 2011
Usenix lisa 2011Usenix lisa 2011
Usenix lisa 2011
 
Introducing Exactly Once Semantics To Apache Kafka
Introducing Exactly Once Semantics To Apache KafkaIntroducing Exactly Once Semantics To Apache Kafka
Introducing Exactly Once Semantics To Apache Kafka
 

Destaque

Destaque (6)

Build High-Performance, Scalable, Distributed Applications with Stacks of Co...
 Build High-Performance, Scalable, Distributed Applications with Stacks of Co... Build High-Performance, Scalable, Distributed Applications with Stacks of Co...
Build High-Performance, Scalable, Distributed Applications with Stacks of Co...
 
Keeping your rack cool
Keeping your rack cool Keeping your rack cool
Keeping your rack cool
 
Антон Киршанов — Особенности архитектуры Single Page Application
Антон Киршанов — Особенности архитектуры Single Page Application Антон Киршанов — Особенности архитектуры Single Page Application
Антон Киршанов — Особенности архитектуры Single Page Application
 
Kernel load-balancing for Docker containers using IPVS
Kernel load-balancing for Docker containers using IPVSKernel load-balancing for Docker containers using IPVS
Kernel load-balancing for Docker containers using IPVS
 
Docker Networking Deep Dive
Docker Networking Deep DiveDocker Networking Deep Dive
Docker Networking Deep Dive
 
Searching higher up the funnel
Searching higher up the funnelSearching higher up the funnel
Searching higher up the funnel
 

Semelhante a Buildinga billionuserloadbalancer may2015-sre-con15europe-shuff

Semelhante a Buildinga billionuserloadbalancer may2015-sre-con15europe-shuff (20)

Dataflow with Apache NiFi - Apache NiFi Meetup - 2016 Hadoop Summit - San Jose
Dataflow with Apache NiFi - Apache NiFi Meetup - 2016 Hadoop Summit - San JoseDataflow with Apache NiFi - Apache NiFi Meetup - 2016 Hadoop Summit - San Jose
Dataflow with Apache NiFi - Apache NiFi Meetup - 2016 Hadoop Summit - San Jose
 
Cfgmgmtcamp 2023 — eBPF Superpowers
Cfgmgmtcamp 2023 — eBPF SuperpowersCfgmgmtcamp 2023 — eBPF Superpowers
Cfgmgmtcamp 2023 — eBPF Superpowers
 
Apache NiFi Crash Course Intro
Apache NiFi Crash Course IntroApache NiFi Crash Course Intro
Apache NiFi Crash Course Intro
 
Apache NiFi Crash Course - San Jose Hadoop Summit
Apache NiFi Crash Course - San Jose Hadoop SummitApache NiFi Crash Course - San Jose Hadoop Summit
Apache NiFi Crash Course - San Jose Hadoop Summit
 
Cilium:: Application-Aware Microservices via BPF
Cilium:: Application-Aware Microservices via BPFCilium:: Application-Aware Microservices via BPF
Cilium:: Application-Aware Microservices via BPF
 
Linked Data (in low-resource) Platforms: a mapping for Constrained Applicatio...
Linked Data (in low-resource) Platforms: a mapping for Constrained Applicatio...Linked Data (in low-resource) Platforms: a mapping for Constrained Applicatio...
Linked Data (in low-resource) Platforms: a mapping for Constrained Applicatio...
 
Apache dubbo (incubating) open source present and future
Apache dubbo (incubating) open source present and futureApache dubbo (incubating) open source present and future
Apache dubbo (incubating) open source present and future
 
WebRTC: A front-end perspective
WebRTC: A front-end perspectiveWebRTC: A front-end perspective
WebRTC: A front-end perspective
 
Shift Dev Conf API
Shift Dev Conf APIShift Dev Conf API
Shift Dev Conf API
 
Origins of Serverless
Origins of ServerlessOrigins of Serverless
Origins of Serverless
 
Designing API: REST | gRPC | GraphQL, which one should you pick? - Cedrick Lu...
Designing API: REST | gRPC | GraphQL, which one should you pick? - Cedrick Lu...Designing API: REST | gRPC | GraphQL, which one should you pick? - Cedrick Lu...
Designing API: REST | gRPC | GraphQL, which one should you pick? - Cedrick Lu...
 
ACIT Mumbai - Open Systems Interconnect
ACIT Mumbai - Open Systems InterconnectACIT Mumbai - Open Systems Interconnect
ACIT Mumbai - Open Systems Interconnect
 
ACIT Mumbai - OSI Model
ACIT Mumbai - OSI ModelACIT Mumbai - OSI Model
ACIT Mumbai - OSI Model
 
Event-Driven Messaging and Actions using Apache Flink and Apache NiFi
Event-Driven Messaging and Actions using Apache Flink and Apache NiFiEvent-Driven Messaging and Actions using Apache Flink and Apache NiFi
Event-Driven Messaging and Actions using Apache Flink and Apache NiFi
 
Dan York - Presentation at Emerging Communications Conference & Awards (eComm...
Dan York - Presentation at Emerging Communications Conference & Awards (eComm...Dan York - Presentation at Emerging Communications Conference & Awards (eComm...
Dan York - Presentation at Emerging Communications Conference & Awards (eComm...
 
The API (R) Evolution
The API (R) EvolutionThe API (R) Evolution
The API (R) Evolution
 
Importance of APIs in the Internet of Things
Importance of APIs in the Internet of ThingsImportance of APIs in the Internet of Things
Importance of APIs in the Internet of Things
 
[RakutenTechConf2014] [D-4] The next step of LeoFS and Introducing NewDB Project
[RakutenTechConf2014] [D-4] The next step of LeoFS and Introducing NewDB Project[RakutenTechConf2014] [D-4] The next step of LeoFS and Introducing NewDB Project
[RakutenTechConf2014] [D-4] The next step of LeoFS and Introducing NewDB Project
 
Data Structures in and on IPFS
Data Structures in and on IPFSData Structures in and on IPFS
Data Structures in and on IPFS
 
From Generator to Fiber the Road to Coroutine in PHP
From Generator to Fiber the Road to Coroutine in PHPFrom Generator to Fiber the Road to Coroutine in PHP
From Generator to Fiber the Road to Coroutine in PHP
 

Último

Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Victor Rentea
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 

Último (20)

Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 

Buildinga billionuserloadbalancer may2015-sre-con15europe-shuff