Web-Services in C++ Building fast, memory-efficient and maintainable web-services in C++ Maximilian Haupt MUC /06/30
|
|
- Christiana Williams
- 5 years ago
- Views:
Transcription
1 Web-Services in C++ Building fast, memory-efficient and maintainable web-services in C++ Maximilian Haupt MUC /06/30
2 Background Professional C/C++ developer since 2006 VR, Real-Time Audio, Game-Engine, Big-Data, Machine-Learning
3 When talking about web-services Plain REST-like HTTP APIs talking JSON a.k.a. Micro-Services No fully fledged web-stack à Ruby on Rails, Django, MEAN, No static file serving à nginx/apache No reverse proxy / load balancing à nginx/haproxy No SSL termination à nginx/haproxy No template rendering à frontend (Angular, React, )
4 RTB detour
5 mbr targeting bidder wrap-up Started as a research project written in python Small RTBkit Intermezzo Later, rewritten in node.js Performance issues due to increasing traffic
6 rtb stack before HTTP nginx Graphite HTTP bidder DB/ Cache Logging
7 rtb stack after HTTP nginx HTTP Graphite broker ZeroMQ (CBFC) bidder DB/ Cache Logging
8 More than HTTP Proxygen: lwan: Wt: http-parser: httpp: - Hi Thomas! :) served: libevhtp:
9 JSON JsonCpp RapidJSON Json11 yajl gason ArduinoJson For a more complete list, e.g.:
10 TODO: put some nice broker graphs here Linux, C++14 (g++ 4.8), boost::asio, httpp, JsonCpp, ZeroMQ, tcmalloc, Intel TBB Routing (expensive stuff) Adx/Adscale/ Adx/Adscale/ Request Augmentation Timeout Response Sanity Checks ZeroMQ + JSON JSON Dispatch
11 Btw: use latest JsonCpp and link it statically!
12 Broker evolution Augmentation with additional data Logging to Kafka QoS, load balancing, rate limiting Data scientists love data, i.e. traffic
13 JSON love & hate
14 Schemas to the rescue JsonSchema helps. a bit. maybe Typos are still an issue Knowledge about types still spread throughout the code Still accessing json members through strings Start writing you own serialization Structs plus hand-crafted de-/serialization code
15 Protobuf to the rescue!!!11elf
16 Protobuf to the rescue!!!11elf generated Classes
17 Protobuf to the rescue!!!11elf Reflection
18 Protobuf to the rescue!!!11elf Serialization
19 Protobuf to the rescue!!!11elf Message::Clear()
20 Protobuf to the rescue!!!11elf Documentation Thanks Google: openrtb.proto (github.com/google/openrtb)
21 Json to protobuf and back json-protobuf mapper using the generated reflection (RapidJSON based) (jansson based) (jansson based) (Java) (node.js) à Single place for schema validation and performance improvements
22 Json to protobuf and back
23 Drop the bass response times
24 Now ~3 billion requests/day
25 Let it sink
26 Use protobuf for all data structures!
27 Sky is the limit Still more memory used than needed (raw buffer + json + protobuf) Use event-based json parser (e.g. yajl or RapidJson) for memory-efficiency Get rid of reflection by also generating parser code
28 Generate json state machine from proto file <number> { key:"a" 2 null } key:"b" { key:"c" <string> }
29 protog A protobuf json-parser generator! $ protoc --cpp_out=. openrtb.proto $ protog -p openrtb.proto -i openrtb.pb.h \ -m com.google.openrtb.bidrequest Will generate openrtb.pb.{cc,h} and bidrequest_parser.pb.{cc,h}
30 Disclaimer protog is not ready for production! Prototype which contains bugs Does not support self-referencing messages Many rough edges
31 Benchmark preface Never trust benchmarks other people present to you Highly recommend Brendan Gregg s talks and blog: brendangregg.com All code is online: github.com/0x7f/cpp-meetup
32 httpp (raw) proxygen (raw) httpp + ganson httpp + protog httpp + jsoncpp httpp + rapidjson httpp + pbjson nodejs (raw) node.js + JSON node.js + ajv httpp + rapidjson + validation 0 0,5 1 1,5 2 2,5 3 EC2 c4.4xlarge (14.04 LTS), 4 threads, wrk(c=200,t=12,d=60s), POST bidrequest.2.json (~1.5kb)
33
34 There is no silver bullet Serialization vs meat Large vs small JSON Multi-purpose backend vs single task Green field vs existing code Standalone vs embedded http server Normal vs high throughput Hard memory constraints
35 Summary Measure! Measure! Measure! Web-services are more than HTTP+JSON Mastering JSON is hard Schemas and generated code helps C++ can be very fast when used correctly Which library/tool for which use-case
36 Thank you!
37 Questions? Maximilian Haupt github.com/0x7f
Web-Services in C++ Building fast, memory-efficient and maintainable web-services in C++ Maximilian Haupt C++ Meetup 2016/05/17
Web-Services in C++ Building fast, memory-efficient and maintainable web-services in C++ Maximilian Haupt C++ Meetup 2016/05/17 Summary The talk will cover best-practices and utilities for building fast
More informationSignals Documentation
Signals Documentation Release 0.1 Yeti November 22, 2015 Contents 1 Quickstart 1 2 What is Signals? 3 3 Contents 5 3.1 Get Started................................................ 5 3.2 Try the Demo Server...........................................
More informationTransitioning from C# to Scala Using Apache Thrift. Twitter Finagle
Transitioning from C# to Scala Using Apache Thrift and Twitter Finagle Steven Skelton September 19, 2013 Empathica Empathica provides Customer Experience Management programs to more than 200 of the world's
More informationDeploying to the Edge CouchDB
Deploying to the Edge CouchDB Apache Relax Who s Talking? J Chris Anderson / jchris@apache.org / @jchris PHP -> Rails -> JSON -> CouchDB Director, couch.io And You? Web developers? JavaScript coders? CouchDB
More informationMicroservices. SWE 432, Fall 2017 Design and Implementation of Software for the Web
Micros SWE 432, Fall 2017 Design and Implementation of Software for the Web Today How is a being a micro different than simply being ful? What are the advantages of a micro backend architecture over a
More informationDistributed Architectures & Microservices. CS 475, Spring 2018 Concurrent & Distributed Systems
Distributed Architectures & Microservices CS 475, Spring 2018 Concurrent & Distributed Systems GFS Architecture GFS Summary Limitations: Master is a huge bottleneck Recovery of master is slow Lots of success
More informationReactive Java: Promises and Streams with Reakt. Geoff Chandler and Rick Hightower
Reactive Java: Promises and Streams with Reakt Geoff Chandler and Rick Hightower What is Reakt in 30 seconds! Reakt General purpose library for callback coordination and streams Implements JavaScript
More informationgrpc - A solution for RPCs by Google Distributed Systems Seminar at Charles University in Prague, Nov 2016 Jan Tattermusch - grpc Software Engineer
grpc - A solution for RPCs by Google Distributed Systems Seminar at Charles University in Prague, Nov 2016 Jan Tattermusch - grpc Software Engineer About me Software Engineer at Google (since 2013) Working
More informationEduardo
Eduardo Silva @edsiper eduardo@treasure-data.com About Me Eduardo Silva Github & Twitter Personal Blog @edsiper http://edsiper.linuxchile.cl Treasure Data Open Source Engineer Fluentd / Fluent Bit http://github.com/fluent
More informationThe Future of the Realtime Web BETTER APIS WITH GRAPHQL. Josh
The Future of the Realtime Web BETTER APIS WITH GRAPHQL Josh Price @joshprice STEPPING STONES TO FP Language (Elixir) Strongly-Typed APIs (GraphQL) GRAPHQL WAS HERE? http://whiteafrican.com/2008/05/12/crossing-the-mapping-chasm/
More informationA Library and Proxy for SPDY
A Library and Proxy for SPDY Interdisciplinary Project Andrey Uzunov Chair for Network Architectures and Services Department of Informatics Technische Universität München April 3, 2013 Andrey Uzunov (TUM)
More informationBackend Development. SWE 432, Fall Web Application Development
Backend Development SWE 432, Fall 2018 Web Application Development Review: Async Programming Example 1 second each Go get a candy bar Go get a candy bar Go get a candy bar Go get a candy bar Go get a candy
More informationFluentd. Open Source Data Collector. Eduardo Jan 23, 2016 Scale14x, Pasadena!
Fluentd Open Source Data Collector Jan 23, 2016 Scale14x, Pasadena! Eduardo Silva eduardo@treasuredata.com @edsiper spread the word! #scale14x #fluentd @edsiper About Me Eduardo Silva Github & Twitter
More informationIntroducing taocpp/json
Introducing taocpp/json https://github.com/taocpp/json Daniel Frey 2016-11-10 Disclaimer Opinions expressed are solely my own and do not express the views or opinions of my employer All mistakes are mine,
More informationMasters in Web Development
Masters in Web Development Accelerate your carrer by learning Web Development from Industry Experts. www.techgrad.in India s Leading Digital marketing Institute India s Leading Accademy 12,234+ Trainees
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 informationQuick housekeeping Last Two Homeworks Extra Credit for demoing project prototypes Reminder about Project Deadlines/specifics Class on April 12th Resul
CIS192 Python Programming Web Frameworks and Web APIs Harry Smith University of Pennsylvania March 29, 2016 Harry Smith (University of Pennsylvania) CIS 192 March 29, 2016 1 / 25 Quick housekeeping Last
More informationthe road to cloud native applications Fabien Hermenier
the road to cloud native applications Fabien Hermenier 1 cloud ready applications single-tiered monolithic hardware specific cloud native applications leverage cloud services scalable reliable 2 Agenda
More informationMotivations. Luigi De Russis. Why Ruby (on Rails)?
Motivations Luigi De Russis 2 Disclaimer YES course-specific value open mind NO general value extremism 3 4 Course requirements Goal and context 5 Goal design and implement a Social Network site 6 credits
More informationOracle. NoSQL Database Concepts Manual. 12c Release 1
Oracle NoSQL Database Concepts Manual 12c Release 1 Library Version 12.1.3.3 Legal Notice Copyright 2011, 2012, 2013, 2014, 2015 Oracle and/or its affiliates. All rights reserved. This software and related
More informationUnifying Events & Logs into the Cloud
Unifying Events & Logs into the Cloud October 05, 2015 CloudOpen/LinuxCon, Dublin Eduardo Silva eduardo@treasuredata.com @edsiper About Me Eduardo Silva Github & Twitter Personal Blog @edsiper http://edsiper.linuxchile.cl
More informationContinuous performance monitoring. Vassil Vassilev
Continuous performance monitoring Vassil Vassilev Motivation Enabling performance optimization contributions (often external) to ROOT Making sure these contributions are sustainable (i.e. once the money
More informationWhy I still develop synchronous web in the asyncio era. April 7th, 2017 Giovanni Barillari - pycon otto - Firenze, Italy
Why I still develop synchronous web in the asyncio era April 7th, 2017 Giovanni Barillari - pycon otto - Firenze, Italy Who am I? I m Gio! pronounced as Joe trust me, I m a physicist :) code principally
More informationLearn to Code with C#
Learn to Code with C# Getting Started with Microsoft's Cross-Platform, Open Source Language Who am I? Jeff Ammons Microsoft MVP Pluralsight Author CEO/Chief Instructor at Code Career Academy 25 Years Professional
More informationCopyright 2014 Blue Net Corporation. All rights reserved
a) Abstract: REST is a framework built on the principle of today's World Wide Web. Yes it uses the principles of WWW in way it is a challenge to lay down a new architecture that is already widely deployed
More informationSCALE AND SECURE MOBILE / IOT MQTT TRAFFIC
APPLICATION NOTE SCALE AND SECURE MOBILE / IOT TRAFFIC Connecting millions of devices requires a simple implementation for fast deployments, adaptive security for protection against hacker attacks, and
More informationBackend Web Frameworks
Backend Web Frameworks How do we: inspect the requested URL and return the appropriate page? deal with POST requests? handle more advanced concepts like sessions and cookies? scale the application to
More informationDistil Networks & HAProxy Integration Guide
INTEGRATIONGUIDE Distil Networks & HAProxy Integration Guide (w) www.distilnetworks.com (e) sales@distilnetworks.com (US) 415.423.0831 (UK) +44.203.3184751 Table of Contents INTRODUCTION 3 HAPROXY 3 Testing
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 informationFull Stack Developer with Java
Full Stack Developer with Java Full Stack Developer (Java) MVC, Databases and ORMs, API Backend Frontend Fundamentals - HTML, CSS, JS Unit Testing Advanced Full Stack Developer (Java) UML, Distributed
More informationElliotte Rusty Harold August From XML to Flat Buffers: Markup in the Twenty-teens
Elliotte Rusty Harold elharo@ibiblio.org August 2018 From XML to Flat Buffers: Markup in the Twenty-teens Warning! The Contenders XML JSON YAML EXI Protobufs Flat Protobufs XML JSON YAML EXI Protobuf Flat
More informationDeveloper Internship Opportunity at I-CC
Developer Internship Opportunity at I-CC Who We Are: Technology company building next generation publishing and e-commerce solutions Aiming to become a leading European Internet technology company by 2015
More informationMySQL X Protocol Talking to MySQL Directly over the Wire
MySQL X Protocol Talking to MySQL Directly over the Wire Simon J Mudd Percona Live Europe Amsterdam 5 th October 2016 Content What is MySQL X protocol How does it work Building
More informationUpload to your web space (e.g., UCSC) Due this Thursday 4/8 in class Deliverable: Send me an with the URL Grading:
CS 183 4/6/2010 Build a simple HTML page, topic of your choice Will use this as a basis and gradually and add more features as the class progresses Need to be done with your favorite text editor, no visual
More informationSurrogate Dependencies (in
Surrogate Dependencies (in NodeJS) @DinisCruz London, 29th Sep 2016 Me Developer for 25 years AppSec for 13 years Day jobs: Leader OWASP O2 Platform project Application Security Training JBI Training,
More information/ Cloud Computing. Recitation 5 February 14th, 2017
15-319 / 15-619 Cloud Computing Recitation 5 February 14th, 2017 1 Overview Administrative issues Office Hours, Piazza guidelines Last week s reflection Project 2.1, OLI Unit 2 modules 5 and 6 This week
More informationRethinking monitoring with Prometheus
Rethinking monitoring with Prometheus Martín Ferrari Štefan Šafár http://tincho.org @som_zlo Who is Prometheus? A dude who stole fire from Mt. Olympus and gave it to humanity http://prometheus.io/ What
More informationUsing the SDACK Architecture to Build a Big Data Product. Yu-hsin Yeh (Evans Ye) Apache Big Data NA 2016 Vancouver
Using the SDACK Architecture to Build a Big Data Product Yu-hsin Yeh (Evans Ye) Apache Big Data NA 2016 Vancouver Outline A Threat Analytic Big Data product The SDACK Architecture Akka Streams and data
More informationCocoaHeads Aachen Server-side Swift
Server-side Swift 2016-08-25 Ullrich Platt, Michael Plagge Agenda Motivation for Server-side Swift Concepts / Architecture(s) Pros & Cons Requirements Status In depth: Frameworks Overview Swift@IBM / Kitura
More informationGroupWise Architecture and Best Practices. WebAccess. Kiran Palagiri Team Lead GroupWise WebAccess
GroupWise Architecture and Best Practices WebAccess Kiran Palagiri Team Lead GroupWise WebAccess kpalagiri@novell.com Ed Hanley Senior Architect ed.hanley@novell.com Agenda Kiran Palagiri Architectural
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 information"Stupid Easy" Scaling Tweaks and Settings. AKA Scaling for the Lazy
"Stupid Easy" Scaling Tweaks and Settings AKA Scaling for the Lazy I'm Lazy (and proud of it) The Benefits of "Lazy" Efficiency is king Dislike repetition Avoid spending a lot of time on things A Lazy
More informationPostgreSQL as REST API Server without coding. Priya
PostgreSQL as REST API Server without coding Priya Ranjan @ranjanprj API Future of Application Development APIs are prerequisite for innovation Microservices provide APIs in a bounded context Existing
More informationHow to store millions metrics per second. Vladimir Smirnov System Administrator. SREcon17 Asia/Australia 22 May 2017
Graphite@Scale: How to store millions metrics per second Vladimir Smirnov System Administrator SREcon17 Asia/Australia 22 May 2017 Why you might need to store your metrics? Most common cases: Capacity
More informationDesign and Architecture. Derek Collison
Design and Architecture Derek Collison What is Cloud Foundry? 2 The Open Platform as a Service 3 4 What is PaaS? Or more specifically, apaas? 5 apaas Application Platform as a Service Applications and
More informationBasic Concepts of the Energy Lab 2.0 Co-Simulation Platform
Basic Concepts of the Energy Lab 2.0 Co-Simulation Platform Jianlei Liu KIT Institute for Applied Computer Science (Prof. Dr. Veit Hagenmeyer) KIT University of the State of Baden-Wuerttemberg and National
More informationWeb Applications. Software Engineering 2017 Alessio Gambi - Saarland University
Web Applications Software Engineering 2017 Alessio Gambi - Saarland University Based on the work of Cesare Pautasso, Christoph Dorn, Andrea Arcuri, and others ReCap Software Architecture A software system
More informationCS193X: Web Programming Fundamentals
CS193X: Web Programming Fundamentals Spring 2017 Victoria Kirst (vrk@stanford.edu) CS193X schedule Today - Middleware and Routes - Single-page web app - More MongoDB examples - Authentication - Victoria
More informationAngular 2 and Hexo. Static Meets Dynamic For the Best of Both Worlds! Copyright 2016 Code Career Academy
Angular 2 and Hexo Static Meets Dynamic For the Best of Both Worlds! Who am I? Jeff Ammons Microsoft MVP Pluralsight Author CEO/Chief Instructor at Code Career Academy 25 Years Professional Experience
More informationArcGIS Enterprise: An Introduction. Philip Heede
Enterprise: An Introduction Philip Heede Online Enterprise Hosted by Esri (SaaS) - Upgraded automatically (by Esri) - Esri controls SLA Core Web GIS functionality (Apps, visualization, smart mapping, analysis
More informationCross-Platform Data Models and API Using grpc
Cross-Platform Data Models and API Using grpc Sebastian Hagedorn, Felix Lamouroux Outline 1. Motivation & Goals 2. Choosing the Right Cross-Platform Technology 3. Introduction to Protocol Buffers and grpc
More informationReconstructive API for the DOM
Reconstructive API for the DOM 281 Bloomfield Ave, Verona, NJ 07044 it s here and it changes everything Reconstructive API for the DOM, RAPID, is an add-on for Adobe Experience Manager (AEM) that finally
More informationWhich application/messaging protocol is right for me?
Which application/messaging protocol is right for me? Building a connected device solution calls for several design and architectural decisions. Which protocol(s) should you use to connect your devices
More informationHow to store millions metrics per second. Vladimir Smirnov System Administrator
Graphite@Scale: How to store millions metrics per second Vladimir Smirnov System Administrator FOSDEM 2017 5 February 2017 Why you might need to store your metrics? Most common cases: Capacity planning
More informationLarge-Scale Web Applications
Large-Scale Web Applications Mendel Rosenblum Web Application Architecture Web Browser Web Server / Application server Storage System HTTP Internet CS142 Lecture Notes - Intro LAN 2 Large-Scale: Scale-Out
More informationCloud platforms. T Mobile Systems Programming
Cloud platforms T-110.5130 Mobile Systems Programming Agenda 1. Motivation 2. Different types of cloud platforms 3. Popular cloud services 4. Open-source cloud 5. Cloud on this course 6. Mobile Edge Computing
More informationZero to Microservices in 5 minutes using Docker Containers. Mathew Lodge Weaveworks
Zero to Microservices in 5 minutes using Docker Containers Mathew Lodge (@mathewlodge) Weaveworks (@weaveworks) https://www.weave.works/ 2 Going faster with software delivery is now a business issue Software
More informationMake your application real-time with PubSubHubbub. Brett Slatkin May 19th, 2010
Make your application real-time with PubSubHubbub Brett Slatkin May 19th, 2010 View live notes and ask questions about this session on Google Wave http://tinyurl.com/push-io2010 Me http://onebigfluke.com
More informationReal-Time & Big Data GIS: Best Practices. Josh Joyner Adam Mollenkopf
Real-Time & Big Data GIS: Best Practices Josh Joyner Adam Mollenkopf ArcGIS Enterprise with real-time capabilities Desktop Apps APIs live features stream services live & historic aggregates & features
More information/ Cloud Computing. Recitation 5 September 26 th, 2017
15-319 / 15-619 Cloud Computing Recitation 5 September 26 th, 2017 1 Overview Administrative issues Office Hours, Piazza guidelines Last week s reflection Project 2.1, OLI Unit 2 modules 5 and 6 This week
More informationBackend Development. SWE 432, Fall 2017 Design and Implementation of Software for the Web
Backend Development SWE 432, Fall 2017 Design and Implementation of Software for the Web Real World Example https://qz.com/1073221/the-hackers-who-broke-into-equifax-exploited-a-nine-year-old-security-flaw/
More informationA Brief Introduction of TiDB. Dongxu (Edward) Huang CTO, PingCAP
A Brief Introduction of TiDB Dongxu (Edward) Huang CTO, PingCAP About me Dongxu (Edward) Huang, Cofounder & CTO of PingCAP PingCAP, based in Beijing, China. Infrastructure software engineer, open source
More informationDeploying and Using ArcGIS Enterprise in the Cloud. Bill Major
Deploying and Using ArcGIS Enterprise in the Cloud Bill Major Quick Survey Your role in your organization - Developer? - Cloud Admin? Already a cloud user Running Esri deployment on AWS Running Esri deployment
More informationThink Small to Scale Big
Think Small to Scale Big Intro to Containers for the Datacenter Admin Pete Zerger Principal Program Manager, MVP pete.zerger@cireson.com Cireson Lee Berg Blog, e-mail address, title Company Pete Zerger
More informationDjango Test Utils Documentation
Django Test Utils Documentation Release 0.3 Eric Holscher July 22, 2016 Contents 1 Source Code 3 2 Contents 5 2.1 Django Testmaker............................................ 5 2.2 Django Crawler.............................................
More informationThis release of Micro Focus Fortify Software includes the following new functions and features. Micro Focus Fortify Software Security Center
Fortify Software What s New in Micro Focus Fortify Software 18.20 November 2018 This release of Micro Focus Fortify Software includes the following new functions and features. Micro Focus Fortify Software
More informationPrototyping Data Intensive Apps: TrendingTopics.org
Prototyping Data Intensive Apps: TrendingTopics.org Pete Skomoroch Research Scientist at LinkedIn Consultant at Data Wrangling @peteskomoroch 09/29/09 1 Talk Outline TrendingTopics Overview Wikipedia Page
More informationDesign and development of a distributed, secure and resilient vault management system
Design and development of a distributed, secure and resilient vault management system Mathonet G. University of Liège, Belgium June 2017 Mathonet G. (University of Liège, Belgium) Design and development
More informationServer-Side Web Programming: Python (Part 2) Copyright 2017 by Robert M. Dondero, Ph.D Princeton University
Server-Side Web Programming: Python (Part 2) Copyright 2017 by Robert M. Dondero, Ph.D Princeton University 1 Objectives You will learn about: Python WSGI programming Web app frameworks in general (briefly)
More information{ REST } vs. Battle of API s
{ REST } vs Battle of API s Software Engineer at Sensedia Who am I? MBA in java projects Java and microservice enthusiastic Microservices Agenda REST grpc Demo Questions Moving to Microservices Monolith
More informationWORKLOAD CHARACTERIZATION OF INTERACTIVE CLOUD SERVICES BIG AND SMALL SERVER PLATFORMS
WORKLOAD CHARACTERIZATION OF INTERACTIVE CLOUD SERVICES ON BIG AND SMALL SERVER PLATFORMS Shuang Chen*, Shay Galon**, Christina Delimitrou*, Srilatha Manne**, and José Martínez* *Cornell University **Cavium
More informationIntroduction to GraphQL and Relay. Presenter: Eric W. Greene
Introduction to GraphQL and Relay Presenter: Eric W. Greene Welcome to the Webinar! Welcome to the webinar on GraphQL and Relay!!! We will review a few slides, then experiment with GraphQL and review GraphQL
More informationAsema IoT Central Integration and migration. English
Asema IoT Central English Table of Contents 1. Introduction... 1 2. alternatives... 2 2.1. Simply move and run... 2 2.2. Asema IoT Central as a proxy for other systems... 5 2.2.1. Proxied HTTP requests...
More informationProtocol Buffers, grpc
Protocol Buffers, grpc Szolgáltatásorientált rendszerintegráció Service-Oriented System Integration Dr. Balázs Simon BME, IIT Outline Remote communication application level vs. transport level protocols
More informationStaggeringly Large File Systems. Presented by Haoyan Geng
Staggeringly Large File Systems Presented by Haoyan Geng Large-scale File Systems How Large? Google s file system in 2009 (Jeff Dean, LADIS 09) - 200+ clusters - Thousands of machines per cluster - Pools
More informationProxySQL's Internals
ProxySQL's Internals What is ProxySQL? A "Layer 7" database proxy MySQL / ClickHouse protocol aware High Performance High Availability Architecture Overview Clients connect to ProxySQL Requests are evaluated
More informationUsing Opengl Es 2.0 For Android Development Develop And Design Pdf
Using Opengl Es 2.0 For Android Development Develop And Design Pdf Using OpenGL ES Design and implementation. Testing and results Develop. Requirements. App design. Benchmark scene design. Test Install
More informationReview. Fundamentals of Website Development. Web Extensions Server side & Where is your JOB? The Department of Computer Science 11/30/2015
Fundamentals of Website Development CSC 2320, Fall 2015 The Department of Computer Science Review Web Extensions Server side & Where is your JOB? 1 In this chapter Dynamic pages programming Database Others
More informationArchitecting for Scale
Armin Balalaie and Abbas Heydarnoori, Sharif University of Technology Pooyan Jamshidi, Imperial College London // This article reports on experiences and lessons learned during incremental migration and
More information利用 Mesos 打造高延展性 Container 環境. Frank, Microsoft MTC
利用 Mesos 打造高延展性 Container 環境 Frank, Microsoft MTC About Me Developer @ Yahoo! DevOps @ HTC Technical Architect @ MSFT Agenda About Docker Manage containers Apache Mesos Mesosphere DC/OS application = application
More information.., 2017. 09.03.01,.....,,,,,..,.., 2017 .................................... 4 1......... 6 2.......................... 8 2.1................... 8 2.2................... 9 2.2.1...........................
More informationByte Academy. Python Fullstack
Byte Academy Python Fullstack 06/30/2017 Introduction Byte Academy pioneered industry-focused programs beginning with the launch of our FinTech course, the first of its type. Our educational programs bridge
More informationElasticsearch. Presented by: Steve Mayzak, Director of Systems Engineering Vince Marino, Account Exec
Elasticsearch Presented by: Steve Mayzak, Director of Systems Engineering Vince Marino, Account Exec What about Elasticsearch the Company?! Support 100s of Companies in Production environments Training
More informationExploring the Nuxeo REST API
Exploring the Nuxeo REST API Enabling Rapid Content Application Craftsmanship Copyright 2018 Nuxeo. All rights reserved. Copyright 2017 Nuxeo. All rights reserved. Chapter 1 The Nuxeo REST API What do
More informationFuture Web App Technologies
Future Web App Technologies Mendel Rosenblum MEAN software stack Stack works but not the final say in web app technologies Angular.js Browser-side JavaScript framework HTML Templates with two-way binding
More informationOpen Data Standards for Administrative Data Processing
University of Pennsylvania ScholarlyCommons 2018 ADRF Network Research Conference Presentations ADRF Network Research Conference Presentations 11-2018 Open Data Standards for Administrative Data Processing
More informationData Acquisition. The reference Big Data stack
Università degli Studi di Roma Tor Vergata Dipartimento di Ingegneria Civile e Ingegneria Informatica Data Acquisition Corso di Sistemi e Architetture per Big Data A.A. 2017/18 Valeria Cardellini The reference
More informationBuilding Scalable and Extendable Data Pipeline for Call of Duty Games: Lessons Learned. Yaroslav Tkachenko Senior Data Engineer at Activision
Building Scalable and Extendable Data Pipeline for Call of Duty Games: Lessons Learned Yaroslav Tkachenko Senior Data Engineer at Activision 1+ PB Data lake size (AWS S3) Number of topics in the biggest
More informationBespoKV: Application Tailored Scale-Out Key-Value Stores
BespoKV: Application Tailored Scale-Out Key-Value Stores Ali Anwar, Yue Cheng, Hai Huang, Jingoo Han, Hyogi Sim, Dongyoon Lee, Fred Douglis, and Ali R. Butt BespoKV Role of Distributed KV stores in HPC
More informationLearn Ruby On Rails For Web Development Learn Rails The Fast And Easy Way
Learn Ruby On Rails For Web Development Learn Rails The Fast And Easy Way Learn Ruby on Rails by following along and building a Pinterest Clone website. Rails book Learn Ruby On Rails For Web Development
More informationWhoWhenWhere. Project: WhoWhenWhere Date:
WhoWhenWhere Introduction: Authentication has always been a challenge. In case of passwords hashes are used for securing, but there were cases where hashes collide. When finger print based authentication
More informationSecurity. SWE 432, Fall 2017 Design and Implementation of Software for the Web
Security SWE 432, Fall 2017 Design and Implementation of Software for the Web Today Security What is it? Most important types of attacks Authorization oauth 2 Security Why is it important? Users data is
More informationFour times Microservices: REST, Kubernetes, UI Integration, Async. Eberhard Fellow
Four times Microservices: REST, Kubernetes, UI Integration, Async Eberhard Wolff @ewolff http://ewolff.com Fellow http://continuous-delivery-buch.de/ http://continuous-delivery-book.com/ http://microservices-buch.de/
More informationRails on HBase. Zachary Pinter and Tony Hillerson RailsConf 2011
Rails on HBase Zachary Pinter and Tony Hillerson RailsConf 2011 What we will cover What is it? What are the tradeoffs that HBase makes? Why HBase is probably the wrong choice for your app Why HBase might
More informationTLDK Overview. Transport Layer Development Kit Keith Wiles April Contributions from Ray Kinsella & Konstantin Ananyev
TLDK Overview Transport Layer Development Kit Keith Wiles April 2017 Contributions from Ray Kinsella & Konstantin Ananyev Notices and Disclaimers Intel technologies features and benefits depend on system
More informationTHE FULCRUM SOFTWARE STACK. A Look Inside
THE FULCRUM SOFTWARE STACK A Look Inside Core Components Classic API Query API Web App Mobile Apps Tile Server DB Server 3 The Web App Ruby on Rails Application CoffeeScript / JavaScript Sass for CSS Preprocessing
More informationThe Idiot s Guide to Quashing MicroServices. Hani Suleiman
The Idiot s Guide to Quashing MicroServices Hani Suleiman The Promised Land Welcome to Reality Logging HA/DR Monitoring Provisioning Security Debugging Enterprise frameworks Don t Panic WHOAMI I wrote
More informationNode.js Vulnerabilities
Node.js Vulnerabilities Amadou Crookes December 13th, 2013 Abstract Node.js is a fresh take on building fast, scalable network applications in the form of a server side framework. There are two main differences
More informationPowerful application delivery, security, performance and reliability
Powerful application delivery, security, performance and reliability Snapt Summary Snapt develops high-end solutions for application delivery. We provide load balancing, web acceleration, caching and security
More informationENERGYPLUS PERFORMANCE IMPROVEMENTS VIA JSON INPUT REFACTORING
2018 Building Performance Modeling Conference and SimBuild co-organized by ASHRAE and IBPSA-USA Chicago, IL September 26-28, 2018 ENERGYPLUS PERFORMANCE IMPROVEMENTS VIA JSON INPUT REFACTORING ABSTRACT
More information