(if you can t read this, move closer!) The high-performance protocol construction toolkit. Peter Royal
|
|
- Gordon Terry
- 5 years ago
- Views:
Transcription
1 (if you can t read this, move closer!) Apache The high-performance protocol construction toolkit. Peter Royal <proyal@apache.org> Originally presented at ApacheCon US 2007 in Atlanta, GA 1
2 Hi, I m Peter 2
3 MINA hacker since Fall
4 Radar Networks 4
5 San Francisco 5
6 Apache Member 6
7 What is MINA? 7
8 MINA? 8
9 Multipurpose Infrastructure Networked Applications 9
10 Built on Java NIO 10
11 Non-Blocking 11
12 Asynchronous 12
13 Event-Driven (SEDA!) 13
14 Multiple Transports (framework is really agnostic) 14
15 TCP 15
16 UDP (being re-written for 2.0) 16
17 In-VM (great for testing) 17
18 Apache Portable Runtime (APR) (under development, alternate TCP/UDP implementation) 18
19 (and more..) 19
20 Smartly Designed 20
21 Follows Inversion of Control Pattern (plays nicely with PicoContainer, Spring, etc) 21
22 Separation of Concerns 22
23 Wire Protocol Application Logic Rather than this... 23
24 Wire Protocol Application Logic Concerns are Separated 24
25 Stable and Production- Ready v1.0 released Fall 2006 v1.1 released April 2007 Same API as v1.0 but uses Java 5 Concurrency primitives v2.0 this year API simplification based on lessons learned Performance boosts too! 25
26 Many Protocols & Users (here are a few...) 26
27 Apache Directory LDAPv3, NTP, DNS, DHCP and Kerberos 27
28 SubEthaSTMP SMTP 28
29 Apache (incubating) Qpid Advanced Messaging Queuing Protocol (AMQP) (from Wall Street!) 29
30 Openfire products/openfire/ XMPP 30
31 red5 RTMP (talk to Flash player) 31
32 ...and more! (maybe you, next time!) 32
33 Key Concepts 33
34 ByteBuffer Core NIO construct MINA version that wraps and provides additional convenience methods auto-expanding, string encoding MINA gives control... allocate from the Heap or Stack optional Pooling (in v2, will be non-pooled and heap-only, as it provides the best performance) 34
35 Future Represents a function call that completes asynchronously Provides blocking functions to retrieve the result MINA allows callbacks to be invoked upon completion, so invoking thread can fire and forget (unlike the Java 5 Future) 35
36 Writes IoHandler IoProcessor IoService Reads 36
37 Writes IoHandler IoProcessor IoService Reads Two Versions 37
38 Writes IoHandler IoProcessor IoService Reads IoAcceptor act as server single thread for new connections 38
39 Writes IoHandler IoProcessor IoService Reads IoConnector act as client 39
40 Writes IoHandler IoProcessor IoService Reads Connection instance is an IoSession 40
41 Writes IoHandler IoProcessor IoService Reads Handles reads and writes 41
42 Writes IoHandler IoProcessor IoService Reads Instance count scales with CPU/Load 42
43 Writes IoHandler IoProcessor IoService Reads Session fixed to an Instance (under review for v2) 43
44 Writes IoHandler IoProcessor IoService Reads Chain of s 44
45 Writes IoHandler IoProcessor IoService Reads Per Connection 45
46 Writes IoHandler IoProcessor IoService Reads Reusable 46
47 Writes IoHandler IoProcessor IoService Reads Hot Deployable 47
48 Writes IoHandler IoProcessor IoService Reads Filter all events Read / Write / Idle / etc 48
49 Writes IoHandler IoProcessor IoService Reads Application Logic Lives Here 49
50 Large Library of s 50
51 Protocol Conversion Framework to plug in your own codecs to handle conversion to/from a ByteBuffer Existing codecs Text-based Java Serialization 51
52 Blacklist 52
53 Logging (great for debugging!) 53
54 SSL / TLS 54
55 Compression 55
56 Read Throttling (write throttling is in 2.0) 56
57 Thread Models (a necessary evil) 57
58 single threaded 58
59 One IoProcessor Thread 59
60 Scalability sucks 60
61 Add more IoProcessor Threads (at least one per CPU core) 61
62 Lowest latency Scales nicely (connection latency to be addressed in v2) 62
63 multi threaded 63
64 use ExecutorFilter 64
65 IoProcessor threads only do reads & writes (the intent) 65
66 Filters execute on a different thread. (filter location is key!) 66
67 Work for a session is serialized (queued per session) 67
68 Work is delegated to an Executor (generally a java.util.concurrent.threadpoolexecutor) 68
69 Size thread pool to active session count (too much in queue == OOM! Use the Read Throttle filter) 69
70 recommended application pattern use ExecutorFilter as first in chain unless you need really low latency use ProtocolCodecFilter convert the wire protocol into a Java representation put application logic into an IoHandler store state in the IoSession minimum of Java 5 java.util.concurrent rocks! 70
71 Example Time! 71
72 Everybody loves a Haiku 72
73 This is our Haiku validator 73
74 Simple Protocol Connect Send 3 lines of text Receive HAIKU! or NOT A HAIKU: (plus a little reason why not) 74
75 ProtocolCodecFilter + TextLineCodecFactory Bytes to Java String s. For free! 75
76 ToHaiku Three String s to a Haiku 76
77 Filter is very testable (mock objects rock!) 77
78 IoHandler is very simple Validate Haiku, send result 78
79 Also very testable 79
80 Very easy to hook it all up 80
81 Questions? (I m here all week!) 81
82 Thank You! 82
83 83
(if you can t read this, move closer!) The high-performance protocol construction toolkit. Peter Royal
(if you can t read this, move closer!) Apache The high-performance protocol construction toolkit. Peter Royal Originally presented at ApacheCon Europe 2007 in Amsterdam Hi, I m Peter
More informationIntroduction to MINA. Trustin Lee.
Introduction to MINA Trustin Lee trustin@apache.org http://people.apache.org/~trustin/ Agenda Overview In-depth View Implementation Demo Future Conclusion December 13, 2005 ApacheCon US 2005 2 Overview
More informationApache Multipurpose Infrastructure for Network Applications Building Scalable Network Applications
Apache Multipurpose Infrastructure for Network Applications Building Scalable Network Applications Dan Pritchett Rearden Commerce Dan Pritchett Apache Multipurpose Infrastructure for Network Applications
More informationAchieving Scalability and High Availability for clustered Web Services using Apache Synapse. Ruwan Linton WSO2 Inc.
Achieving Scalability and High Availability for clustered Web Services using Apache Synapse Ruwan Linton [ruwan@apache.org] WSO2 Inc. Contents Introduction Apache Synapse Web services clustering Scalability/Availability
More informationSEDA: An Architecture for Well-Conditioned, Scalable Internet Services
SEDA: An Architecture for Well-Conditioned, Scalable Internet Services Matt Welsh, David Culler, and Eric Brewer Computer Science Division University of California, Berkeley Operating Systems Principles
More informationIntroduction to Asynchronous I/O using the Grizzly Framework
Introduction to Asynchronous I/O using the Grizzly Framework Jeanfrancois Arcand Senior Staff Engineer Sun Microsystems Goal The Grizzly framework has been designed to help developers to take advantage
More informationMTAT Enterprise System Integration. Lecture 2: Middleware & Web Services
MTAT.03.229 Enterprise System Integration Lecture 2: Middleware & Web Services Luciano García-Bañuelos Slides by Prof. M. Dumas Overall view 2 Enterprise Java 2 Entity classes (Data layer) 3 Enterprise
More informationZiLOG Real-Time Kernel Version 1.2.0
ez80acclaim Family of Microcontrollers Version 1.2.0 PRELIMINARY Introduction The (RZK) is a realtime, preemptive, multitasking kernel designed for time-critical embedded applications. It is currently
More informationBuilding Large Scale Distributed Systems with AMQP. Ted Ross
Building Large Scale Distributed Systems with AMQP Ted Ross tross@apache.org Agenda What is AMQP? Why is AMQP important to large distributed enterprises? How is the Apache Community making AMQP a reality?
More informationMOVING FORWARD WITH FABRIC INTERFACES
14th ANNUAL WORKSHOP 2018 MOVING FORWARD WITH FABRIC INTERFACES Sean Hefty, OFIWG co-chair Intel Corporation April, 2018 USING THE PAST TO PREDICT THE FUTURE OFI Provider Infrastructure OFI API Exploration
More informationApple. Massive Scale Deployment / Connectivity. This is not a contribution
Netty @ Apple Massive Scale Deployment / Connectivity Norman Maurer Senior Software Engineer @ Apple Core Developer of Netty Formerly worked @ Red Hat as Netty Project Lead (internal Red Hat) Author of
More informationPython Twisted. Mahendra
Python Twisted Mahendra M @mahendra http://creativecommons.org/licenses/by-sa/3.0/ Methods of concurrency Workers Threads and processes Event driven Let us examine this with the case of a web server Worker
More informationOverview of Layered Architectures
Overview of ed Architectures Douglas C. Schmidt d.schmidt@vanderbilt.edu www.dre.vanderbilt.edu/~schmidt Professor of Computer Science Institute for Software Integrated Systems Vanderbilt University Nashville,
More informationEJB ENTERPRISE JAVA BEANS INTRODUCTION TO ENTERPRISE JAVA BEANS, JAVA'S SERVER SIDE COMPONENT TECHNOLOGY. EJB Enterprise Java
EJB Enterprise Java EJB Beans ENTERPRISE JAVA BEANS INTRODUCTION TO ENTERPRISE JAVA BEANS, JAVA'S SERVER SIDE COMPONENT TECHNOLOGY Peter R. Egli 1/23 Contents 1. What is a bean? 2. Why EJB? 3. Evolution
More informationInstant Integration into the AMQP Cloud with Apache Qpid Messenger. Rafael Schloming Principle Software Red Hat
Instant Integration into the AMQP Cloud with Apache Qpid Messenger Rafael Schloming Principle Software Engineer @ Red Hat rhs@apache.org Overview Introduction Messaging AMQP Proton Demo Summary Introduction
More informationCapriccio : Scalable Threads for Internet Services
Capriccio : Scalable Threads for Internet Services - Ron von Behren &et al - University of California, Berkeley. Presented By: Rajesh Subbiah Background Each incoming request is dispatched to a separate
More informationAdobe ColdFusion (2016 release)
Adobe (2016 release) Feature improvement history Features included in each edition of Adobe API Manager API monitoring API version and lifecycle management API access control API rate limiting and throttling
More informationNODE.JS MOCK TEST NODE.JS MOCK TEST I
http://www.tutorialspoint.com NODE.JS MOCK TEST Copyright tutorialspoint.com This section presents you various set of Mock Tests related to Node.js Framework. You can download these sample mock tests at
More informationProtocols SPL/ SPL
Protocols 1 Application Level Protocol Design atomic units used by protocol: "messages" encoding reusable, protocol independent, TCP server, LinePrinting protocol implementation 2 Protocol Definition set
More informationCOMP90015: Distributed Systems Assignment 1 Multi-threaded Dictionary Server (15 marks)
COMP90015: Distributed Systems Assignment 1 Multi-threaded Dictionary Server (15 marks) Problem Description Using a client-server architecture, design and implement a multi-threaded server that allows
More informationApplication Layer Introduction; HTTP; FTP
Application Layer Introduction; HTTP; FTP Tom Kelliher, CS 325 Feb. 4, 2011 1 Administrivia Announcements Assignment Read 2.4 2.6. From Last Time Packet-switched network characteristics; protocol layers
More informationFoundations of Python
Foundations of Python Network Programming The comprehensive guide to building network applications with Python Second Edition Brandon Rhodes John Goerzen Apress Contents Contents at a Glance About the
More informationCollaboration of Tasks
Operating systems (vimia219) Collaboration of Tasks Tamás Kovácsházy, PhD 13 rd Topic Inter Process Communication with Message Passing Budapest University of Technology and Economics Department of Measurement
More informationNubo on premise POC requirements for VMWare ESXi
for VMWare ESXi Version 1 Date October, 2015 page 1 Table of Contents 1. About this document 2. Nubo POC Architecture Diagram 3. Hardware Requirements 4. Software Requirements 5. Network & Settings Requirements
More informationPerformance and Scalability with Griddable.io
Performance and Scalability with Griddable.io Executive summary Griddable.io is an industry-leading timeline-consistent synchronized data integration grid across a range of source and target data systems.
More informationCAS 703 Software Design
Dr. Ridha Khedri Department of Computing and Software, McMaster University Canada L8S 4L7, Hamilton, Ontario Acknowledgments: Material based on Software by Tao et al. (Chapters 9 and 10) (SOA) 1 Interaction
More informationMiddleware. Adapted from Alonso, Casati, Kuno, Machiraju Web Services Springer 2004
Middleware Adapted from Alonso, Casati, Kuno, Machiraju Web Services Springer 2004 Outline Web Services Goals Where do they come from? Understanding middleware Middleware as infrastructure Communication
More informationChapter 4: Threads. Chapter 4: Threads. Overview Multicore Programming Multithreading Models Thread Libraries Implicit Threading Threading Issues
Chapter 4: Threads Silberschatz, Galvin and Gagne 2013 Chapter 4: Threads Overview Multicore Programming Multithreading Models Thread Libraries Implicit Threading Threading Issues 4.2 Silberschatz, Galvin
More informationTowards a Common Java LDAP API
Towards a Common Java LDAP API Emmanuel Lecharny Apache Software Foundation elecharny@apache.org Ludovic Poitou Sun Microsystems ludovic.poitou@sun.com Abstract. When it comes to access LDAP from the Java
More informationAdobe ColdFusion 11 Enterprise Edition
Adobe ColdFusion 11 Enterprise Edition Version Comparison Adobe ColdFusion 11 Enterprise Edition Adobe ColdFusion 11 Enterprise Edition is an all-in-one application server that offers you a single platform
More informationGrid Computing Fall 2005 Lecture 5: Grid Architecture and Globus. Gabrielle Allen
Grid Computing 7700 Fall 2005 Lecture 5: Grid Architecture and Globus Gabrielle Allen allen@bit.csc.lsu.edu http://www.cct.lsu.edu/~gallen Concrete Example I have a source file Main.F on machine A, an
More informationLightstreamer. The Streaming-Ajax Revolution. Product Insight
Lightstreamer The Streaming-Ajax Revolution Product Insight 1 Agenda Paradigms for the Real-Time Web (four models explained) Requirements for a Good Comet Solution Introduction to Lightstreamer Lightstreamer
More informationGrand Central Dispatch
A better way to do multicore. (GCD) is a revolutionary approach to multicore computing. Woven throughout the fabric of Mac OS X version 10.6 Snow Leopard, GCD combines an easy-to-use programming model
More informationRocking with Racket. Marc Burns Beatlight Inc
Rocking with Racket Marc Burns Beatlight Inc What am I doing here? My first encounter with Racket was in 2010 I wanted to use Racket in industry The opportunity arose in June 2014: Loft What am I doing
More informationServlet Performance and Apache JServ
Servlet Performance and Apache JServ ApacheCon 1998 By Stefano Mazzocchi and Pierpaolo Fumagalli Index 1 Performance Definition... 2 1.1 Absolute performance...2 1.2 Perceived performance...2 2 Dynamic
More informationAMon A Monitoring System for ActiveMQ
A Monitoring System for ActiveMQ Joe Fernandez joe.fernandez@ttmsolutions.com Total Transaction Management, LLC 570 Rancheros Drive, Suite 140 San Marcos, CA 92069 760-591-0273 www.ttmsolutions.com 1 Designed
More informationPatterns for Asynchronous Invocations in Distributed Object Frameworks
Patterns for Asynchronous Invocations in Distributed Object Frameworks Patterns for Asynchronous Invocations in Distributed Object Frameworks Markus Voelter Michael Kircher Siemens AG, Corporate Technology,
More informationZilog Real-Time Kernel
An Company Configurable Compilation RZK allows you to specify system parameters at compile time. For example, the number of objects, such as threads and semaphores required, are specez80acclaim! Family
More informationCHAPTER - 4 REMOTE COMMUNICATION
CHAPTER - 4 REMOTE COMMUNICATION Topics Introduction to Remote Communication Remote Procedural Call Basics RPC Implementation RPC Communication Other RPC Issues Case Study: Sun RPC Remote invocation Basics
More informationSecuring VMware NSX-T J U N E 2018
Securing VMware NSX-T J U N E 2018 Securing VMware NSX Table of Contents Executive Summary...2 NSX-T Traffic [Control, Management, and Data]...3 NSX Manager:...7 NSX Controllers:...9 NSX Edge:...10 NSX-T
More informationLet s Encrypt Apache Tomcat * * Full disclosure: Tomcat will not actually be encrypted.
Let s Encrypt Apache Tomcat * * Full disclosure: Tomcat will not actually be encrypted. Christopher Schultz Chief Technology Officer Total Child Health, Inc. * Slides available on the Linux Foundation
More informationSeptember 15th, Finagle + Java. A love story (
September 15th, 2016 Finagle + Java A love story ( ) @mnnakamura hi, I m Moses Nakamura Twitter lives on the JVM When Twitter realized we couldn t stay on a Rails monolith and continue to scale at the
More informationAsynchronous SIP Routing
Asynchronous SIP Routing SIP Express Router (SER) and Kamailio (OpenSER) SIP-Router.org Daniel-Constantin Mierla Co-Founder Kamailio asipto.com www.kamailio.org 2 History 2002 Jun 2005 Jul 2008 Aug 2008
More informationPort Utilization in SocialMiner
Utilization in Utilization Table Columns, page 1 Utilization, page 2 Utilization Table Columns The columns in the port utilization tables in this document describe the following: A value representing the
More informationCS533 Concepts of Operating Systems. Jonathan Walpole
CS533 Concepts of Operating Systems Jonathan Walpole SEDA: An Architecture for Well- Conditioned Scalable Internet Services Overview What does well-conditioned mean? Internet service architectures - thread
More informationPart I: Communication and Networking
Review what we learned Part I: Communication and Networking Communication and Networking: Week 5-6, Lectures 2-7 Lecture 1 OSI vs TCP/IP model OSI model Protocols TCP/IP model Application FTP SMTP HTTP
More informationUser-level threads. with threads. Paul Turner
User-level threads with threads. Paul Turner Threading Models 1:1 (Kernel Threading) User contexts correspond directly with their own kernel schedulable entity. Everything does this (e.g.
More informationPerformance Best Practices Paper for IBM Tivoli Directory Integrator v6.1 and v6.1.1
Performance Best Practices Paper for IBM Tivoli Directory Integrator v6.1 and v6.1.1 version 1.0 July, 2007 Table of Contents 1. Introduction...3 2. Best practices...3 2.1 Preparing the solution environment...3
More informationCLUSTERING HIVEMQ. Building highly available, horizontally scalable MQTT Broker Clusters
CLUSTERING HIVEMQ Building highly available, horizontally scalable MQTT Broker Clusters 12/2016 About this document MQTT is based on a publish/subscribe architecture that decouples MQTT clients and uses
More informationSpoilt for Choice Which Integration Framework to choose? Mule ESB. Integration. Kai Wähner
Spoilt for Choice Which Integration Framework to choose? Integration vs. Mule ESB vs. Main Tasks Evaluation of Technologies and Products Requirements Engineering Enterprise Architecture Management Business
More informationPurplefinder Enterprise Platform Messagng with ActiveMQ. Peter Potts 13 th October 2010
Purplefinder Enterprise Platform Messagng with ActiveMQ Peter Potts 13 th October 2010 Resources Manning Book: ActiveMQ in Action Apache Documentation & download: http://activemq.apache.org/ 8 example
More informationScaling Up Performance Benchmarking
Scaling Up Performance Benchmarking -with SPECjbb2015 Anil Kumar Runtime Performance Architect @Intel, OSG Java Chair Monica Beckwith Runtime Performance Architect @Arm, Java Champion FaaS Serverless Frameworks
More informationDeveloping Enterprise Cloud Solutions with Azure
Developing Enterprise Cloud Solutions with Azure Java Focused 5 Day Course AUDIENCE FORMAT Developers and Software Architects Instructor-led with hands-on labs LEVEL 300 COURSE DESCRIPTION This course
More informationHolberton takes on full-stack software engineering with a project based approach, we have a mission to cultivate community and encourage innovation.
Syllabus - Year 1 Holberton takes on full-stack software engineering with a project based approach, we have a mission to cultivate community and encourage innovation. Our syllabus walks through the major
More informationMRCP. Client Integration Manual. Developer Guide. Powered by Universal Speech Solutions LLC
Powered by Universal Speech Solutions LLC MRCP Client Integration Manual Developer Guide Revision: 37 Last updated: May 20, 2017 Created by: Arsen Chaloyan Universal Speech Solutions LLC Overview 1 Table
More informationIntroduction to Distributed Systems. Fabienne Boyer, LIG,
Introduction to Distributed Systems Fabienne Boyer, LIG, fabienne.boyer@imag.fr What is a distributed system? Set of software components Running in separate address spaces Communicating through a network
More informationJava-based test system development with open source components
Java-based test system development with open source components Presented by Zhang LinLin Go4IT China Coordinator Telecommunication Metrology Center of CATR of MIIT Authors Telecommunication Metrology Center
More informationErlang and Thrift for Web Development
Erlang and Thrift for Web Development Todd Lipcon (@tlipcon) Cloudera June 25, 2009 Introduction Erlang vs PHP Thrift A Case Study About Me Who s this dude who looks like he s 14? Built web sites in Perl,
More informationCT506 LANforge-FIRE VoIP Call Generator
1 of 9 Network Testing and Emulation Solutions http://www.candelatech.com sales@candelatech.com +1 360 380 1618 [PST, GMT -8] CT506 LANforge-FIRE VoIP Call Generator The CT506 supports SIP VOIP call support,
More informationFlexiNet. A flexible component oriented middleware system. Introduction. Architecting for Components. Richard Hayton, Andrew Herbert. APM Ltd.
FlexiNet flexible component oriented middleware system Richard Hayton, ndrew Herbert. P Ltd. Introduction Generally, research middleware platforms have provided application programmers with facilities
More informationData Model Considerations for Radar Systems
WHITEPAPER Data Model Considerations for Radar Systems Executive Summary The market demands that today s radar systems be designed to keep up with a rapidly changing threat environment, adapt to new technologies,
More informationSession W-06. Brian Lauge Pedersen Technical Solutions Professional - Datacenter
Session W-06 Brian Lauge Pedersen Technical Solutions Professional - Datacenter blauge@microsoft.com Introducing & Benefits of Remote Desktop Services Remote Desktop Architecture What's New for Windows
More informationOpenOnload. Dave Parry VP of Engineering Steve Pope CTO Dave Riddoch Chief Software Architect
OpenOnload Dave Parry VP of Engineering Steve Pope CTO Dave Riddoch Chief Software Architect Copyright 2012 Solarflare Communications, Inc. All Rights Reserved. OpenOnload Acceleration Software Accelerated
More informationAsynchronous and Synchronous Messaging with Web Services and XML Ronald Schmelzer Senior Analyst ZapThink, LLC
Asynchronous and Synchronous Messaging with Web Services and XML Ronald Schmelzer Senior Analyst ZapThink, LLC The Business Objective Automated Business Collaboration Facilitating exchange of information
More informationInstrument Software Framework (ISF) A Small Scale Component Framework for Space
Mars Science Laboratory Instrument Software Framework (ISF) A Small Scale Component Framework for Space Timothy Canham, Jet Propulsion Laboratory Garth Watney, Jet Propulsion Laboratory Leonard Reder,
More informationOutline. More on MINA features. ú Performance. ú Separating low- level IO handling from the protocol from the business logic.
Ehab Ababneh Outline The Problem: Thousands of Clients. Solution: Non- Blocking IO. The Reactor Pattern: Down to the roots of NBIO. NBIO is hard, just like multithreading. Frameworks are a bliss!... Apache
More informationScaling DreamFactory
Scaling DreamFactory This white paper is designed to provide information to enterprise customers about how to scale a DreamFactory Instance. The sections below talk about horizontal, vertical, and cloud
More informationGateway Design Challenges
What is GEP? Gateway Design Challenges Performance given system complexity Support multiple data types efficiently and securely Support multiple priorities Minimize latency and maximize throughput High
More informationSend me up to 5 good questions in your opinion, I ll use top ones Via direct message at slack. Can be a group effort. Try to add some explanation.
Notes Midterm reminder Second midterm next week (04/03), regular class time 20 points, more questions than midterm 1 non-comprehensive exam: no need to study modules before midterm 1 Online testing like
More informationPerformance Case Study
Performance Case Study @Fabian_Frank Yahoo! Search, Engineer Youthmedia.eu, Volunteer A Dynamic Website self-contained App self-contained App self-contained App node v0.4.x multi-core
More informationDolby Conference Phone. Configuration guide for Cisco Unified Communications Manager
Dolby Conference Phone Configuration guide for Cisco Unified Communications Manager Version 3.1 22 February 2017 Copyright 2017 Dolby Laboratories. All rights reserved. Dolby Laboratories, Inc. 1275 Market
More informationIntro to Couchbase Server for ColdFusion - Clustered NoSQL and Caching at its Finest
Tweet Intro to Couchbase Server for ColdFusion - Clustered NoSQL and Caching at its Finest Brad Wood Jul 26, 2013 Today we are starting a new blogging series on how to leverage Couchbase NoSQL from ColdFusion
More informationSE Memory Consumption
Page 1 of 5 view online Overview Calculating the utilization of memory within a Service Engine (SE) is useful to estimate the number of concurrent connections or the amount of memory that may be allocated
More informationDolby Conference Phone. Configuration Guide for Microsoft Skype for Business
Dolby Conference Phone Configuration Guide for Microsoft Skype for Business Version 3.3 31 July 2017 Copyright 2017 Dolby Laboratories. All rights reserved. Dolby Laboratories, Inc. 1275 Market Street
More informationChapter 5.6 Network and Multiplayer
Chapter 5.6 Network and Multiplayer Multiplayer Modes: Event Timing Turn-Based Easy to implement Any connection type Real-Time Difficult to implement Latency sensitive 2 Multiplayer Modes: Shared I/O Input
More informationReal World Messaging With Apache ActiveMQ. Bruce Snyder 7 Nov 2008 New Orleans, Louisiana
Real World Messaging With Apache ActiveMQ Bruce Snyder bsnyder@apache.org 7 Nov 2008 New Orleans, Louisiana Do You Use JMS? 2 Agenda Common questions ActiveMQ features 3 What is ActiveMQ? Message-oriented
More informationMOM MESSAGE ORIENTED MIDDLEWARE OVERVIEW OF MESSAGE ORIENTED MIDDLEWARE TECHNOLOGIES AND CONCEPTS. MOM Message Oriented Middleware
MOM MESSAGE ORIENTED MOM Message Oriented Middleware MIDDLEWARE OVERVIEW OF MESSAGE ORIENTED MIDDLEWARE TECHNOLOGIES AND CONCEPTS Peter R. Egli 1/25 Contents 1. Synchronous versus asynchronous interaction
More informationDVS-200 Configuration Guide
DVS-200 Configuration Guide Contents Web UI Overview... 2 Creating a live channel... 2 Inputs... 3 Outputs... 6 Access Control... 7 Recording... 7 Managing recordings... 9 General... 10 Transcoding and
More informationModule 6 Node.js and Socket.IO
Module 6 Node.js and Socket.IO Module 6 Contains 2 components Individual Assignment and Group Assignment Both are due on Wednesday November 15 th Read the WIKI before starting Portions of today s slides
More informationPiqi-RPC. Exposing Erlang services via JSON, XML and Google Protocol Buffers over HTTP. Friday, March 25, 2011
Piqi-RPC Exposing Erlang services via JSON, XML and Google Protocol Buffers over HTTP 1 Anton Lavrik http://piqi.org http://www.alertlogic.com 2 Overview Call Erlang functions using HTTP POST : Server
More informationSE Memory Consumption
Page 1 of 5 SE Memory Consumption view online Calculating the utilization of memory within a Service Engine is useful to estimate the number of concurrent connections or the amount of memory that may be
More informationDVS-200 Configuration Guide
DVS-200 Configuration Guide Contents Web UI Overview... 2 Creating a live channel... 2 Inputs... 3 Outputs... 7 Access Control... 8 Recording... 8 Managing recordings... 10 General... 11 Transcoding and
More informationChapter 1: Distributed Information Systems
Chapter 1: Distributed Information Systems Contents - Chapter 1 Design of an information system Layers and tiers Bottom up design Top down design Architecture of an information system One tier Two tier
More informationCreate High Performance, Massively Scalable Messaging Solutions with Apache ActiveBlaze
Create High Performance, Massively Scalable Messaging Solutions with Apache ActiveBlaze Rob Davies Director of Open Source Product Development, Progress: FuseSource - http://fusesource.com/ Rob Davies
More informationInter-Process Communication and Synchronization of Processes, Threads and Tasks: Lesson-1: PROCESS
Inter-Process Communication and Synchronization of Processes, Threads and Tasks: Lesson-1: PROCESS 1 Process Concepts 2 Process A process consists of executable program (codes), state of which is controlled
More informationSaaS Providers. ThousandEyes for. Summary
USE CASE ThousandEyes for SaaS Providers Summary With Software-as-a-Service (SaaS) applications rapidly replacing onpremise solutions, the onus of ensuring a great user experience for these applications
More informationUsing VMware vrealize Orchestrator Plug-Ins. vrealize Orchestrator 6.0
Using VMware vrealize Orchestrator Plug-Ins vrealize Orchestrator 6.0 You can find the most up-to-date technical documentation on the VMware website at: https://docs.vmware.com/ If you have comments about
More informationEbbRT: A Framework for Building Per-Application Library Operating Systems
EbbRT: A Framework for Building Per-Application Library Operating Systems Overview Motivation Objectives System design Implementation Evaluation Conclusion Motivation Emphasis on CPU performance and software
More informationReport. Middleware Proxy: A Request-Driven Messaging Broker For High Volume Data Distribution
CERN-ACC-2013-0237 Wojciech.Sliwinski@cern.ch Report Middleware Proxy: A Request-Driven Messaging Broker For High Volume Data Distribution W. Sliwinski, I. Yastrebov, A. Dworak CERN, Geneva, Switzerland
More informationMultithreading and Interactive Programs
Multithreading and Interactive Programs CS160: User Interfaces John Canny. Last time Model-View-Controller Break up a component into Model of the data supporting the App View determining the look of the
More informationApache Thrift Introduction & Tutorial
Apache Thrift Introduction & Tutorial Marlon Pierce, Suresh Marru Q & A TIOBE Index Programming Language polyglotism Modern distributed applications are rarely composed of modules written in a single language.
More informationELEC/TELE/PHTN Networked Communications Design Topic. Networked Communications Elective Topic, S Context and Objectives
ELEC/TELE/PHTN 4123 Networked Communications Elective Topic, S1 2017 created by Prof. D. Taubman updated 21 May 2018 Networked Communications Design Topic Context and Objectives The objective of this design
More informationOPERATING SYSTEM. Chapter 4: Threads
OPERATING SYSTEM Chapter 4: Threads Chapter 4: Threads Overview Multicore Programming Multithreading Models Thread Libraries Implicit Threading Threading Issues Operating System Examples Objectives To
More informationACCELERATED COMPLEX EVENT PROCESSING WITH GRAPHICS PROCESSING UNITS
ACCELERATED COMPLEX EVENT PROCESSING WITH GRAPHICS PROCESSING UNITS Prabodha Srimal Rodrigo Registration No. : 138230V Degree of Master of Science Department of Computer Science & Engineering University
More informationStability Patterns and Antipatterns
Stability Patterns and Antipatterns Michael Nygard mtnygard@thinkrelevance.com @mtnygard Michael Nygard, 2007-2012 1 Stability Antipatterns 2 Integration Points Integrations are the #1 risk to stability.
More informationHow we scaled push messaging for millions of Netflix devices. Susheel Aroskar Cloud Gateway
How we scaled push messaging for millions of Netflix devices Susheel Aroskar Cloud Gateway Why do we need push? How I spend my time in Netflix application... What is push? What is push? How you can build
More informationBlueJeans Room with Dolby Conference Phone. Advanced Configuration Guide
BlueJeans Room with Dolby Conference Phone Advanced Configuration Guide Version 3.3 14 September 2017 Copyright 2017 Dolby Laboratories. All rights reserved. Dolby Laboratories, Inc. 1275 Market Street
More informationDolby Conference Phone 3.1 configuration guide for West
Dolby Conference Phone 3.1 configuration guide for West 17 January 2017 Copyright 2017 Dolby Laboratories. All rights reserved. For information, contact: Dolby Laboratories, Inc. 1275 Market Street San
More informationGIS - Clustering Architectures. Raj Kumar Integration Management 9/25/2008
GIS - Clustering Architectures Raj Kumar Integration Management 9/25/2008 Agenda What is Clustering Reasons to Cluster Benefits Perimeter Server Clustering Components of GIS Clustering Perimeter Server
More informationChapter 6 Enterprise Java Beans
Chapter 6 Enterprise Java Beans Overview of the EJB Architecture and J2EE platform The new specification of Java EJB 2.1 was released by Sun Microsystems Inc. in 2002. The EJB technology is widely used
More information