SlideShare a Scribd company logo
FTS MW Reliability & Performance
06-23-2009
2
Reliability & Performance
FTS MW
Data Control Connection
NIO
Bandwidth control
Deploy
Cluster
Performance
Object pool
Thread pool
Split buffers
Asynchronous
Data filter
Data match
3
Based on the Jetty Cometd solution
• NIO Connectors
The connections received by the NIO connectors are always run in non-blocking IO
mode and blocking semantics is applied only to the input streams and output
streams that wrap the connection when passed to a HTTP request. Where possible
and appropriate, advanced NIO features such as gather writes, direct buffers
and memory mapped file buffers will be used.
• Continuations
To deal with the need for HTTP request to have an efficient waiting mechanism, Jetty 6
introduced a Continuation Mechanism, which allows the current threads handler to be
suspended and resumed at a later time in response to a timeout or an asynchronous
event.
• Split Buffers
Jetty 6 uses a split buffer architecture and dynamic buffer allocation. An idle
connection will have no buffers allocated to it, but once a request received only an
small request header buffer is allocated
4
The Jetty Cometd Test Report
The following table indicates the Jetty cometd just spend 875 threads and 57M memory on 10000 users
Formula Web 1.0 Web 2.0 + Comet Jetty Cometd
Users u 10000 10000 10000
Requests/Burst b 5 2 2
Burst period (s) p 20 5 5
Request Duration (s) d 0.200 0.150 0.175
Poll Duration (s) D 0 10 10
Request rate (req/s) rr=u*b/20 2500 4000 4000
Poll rate (req/s) pr=u/d 0 1000 1000
Total (req/s) r=rr+pr 2500 5000 5000
Concurrent requests c=rr*d+pr*D 500 10600 10700
Min Threads
T=c
T=r*d
500
-
10600
-
-
875
Stack memory S=64*1024*T 32MB 694MB 57MB
5
Data Control
Data Source
Gather
Original data
Gather the huge data from different data
sources.
Data Image
The larger dataset will be organized into
several data images by applying different
Data filter model, such as merge,
distinct. The data image will reduce the
data size because of data filter.
Filter
Match
Bandwidth
Client Data
Each client has respective data collection
according to respective match action/
criteria.
6
Data Control Example
All stock exchange prices data, thousands upon thousands records
Ten best share Ten worst
share
merge image
give me five best give me stock
001,002,003 price
just stock 001 price
Pass
Original
Image
User
Real Transfer
Pass
Sorry, your bandwidth
can’t transfer so much
data, discard some
oldest data
6
Data Control Example
All stock exchange prices data, thousands upon thousands records
Ten best share Ten worst
share
merge image
give me five best give me stock
001,002,003 price
just stock 001 price
Pass
Original
Image
User
Real Transfer
Pass
Sorry, your bandwidth
can’t transfer so much
data, discard some
oldest data

More Related Content

PPT
Mining top k frequent closed itemsets
PDF
Windows Azure Tables e NoSQL
PPTX
ДЕНИС КЛЕПIКОВ «Long Term storage for Prometheus» Lviv DevOps Conference 2019
PDF
Geo Package and OWS Context at FOSS4G PDX
PPTX
Session 09 learning relationships.pptx
PDF
15 chapter9 graph_algorithms_mst
PDF
test
PDF
Monitoring your shiny new docker environment
Mining top k frequent closed itemsets
Windows Azure Tables e NoSQL
ДЕНИС КЛЕПIКОВ «Long Term storage for Prometheus» Lviv DevOps Conference 2019
Geo Package and OWS Context at FOSS4G PDX
Session 09 learning relationships.pptx
15 chapter9 graph_algorithms_mst
test
Monitoring your shiny new docker environment

What's hot (13)

PDF
Demonstration
PPTX
Lightning Talk: MongoDB Migration Strategies
PPTX
MongoDB-Migration-Strategies
PPTX
Apache Cassandra Lunch #67: Moving Data from Cassandra to Datastax Astra
ODP
LOFAR - finding transients in the radio spectrum
PDF
Toy Model Overview
PDF
Write text file in c#
PPTX
The missing data issue for HiSeq runs
PPTX
SSD Aware Scan Operation Optimization in PostGreSQL Database
PDF
Urllc 20190705
PPTX
Understanding Wisconsin\'s E-discovery Rules
PDF
Datafying Bitcoins
ODP
A Scalable Architecture For Distributed Retrieval System In High Concurrency ...
Demonstration
Lightning Talk: MongoDB Migration Strategies
MongoDB-Migration-Strategies
Apache Cassandra Lunch #67: Moving Data from Cassandra to Datastax Astra
LOFAR - finding transients in the radio spectrum
Toy Model Overview
Write text file in c#
The missing data issue for HiSeq runs
SSD Aware Scan Operation Optimization in PostGreSQL Database
Urllc 20190705
Understanding Wisconsin\'s E-discovery Rules
Datafying Bitcoins
A Scalable Architecture For Distributed Retrieval System In High Concurrency ...
Ad

