Submit Search
Upload
Finagle By Twitter Engineer @ Knoldus
•
3 likes
•
2,488 views
Knoldus Inc.
Follow
Introduction to Finagle
Read less
Read more
Software
Report
Share
Report
Share
1 of 21
Download now
Download to read offline
Recommended
Comunicação Bluetooth Entre Python e PyS60
Comunicação Bluetooth Entre Python e PyS60
Felipe Ronchi Brigido
cocos2d 事例編 HungryMasterの実装から
cocos2d 事例編 HungryMasterの実装から
Yuichi Higuchi
Oopsprc1c
Oopsprc1c
Ankit Dubey
oop Lecture 4
oop Lecture 4
Anwar Ul Haq
Solidity
Solidity
gavofyork
Matlab Area Calculation program
Matlab Area Calculation program
Tevfik AKKUŞ
To string
To string
Jbali Fatma
Short intro to the Rust language
Short intro to the Rust language
Gines Espada
Recommended
Comunicação Bluetooth Entre Python e PyS60
Comunicação Bluetooth Entre Python e PyS60
Felipe Ronchi Brigido
cocos2d 事例編 HungryMasterの実装から
cocos2d 事例編 HungryMasterの実装から
Yuichi Higuchi
Oopsprc1c
Oopsprc1c
Ankit Dubey
oop Lecture 4
oop Lecture 4
Anwar Ul Haq
Solidity
Solidity
gavofyork
Matlab Area Calculation program
Matlab Area Calculation program
Tevfik AKKUŞ
To string
To string
Jbali Fatma
Short intro to the Rust language
Short intro to the Rust language
Gines Espada
Go a crash course
Go a crash course
Eleanor McHugh
Oopsprc1e
Oopsprc1e
Ankit Dubey
Python Tidbits
Python Tidbits
Mitchell Vitez
บทที่ 3 พื้นฐานภาษา Java
บทที่ 3 พื้นฐานภาษา Java
Itslvle Parin
Noise detection from the signal matlab code, Signal Diagnosis
Noise detection from the signal matlab code, Signal Diagnosis
Bharti Airtel Ltd.
Linked list int_data_fdata
Linked list int_data_fdata
Samsil Arefin
Encrypt all transports
Encrypt all transports
Eleanor McHugh
Vcs9
Vcs9
Malikireddy Bramhananda Reddy
Caropro
Caropro
daquicaro
Assignement c++
Assignement c++
Syed Umair
Implementing Software Machines in Go and C
Implementing Software Machines in Go and C
Eleanor McHugh
Doubly linklist
Doubly linklist
ilsamaryum
Card pack
Card pack
Bern Bilazon
Class array
Class array
nky92
Programa en C++ ( escriba 3 números y diga cual es el mayor))
Programa en C++ ( escriba 3 números y diga cual es el mayor))
Alex Penso Romero
Currying in Swift
Currying in Swift
Maxim Zaks
C++ TUTORIAL 6
C++ TUTORIAL 6
Farhan Ab Rahman
Simpson and lagranje dalambair math methods
Simpson and lagranje dalambair math methods
kinan keshkeh
Ooprc4 b
Ooprc4 b
Ankit Dubey
dplyr
dplyr
Romain Francois
Small pieces loosely joined
Small pieces loosely joined
ennui2342
Go ahead, make my day
Go ahead, make my day
Tor Ivry
More Related Content
What's hot
Go a crash course
Go a crash course
Eleanor McHugh
Oopsprc1e
Oopsprc1e
Ankit Dubey
Python Tidbits
Python Tidbits
Mitchell Vitez
บทที่ 3 พื้นฐานภาษา Java
บทที่ 3 พื้นฐานภาษา Java
Itslvle Parin
Noise detection from the signal matlab code, Signal Diagnosis
Noise detection from the signal matlab code, Signal Diagnosis
Bharti Airtel Ltd.
Linked list int_data_fdata
Linked list int_data_fdata
Samsil Arefin
Encrypt all transports
Encrypt all transports
Eleanor McHugh
Vcs9
Vcs9
Malikireddy Bramhananda Reddy
Caropro
Caropro
daquicaro
Assignement c++
Assignement c++
Syed Umair
Implementing Software Machines in Go and C
Implementing Software Machines in Go and C
Eleanor McHugh
Doubly linklist
Doubly linklist
ilsamaryum
Card pack
Card pack
Bern Bilazon
Class array
Class array
nky92
Programa en C++ ( escriba 3 números y diga cual es el mayor))
Programa en C++ ( escriba 3 números y diga cual es el mayor))
Alex Penso Romero
Currying in Swift
Currying in Swift
Maxim Zaks
C++ TUTORIAL 6
C++ TUTORIAL 6
Farhan Ab Rahman
Simpson and lagranje dalambair math methods
Simpson and lagranje dalambair math methods
kinan keshkeh
Ooprc4 b
Ooprc4 b
Ankit Dubey
dplyr
dplyr
Romain Francois
What's hot
(20)
Go a crash course
Go a crash course
Oopsprc1e
Oopsprc1e
Python Tidbits
Python Tidbits
บทที่ 3 พื้นฐานภาษา Java
บทที่ 3 พื้นฐานภาษา Java
Noise detection from the signal matlab code, Signal Diagnosis
Noise detection from the signal matlab code, Signal Diagnosis
Linked list int_data_fdata
Linked list int_data_fdata
Encrypt all transports
Encrypt all transports
Vcs9
Vcs9
Caropro
Caropro
Assignement c++
Assignement c++
Implementing Software Machines in Go and C
Implementing Software Machines in Go and C
Doubly linklist
Doubly linklist
Card pack
Card pack
Class array
Class array
Programa en C++ ( escriba 3 números y diga cual es el mayor))
Programa en C++ ( escriba 3 números y diga cual es el mayor))
Currying in Swift
Currying in Swift
C++ TUTORIAL 6
C++ TUTORIAL 6
Simpson and lagranje dalambair math methods
Simpson and lagranje dalambair math methods
Ooprc4 b
Ooprc4 b
dplyr
dplyr
Similar to Finagle By Twitter Engineer @ Knoldus
Small pieces loosely joined
Small pieces loosely joined
ennui2342
Go ahead, make my day
Go ahead, make my day
Tor Ivry
Next Generation Solutions with Neo4j
Next Generation Solutions with Neo4j
Neo4j
Kotlin Mullets
Kotlin Mullets
James Ward
Functional Systems @ Twitter
Functional Systems @ Twitter
C4Media
Arduino and the real time web
Arduino and the real time web
Andrew Fisher
Monads - Dublin Scala meetup
Monads - Dublin Scala meetup
Mikhail Girkin
Generics and Inference
Generics and Inference
Richard Fox
Introduction to Groovy
Introduction to Groovy
André Faria Gomes
Monolith to Reactive Microservices
Monolith to Reactive Microservices
Reactivesummit
Dynamic C++ ACCU 2013
Dynamic C++ ACCU 2013
aleks-f
Kotlin의 코루틴은 어떻게 동작하는가
Kotlin의 코루틴은 어떻게 동작하는가
Chang W. Doh
Big Data Analytics with Scala at SCALA.IO 2013
Big Data Analytics with Scala at SCALA.IO 2013
Samir Bessalah
Reactive programming every day
Reactive programming every day
Vadym Khondar
Kotlin Backend Development 6 Yrs Recap. The Good, the Bad and the Ugly
Kotlin Backend Development 6 Yrs Recap. The Good, the Bad and the Ugly
Haim Yadid
Intro to Python (High School) Unit #3
Intro to Python (High School) Unit #3
Jay Coskey
Java/Scala Lab: Анатолий Кметюк - Scala SubScript: Алгебра для реактивного пр...
Java/Scala Lab: Анатолий Кметюк - Scala SubScript: Алгебра для реактивного пр...
GeeksLab Odessa
Extending Flux to Support Other Databases and Data Stores | Adam Anthony | In...
Extending Flux to Support Other Databases and Data Stores | Adam Anthony | In...
InfluxData
Quest 1 define a class batsman with the following specifications
Quest 1 define a class batsman with the following specifications
rajkumari873
Scala-Gopher: CSP-style programming techniques with idiomatic Scala.
Scala-Gopher: CSP-style programming techniques with idiomatic Scala.
Ruslan Shevchenko
Similar to Finagle By Twitter Engineer @ Knoldus
(20)
Small pieces loosely joined
Small pieces loosely joined
Go ahead, make my day
Go ahead, make my day
Next Generation Solutions with Neo4j
Next Generation Solutions with Neo4j
Kotlin Mullets
Kotlin Mullets
Functional Systems @ Twitter
Functional Systems @ Twitter
Arduino and the real time web
Arduino and the real time web
Monads - Dublin Scala meetup
Monads - Dublin Scala meetup
Generics and Inference
Generics and Inference
Introduction to Groovy
Introduction to Groovy
Monolith to Reactive Microservices
Monolith to Reactive Microservices
Dynamic C++ ACCU 2013
Dynamic C++ ACCU 2013
Kotlin의 코루틴은 어떻게 동작하는가
Kotlin의 코루틴은 어떻게 동작하는가
Big Data Analytics with Scala at SCALA.IO 2013
Big Data Analytics with Scala at SCALA.IO 2013
Reactive programming every day
Reactive programming every day
Kotlin Backend Development 6 Yrs Recap. The Good, the Bad and the Ugly
Kotlin Backend Development 6 Yrs Recap. The Good, the Bad and the Ugly
Intro to Python (High School) Unit #3
Intro to Python (High School) Unit #3
Java/Scala Lab: Анатолий Кметюк - Scala SubScript: Алгебра для реактивного пр...
Java/Scala Lab: Анатолий Кметюк - Scala SubScript: Алгебра для реактивного пр...
Extending Flux to Support Other Databases and Data Stores | Adam Anthony | In...
Extending Flux to Support Other Databases and Data Stores | Adam Anthony | In...
Quest 1 define a class batsman with the following specifications
Quest 1 define a class batsman with the following specifications
Scala-Gopher: CSP-style programming techniques with idiomatic Scala.
Scala-Gopher: CSP-style programming techniques with idiomatic Scala.
More from Knoldus Inc.
Mastering Web Scraping with JSoup Unlocking the Secrets of HTML Parsing
Mastering Web Scraping with JSoup Unlocking the Secrets of HTML Parsing
Knoldus Inc.
Akka gRPC Essentials A Hands-On Introduction
Akka gRPC Essentials A Hands-On Introduction
Knoldus Inc.
Entity Core with Core Microservices.pptx
Entity Core with Core Microservices.pptx
Knoldus Inc.
Introduction to Redis and its features.pptx
Introduction to Redis and its features.pptx
Knoldus Inc.
GraphQL with .NET Core Microservices.pdf
GraphQL with .NET Core Microservices.pdf
Knoldus Inc.
NuGet Packages Presentation (DoT NeT).pptx
NuGet Packages Presentation (DoT NeT).pptx
Knoldus Inc.
Data Quality in Test Automation Navigating the Path to Reliable Testing
Data Quality in Test Automation Navigating the Path to Reliable Testing
Knoldus Inc.
K8sGPTThe AI way to diagnose Kubernetes
K8sGPTThe AI way to diagnose Kubernetes
Knoldus Inc.
Introduction to Circle Ci Presentation.pptx
Introduction to Circle Ci Presentation.pptx
Knoldus Inc.
Robusta -Tool Presentation (DevOps).pptx
Robusta -Tool Presentation (DevOps).pptx
Knoldus Inc.
Optimizing Kubernetes using GOLDILOCKS.pptx
Optimizing Kubernetes using GOLDILOCKS.pptx
Knoldus Inc.
Azure Function App Exception Handling.pptx
Azure Function App Exception Handling.pptx
Knoldus Inc.
CQRS Design Pattern Presentation (Java).pptx
CQRS Design Pattern Presentation (Java).pptx
Knoldus Inc.
ETL Observability: Azure to Snowflake Presentation
ETL Observability: Azure to Snowflake Presentation
Knoldus Inc.
Scripting with K6 - Beyond the Basics Presentation
Scripting with K6 - Beyond the Basics Presentation
Knoldus Inc.
Getting started with dotnet core Web APIs
Getting started with dotnet core Web APIs
Knoldus Inc.
Introduction To Rust part II Presentation
Introduction To Rust part II Presentation
Knoldus Inc.
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog Presentation
Knoldus Inc.
Configuring Workflows & Validators in JIRA
Configuring Workflows & Validators in JIRA
Knoldus Inc.
Advanced Python (with dependency injection and hydra configuration packages)
Advanced Python (with dependency injection and hydra configuration packages)
Knoldus Inc.
More from Knoldus Inc.
(20)
Mastering Web Scraping with JSoup Unlocking the Secrets of HTML Parsing
Mastering Web Scraping with JSoup Unlocking the Secrets of HTML Parsing
Akka gRPC Essentials A Hands-On Introduction
Akka gRPC Essentials A Hands-On Introduction
Entity Core with Core Microservices.pptx
Entity Core with Core Microservices.pptx
Introduction to Redis and its features.pptx
Introduction to Redis and its features.pptx
GraphQL with .NET Core Microservices.pdf
GraphQL with .NET Core Microservices.pdf
NuGet Packages Presentation (DoT NeT).pptx
NuGet Packages Presentation (DoT NeT).pptx
Data Quality in Test Automation Navigating the Path to Reliable Testing
Data Quality in Test Automation Navigating the Path to Reliable Testing
K8sGPTThe AI way to diagnose Kubernetes
K8sGPTThe AI way to diagnose Kubernetes
Introduction to Circle Ci Presentation.pptx
Introduction to Circle Ci Presentation.pptx
Robusta -Tool Presentation (DevOps).pptx
Robusta -Tool Presentation (DevOps).pptx
Optimizing Kubernetes using GOLDILOCKS.pptx
Optimizing Kubernetes using GOLDILOCKS.pptx
Azure Function App Exception Handling.pptx
Azure Function App Exception Handling.pptx
CQRS Design Pattern Presentation (Java).pptx
CQRS Design Pattern Presentation (Java).pptx
ETL Observability: Azure to Snowflake Presentation
ETL Observability: Azure to Snowflake Presentation
Scripting with K6 - Beyond the Basics Presentation
Scripting with K6 - Beyond the Basics Presentation
Getting started with dotnet core Web APIs
Getting started with dotnet core Web APIs
Introduction To Rust part II Presentation
Introduction To Rust part II Presentation
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog Presentation
Configuring Workflows & Validators in JIRA
Configuring Workflows & Validators in JIRA
Advanced Python (with dependency injection and hydra configuration packages)
Advanced Python (with dependency injection and hydra configuration packages)
Recently uploaded
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
harshavardhanraghave
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
anilsa9823
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptx
bodapatigopi8531
Software Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
Arshad QA
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with Precision
SolGuruz
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
ABDERRAOUF MEHENNI
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Call Girls In Delhi Whatsup 9873940964 Enjoy Unlimited Pleasure
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docx
ComplianceQuest1
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
panagenda
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Steffen Staab
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
MyIntelliSource, Inc.
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
shikhaohhpro
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
ICS
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
kalichargn70th171
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.com
Fatema Valibhai
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
mohitmore19
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
Jhone kinadey
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.js
Andolasoft Inc
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
MyIntelliSource, Inc.
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
9953056974 Low Rate Call Girls In Saket, Delhi NCR
Recently uploaded
(20)
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptx
Software Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with Precision
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docx
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.com
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.js
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
Finagle By Twitter Engineer @ Knoldus
1.
@ Introduction to
Finagle
2.
puneet@twitter.com Core Services
- Platform Engineering
3.
In the beginning
...
4.
5.
6.
7.
A brave new
world ... Typesafe Expressive Performant (thank you JVM) ...
8.
Futures
9.
Synchronous Futures def
piDigit ( n : Int ) : Int def piDigit ( n : Int ) : Future[Int] println ( piDigit ( 100 ) ) piDigit ( 100 ) onSuccess println
10.
Synchronous Futures
11.
Synchronous Futures def
piDigit ( n : Int ) : Int def piDigit ( n : Int ) : Future[Int] println ( piDigit ( 100 ) ) piDigit ( 100 ) onSuccess println println ( piDigit ( 100 ) * 10 ) ) piDigit ( 100 ) map { _ * 10 } onSuccess println println ( piDigit ( piDigit ( 100 ) ) ) piDigit ( 100 ) flatMap piDigit onSuccess println println ( ( 0 to 100 ) map piDigit ) Future.collect { ( 0 to 100 ) map piDigit } onSuccess println
12.
13.
the networking glue
... Address resolution TCP handshake Serialization => Deserialization
14.
: Request =>
Future [ Response ]
15.
trait UserService {
def getByUserId( userId : Long ) : Future [ User ] def getByScreenName( screenName: String ) : Future [ User ] } trait TweetService { def findByUserId( userId : Long ) : Future [ Seq[ Tweet ] ] }
16.
trait UserTweetService {
val userService : UserService val tweetService : TweetService def findUserAndTweets( userId : Long ) : Future [ ( User, Seq[Tweet] ) ] = Future.join ( userService.findByUserId( userId ), tweetService.findByUserId( userId ) ) } } 1 4 2 3 2 3
17.
trait ScreenNameTweetService {
val userService : UserService val tweetService : TweetService def findByScreenName( screenName: String ) : Future [ Seq[Tweet] ] = { userService.findByScreenName( screenName ) flatMap { user => tweetService.findByUserId( user.id ) } } } 1 6 2 3 4 5
18.
other benefits ...
19.
val someService =
Http.client(“inet!google.com:80”) val anotherService = Http.client( “zk!myzkhost.mycompany.com:2181!/my/zk/path” ) Address Resolution
20.
Source Load Balancing
vs
21.
Thanks! twitter.github.io/finagle @finagle
@pzdk
Download now