Similar to FTS middleware doc. (20)

PPTX
Collaborate nfs kyle_final
PPT
Wireline Technologies Dave Russell
PDF
Anton Moldovan "Building an efficient replication system for thousands of ter...
PPTX
Seastar at Linux Foundation Collaboration Summit
PDF
F5G development
PDF
NetApp Multi-Protocol Storage Evaluation
PDF
optimizing_ceph_flash
PDF
Going Live! with Comet
PPT
A Platform for Large-Scale Grid Data Service on Dynamic High-Performance Netw...
PDF
PDF
PLNOG 5: Maciej Stawiarski - How to Build a Network for the Next 25 Years
PDF
Comet from JavaOne 2008
PPTX
Managing and monitoring large scale data transfers - Networkshop44
PPT
Application-engaged Dynamic Orchestration of Optical Network Resources
PPTX
Comet: an Overview and a New Solution Called Jabbify
PDF
IP.Surveillance.System.Day2b.pdf
PPT
A Platform for Data Intensive Services Enabled by Next Generation Dynamic Opt...
PDF
Real-Time Django
PDF
Presentation southernstork 2009-nov-southernworkshop
Collaborate nfs kyle_final
Wireline Technologies Dave Russell
Anton Moldovan "Building an efficient replication system for thousands of ter...
Seastar at Linux Foundation Collaboration Summit
F5G development
NetApp Multi-Protocol Storage Evaluation
optimizing_ceph_flash
Going Live! with Comet
A Platform for Large-Scale Grid Data Service on Dynamic High-Performance Netw...
PLNOG 5: Maciej Stawiarski - How to Build a Network for the Next 25 Years
Comet from JavaOne 2008
Managing and monitoring large scale data transfers - Networkshop44
Application-engaged Dynamic Orchestration of Optical Network Resources
Comet: an Overview and a New Solution Called Jabbify
IP.Surveillance.System.Day2b.pdf
A Platform for Data Intensive Services Enabled by Next Generation Dynamic Opt...
Real-Time Django
Presentation southernstork 2009-nov-southernworkshop
Ad

FTS middleware doc.

  • 1. FTS MW Reliability & Performance 06-23-2009
  • 2. 2 Reliability & Performance FTS MW Data Control Connection NIO Bandwidth control Deploy Cluster Performance Object pool Thread pool Split buffers Asynchronous Data filter Data match
  • 3. 3 Based on the Jetty Cometd solution • NIO Connectors The connections received by the NIO connectors are always run in non-blocking IO mode and blocking semantics is applied only to the input streams and output streams that wrap the connection when passed to a HTTP request. Where possible and appropriate, advanced NIO features such as gather writes, direct buffers and memory mapped file buffers will be used. • Continuations To deal with the need for HTTP request to have an efficient waiting mechanism, Jetty 6 introduced a Continuation Mechanism, which allows the current threads handler to be suspended and resumed at a later time in response to a timeout or an asynchronous event. • Split Buffers Jetty 6 uses a split buffer architecture and dynamic buffer allocation. An idle connection will have no buffers allocated to it, but once a request received only an small request header buffer is allocated
  • 4. 4 The Jetty Cometd Test Report The following table indicates the Jetty cometd just spend 875 threads and 57M memory on 10000 users Formula Web 1.0 Web 2.0 + Comet Jetty Cometd Users u 10000 10000 10000 Requests/Burst b 5 2 2 Burst period (s) p 20 5 5 Request Duration (s) d 0.200 0.150 0.175 Poll Duration (s) D 0 10 10 Request rate (req/s) rr=u*b/20 2500 4000 4000 Poll rate (req/s) pr=u/d 0 1000 1000 Total (req/s) r=rr+pr 2500 5000 5000 Concurrent requests c=rr*d+pr*D 500 10600 10700 Min Threads T=c T=r*d 500 - 10600 - - 875 Stack memory S=64*1024*T 32MB 694MB 57MB
  • 5. 5 Data Control Data Source Gather Original data Gather the huge data from different data sources. Data Image The larger dataset will be organized into several data images by applying different Data filter model, such as merge, distinct. The data image will reduce the data size because of data filter. Filter Match Bandwidth Client Data Each client has respective data collection according to respective match action/ criteria.
  • 6. 6 Data Control Example All stock exchange prices data, thousands upon thousands records Ten best share Ten worst share merge image give me five best give me stock 001,002,003 price just stock 001 price Pass Original Image User Real Transfer Pass Sorry, your bandwidth can’t transfer so much data, discard some oldest data
  • 7. 6 Data Control Example All stock exchange prices data, thousands upon thousands records Ten best share Ten worst share merge image give me five best give me stock 001,002,003 price just stock 001 price Pass Original Image User Real Transfer Pass Sorry, your bandwidth can’t transfer so much data, discard some oldest data