Lessons learned How we use Erlang to analyze millions of messages per day
|
|
|
- Ferdinand Hodge
- 10 years ago
- Views:
Transcription
1 Erlang Factory Lite Paris Lessons learned How we use Erlang to analyze millions of messages per day
2 A few words about us What we do with Erlang
3 A few words about us Semiocast processes social media conversations to provide analytics and market research insights»»»»»
4 Semiocast s offer Quantitative studies ad hoc Barometers Shares of social media conversations Sentiment analysis and clustering Topic identification Ad hoc quantitative indicators Qualitative studies ad hoc Monitoring Consumer insights Verbatim research Clustering of conversations Mapping of communities and influence analysis Enumeration of social media conversation spaces Real-time alerts Daily/Weekly/Monthly reports Crisis monitoring Tools Social media monitoring platform (Semioboard) Technology as a service (API)
5 Semioboard
6 Semioboard
7 Live analysis of comments on TV debates
8 How we ended up using Erlang
9 How we ended up using Erlang Discovered Erlang when getting WiFi rabbits to talk to each other over XMPP (ejabberd) in 2007 Taught OCaml in 2004 Three reasons why we chose Erlang : - hot code change and inspection - fault-tolerance - happy to do functional programming (gave us a break from Java and C++)
10 How we use Erlang 1352 OTP releases - 47 applications - 100K lines of Erlang (without tests) {release, {"Semiocast OTP", "1352"}, {erts, "5.8.4"}, [ % erts {kernel, "2.14.4"}, {stdlib, "1.17.4"}, {mnesia, "4.4.18"}, {inets, "5.5.2"}, {sasl, " "}, {crypto, " "}, {snmp, "4.19"}, {otp_mibs, "1.0.6"}, {ssl, "4.1.5"}, {public_key, "0.12"}, {xmerl, "1.2.8"}, {compiler, "4.7.3"}, {runtime_tools, "1.8.5"}, {syntax_tools, "1.6.7"}, % Other libs {erlsom, "1.2.1"}, {mochiweb, " "}, {nitrogen, " "}, {nprocreg, "0.1"}, {simple_bridge, "1.0.2"}, - 11K lines of C/C++ (mostly glue) - 1K lines of Java (glue) ~50 ungraduated applications for - prototyping - short lived projects - web-based/command line tools that run on dev machines ]}. % Semiocast {analyzer, "22", load}, {alien_models, "50", load}, {alien_uniform_streams, "7", load}, {api_server, "109", load}, {aspell, "4", load}, {binlog, "26", load}, {certificate_authority, "8", load}, {chasen, "11", load}, {chinese_segmenter, "1", load}, {commonlib, "250", permanent}, % always start commonlib. {ctl, "29", permanent}, % always start ctl. {dashboard_engine, "55", load}, {dashboard_storage, "56", load}, {dashboard_website, "226", load}, {developer_website, "36", load}, {engine, "455", load}, {gate, "79", load}, {geodb, "5", load}, {geoip, "2", load}, {image_magick, "8", load}, {kdtree, "3", load}, {kqueue, "1", load}, {link_grammar_parser, "12", load}, {memcached, "5", load}, {mysql, "8", load}, {nagios, "6", permanent}, % always start nagios. {opennlp, "8", load}, {pgsql, "2", load}, {pubsubhubbub, "4", load}, {qr_website, "1", load}, {re2, "1", load}, {s_http, "42", load}, {setproctitle, "2", permanent}, % always start setproctitle. {sink, "15", load}, {sqlite, "9", load}, {storage, "226", load}, {svg, "12", load}, {svm, "1", load}, {text_ident, "27", load}, {text_proc, "62", load}, {titema_website, "7", load}, {url_server, "8", load}, {uuid, "6", load}, {web_common, "14", load}, {web_gate, "8", load}, {web_storage, "5", load}, {wikimedia, "6", load}
11 A few things we wish we had known about Erlang A few things we wish we had known about Erlang
12 A few things we wish we had known about Erlang Mistake #1: Creating an erlang process to do a lot of work - processes should spend most of their time waiting for messages (gen_server), or do some intensive work and quickly exit when done (spawn_link) - when required, benchmark, as message passing with the worker process can prove expensive Self = self(), Self spawn_link(fun() = self(), -> Self! {language, analyze_language(text, MD0, Mode)} end), spawn_link(fun() -> -> Self! {language, {location, analyze_language(text, analyze_location(md0, MD0, Mode)} Mode)} end), end), spawn_link(fun() {NProcessedLang, -> Language} Self! {location, = receive {language, analyze_location(md0, RespLa} -> Mode)} RespLa end), end, {NProcessedLang, {NProcessedLoc, Language} Location} = receive {language, {location, RespLa} RespLoc} -> -> RespLa RespLoc end, end, {NProcessedLoc, Location} = receive {location, RespLoc} -> RespLoc end, Faster {NProcessedLang, Language} = analyze_language(text, MD0, Mode), {NProcessedLang, {NProcessedLoc, Language} Location} = analyze_language(text, analyze_location(md0, Mode), MD0, Mode), {NProcessedLoc, Location} = analyze_location(md0, Mode),
13 A few things we wish we had known about Erlang Mistake #2: Creating a lot of processes for parallelized computing - having more worker processes than schedulers does not make sense - it can actually hurt, because processes waiting for a reply may not have it in time and will fail with a timeout
14 Thinking OTP Thinking OTP
15 Thinking OTP Mistake #3: Starting processes outside the supervision tree - gen_server & co. should be used everywhere, except for very short lived processes (that won t be upgraded) - Every gen_server should be started from a supervisor - A real-world supervision design requires process_flag(trap_exit, true), monitor/2 and link/1, as well as some thinking
16 Thinking OTP Mistake #4: Thinking obscure comments?shutdown_delay, in supervisor, the documentation do not really apply - When in doubt, source permanent, code % restart is handy, children that and crash helps figuring out when [alien_user_server_sup] we really need to % modules go off the rule gen_manager is a gen_server with a callback module handling code_change messages (here, user_manager) %% supervisor init callback. %% -spec(init/1::(any()) -> sup_init()). init(_args) -> UserServerSupSpec = {user_server_sup, % id {user_server_sup, start_link, []}, % init function permanent, % restart children that crash [user_server_sup] % modules }, AlienUserServerSupSpec = {alien_user_server_sup, % id {alien_user_server_sup, start_link, []}, % init function?shutdown_delay, supervisor, }, MailboxServerSupSpec = {mailbox_server_sup, % id {mailbox_server_sup, start_link, []}, % init function As a rule of thumb permanent, Modules % restart should children be a list that with crash one element [Module],?SHUTDOWN_DELAY, where Module supervisor, the callback module, if the [mailbox_server_sup] child process is a % supervisor, modules gen_server or gen_fsm }, UserManagerStartChildSemaphore = {user_manager_start_child_sem {semaphore, start_link, erl -man[{local, supervisor user_manager_start_child_ transient, % restart children that crash?shutdown_delay, worker, [semaphore] % modules }, UserManagerSpec = {user_manager, % id {user_manager, start_link, []}, % init function transient, % restart children that crash?shutdown_delay, worker, [gen_manager, user_manager] % modules }, RestartStrategy = {one_for_one,?max_restarts,?max_restarts_p % Setup snmp probe for semaphore. gen_snmp_agent:set_variable(?snmp_user_manager_start_child_sem
17 Thinking OTP Mistake #5: Putting everything in a single virtual machine (node) per server - Virtual machines may crash - Code changes can fail and take down the whole node - It s better to separate critical code - even per server if a crashing node can take a huge amount of RAM and make other nodes swap
18 Foreign code Interfacing with foreign code
19 Foreign code Six ways to interface foreign code with Erlang: - Linked-In drivers - External drivers - NIFs - os:cmd/1 - C-based distributed node - Java-based distributed node (jinterface) We tried them all and are looking forward to future extensions to the native interface (R15?)
20 Foreign code Method Linked-in drivers External drivers NIFs os:cmd/1 We use/used for - aspell - kqueue (FreeBSD/MacOS X kqueue binding) - SQLite - ImageMagick - GeoIP - WebKit - uuid - re2 (linear time bound replacement for re) - bzip2 - OpenSSL - Batik (svg rasterizer in Java) C-based distributed node - ruby (we actually bound Rails websites with Erlang at some point) jinterface - OpenNLP
21 Foreign code Mistake #6: Using linked-in drivers for open source code that could crash/abort E.g.: ImageMagick will abort on bad input - External drivers are more suitable when external library is large, crash-prone or could leak (sometimes, the leak is in the glue ) - Passing pointers is possible but requires some logic, typically binding a pointer to the port
22 Foreign code Mistake #7: Using linked-in drivers for I/O intensive code E.g.: sqlite - Linked-in driver code is executed within a scheduler thread. Running for too long will starve other processes that will timeout, waiting for messages - Theoretically, we can use async threads (and we do with sqlite). However, enabling async threads (+A) has a huge impact on built-in I/O drivers - Performance could be worse with external drivers
23 Erlang technologies we love hate Erlang technologies we love
24 Erlang technologies we love hate dialyzer - part of our compilation cycle - found many bugs, typically inconsistencies between callers and callees - starting with -spec when defining exported funs We wish it would be fixed/improved: - horribly slow - sometimes blind - hard to understand - fails on code_change code - useless warnings that cannot be disabled
25 Erlang technologies we love hate snmp - makes it really easy to integrate erlang nodes within a monitoring solution (we use nagios and munin) HiPE OTP installed with --enable-native-lib and all our code compiled with +native - helps with CPU-bound work (including dialyzer ) - most patches we submitted were HiPE-related We are also grateful to the authors of: erlsom, mochiweb, nitrogen, zotonic
26 Thank you!
Building highly available systems in Erlang. Joe Armstrong
Building highly available systems in Erlang Joe Armstrong How can we get 10 nines reliability? Why Erlang? Erlang was designed to program fault-tolerant systems Overview n Types of HA systems n Architecture/Algorithms
Messaging with Erlang and Jabber
Messaging with Erlang and Jabber Erlang User Conference '04 21st. October 2004 Mickaël Rémond www.erlang-projects.org What are XMPP and Jabber? XMPP stands for extensible
THE BASIC SERVER IN ERLANG
THE BASIC SERVER IN ERLANG The first common pattern I'll describe is one we've already used. When writing the event server, we had what could be called a client-server model. The event server would calls
Erlang in Production. I wish I'd known that when I started Or This is nothing like the brochure :-(
Erlang in Production I wish I'd known that when I started Or This is nothing like the brochure :-( Who the Hell are you? ShoreTel Sky http://shoretelsky.com Enterprise Grade VoIP Elevator Pitch Our Systems
Graylog2 Lennart Koopmann, OSDC 2014. @_lennart / www.graylog2.org
Graylog2 Lennart Koopmann, OSDC 2014 @_lennart / www.graylog2.org About me 25 years old Living in Hamburg, Germany @_lennart on Twitter Co-Founder of TORCH - The Graylog2 company. Graylog2 history Started
A (Web) Face for Radio. NPR and Drupal7 David Moore
A (Web) Face for Radio NPR and Drupal7 David Moore Who am I? David Moore Developer at NPR Using Drupal since 4.7 Focus on non-profit + Drupal CrookedNumber on drupal.org, twitter, etc. What is NPR? A non-profit
Example of Standard API
16 Example of Standard API System Call Implementation Typically, a number associated with each system call System call interface maintains a table indexed according to these numbers The system call interface
A Look through the Android Stack
A Look through the Android Stack A Look through the Android Stack Free Electrons Maxime Ripard Free Electrons Embedded Linux Developers c Copyright 2004-2012, Free Electrons. Creative Commons BY-SA 3.0
Application Monitor Application (APPMON)
Application Monitor Application (APPMON) version 1.0 Magnus Fröberg 1997-05-02 Typeset in L A TEX from SGML source using the DOCBUILDER 3.0 Document System. Contents 1 APPMON Reference Manual 1 1.1 appmon
Lua as a business logic language in high load application. Ilya Martynov [email protected] CTO at IPONWEB
Lua as a business logic language in high load application Ilya Martynov [email protected] CTO at IPONWEB Company background Ad industry Custom development Technical platform with multiple components Custom
Linux Driver Devices. Why, When, Which, How?
Bertrand Mermet Sylvain Ract Linux Driver Devices. Why, When, Which, How? Since its creation in the early 1990 s Linux has been installed on millions of computers or embedded systems. These systems may
How To Write An Erlang Based Software Update Platform For Mobile Devices
Computer Science 14 (1) 2013 http://dx.doi.org/10.7494/csci.2013.14.1.129 Małgorzata Wielgus Przemysław Dąbek Roman Janusz Tomasz Kowal Wojciech Turek ERLANG-BASED SOFTWARE UPDATE PLATFORM FOR MOBILE DEVICES
Erlang at Facebook. Eugene Letuchy. Apr 30, 2009
1 Erlang at Facebook Eugene Letuchy Apr 30, 2009 2 Agenda 1 Facebook... and Erlang 2 Story of Facebook Chat 3 Facebook Chat Architecture 4 Key Erlang Features 5 Then and Now 3 Facebook... and Erlang 4
Erlang a platform for developing distributed software systems
Erlang a platform for developing distributed software systems Lars-Åke Fredlund 1 / 55 Problems of distributed systems Distributed programming is hard Challenges for concurrency: process coordination and
Inside the Erlang VM
Rev A Inside the Erlang VM with focus on SMP Prepared by Kenneth Lundin, Ericsson AB Presentation held at Erlang User Conference, Stockholm, November 13, 2008 1 Introduction The history of support for
Effective Java Programming. efficient software development
Effective Java Programming efficient software development Structure efficient software development what is efficiency? development process profiling during development what determines the performance of
HOSTING PYTHON WEB APPLICATIONS. Graham Dumpleton PyCon Australia Sydney 2011
HOSTING PYTHON WEB APPLICATIONS Graham Dumpleton PyCon Australia Sydney 2011 WEB APPLICATIONS Only a few well known Python web applications. WEB FRAMEWORKS Many Python web frameworks for building your
Typeset in L A TEX from SGML source using the DocBuilder-0.9.8 Document System.
OS Mon version 2.1 Typeset in L A TEX from SGML source using the DocBuilder-0.9.8 Document System. Contents 1 OS Mon Reference Manual 1 1.1 os mon............................................ 4 1.2 cpu
Ping Device Driver Help. 2009 Schneider Electric
2009 Schneider Electric 1 Table of Contents 1 Getting Started... 2 Help Contents... 2 Overview... 2 2 Device Setup... 2 Device Setup... 2 3 Automatic Tag... Database Generation 2 Automatic Tag... Database
Integrating Online Banking and Top-up Card into Payment Gateway
Internship Report Master of Software Engineering (2012-2014) Integrating Online Banking and Top-up Card into Payment Gateway Author: DAO Nguyen Vu Supervisor: HO Hoang Thuong January 11, 2015 Acknowledgment
A CMS framework in Erlang. Marc Worrell WhatWebWhat
A CMS framework in Erlang Marc Worrell WhatWebWhat Overview Yet another CMS? Why Erlang? Inside Zotonic Future directions Websites: a history First generation Static text, images. Second generation Database
White Paper. Java versus Ruby Frameworks in Practice STATE OF THE ART SOFTWARE DEVELOPMENT 1
White Paper Java versus Ruby Frameworks in Practice STATE OF THE ART SOFTWARE DEVELOPMENT 1 INTRODUCTION...3 FRAMEWORKS AND LANGUAGES...3 SECURITY AND UPGRADES...4 Major Upgrades...4 Minor Upgrades...5
Application of Android OS as Real-time Control Platform**
AUTOMATYKA/ AUTOMATICS 2013 Vol. 17 No. 2 http://dx.doi.org/10.7494/automat.2013.17.2.197 Krzysztof Ko³ek* Application of Android OS as Real-time Control Platform** 1. Introduction An android operating
Change Color for Export from Light Green to Orange when it Completes with Errors (31297)
ediscovery 5.3.1 Service Pack 8 Release Notes Document Date: July 6, 2015 2015 AccessData Group, Inc. All Rights Reserved Introduction This document lists the issues addressed by this release. All known
Chapter 6, The Operating System Machine Level
Chapter 6, The Operating System Machine Level 6.1 Virtual Memory 6.2 Virtual I/O Instructions 6.3 Virtual Instructions For Parallel Processing 6.4 Example Operating Systems 6.5 Summary Virtual Memory General
Microservices and Erlang/OTP. Christoph Iserlohn
Microservices and Erlang/OTP Christoph Iserlohn About me Senior Consultant @ innoq MacPorts Team member Agenda > Microservices > Erlang / OTP > How they fit together Microservices Attempt of definition
Real-time Big Data Analytics with Storm
Ron Bodkin Founder & CEO, Think Big June 2013 Real-time Big Data Analytics with Storm Leading Provider of Data Science and Engineering Services Accelerating Your Time to Value IMAGINE Strategy and Roadmap
Deployment patterns for Fusion Middleware. a best practice session by Simon Haslam & Jacco H. Landlust
Deployment patterns for Fusion Middleware a best practice session by Simon Haslam & Jacco H. Landlust 1 `id jacco` Oracle Since 2000, Linux since 2001 Independent Red Stack Administrator Oracle ACE since
JBoss & Infinispan open source data grids for the cloud era
JBoss & Infinispan open source data grids for the cloud era Dimitris Andreadis Manager of Software Engineering JBoss Application Server JBoss by Red Hat 5 th Free and Open Source Developer s Conference
Applications to Computational Financial and GPU Computing. May 16th. Dr. Daniel Egloff +41 44 520 01 17 +41 79 430 03 61
F# Applications to Computational Financial and GPU Computing May 16th Dr. Daniel Egloff +41 44 520 01 17 +41 79 430 03 61 Today! Why care about F#? Just another fashion?! Three success stories! How Alea.cuBase
Operating System Monitor Application (OS MON)
Operating System Monitor Application (OS MON) version 1.3 Joe Armstrong 1997-05-02 Typeset in L A TEX from SGML source using the DOCBUILDER 3.0 Document System. Contents 1 OS MON Reference Manual 1 1.1
Automated Performance Testing of Desktop Applications
By Ostap Elyashevskyy Automated Performance Testing of Desktop Applications Introduction For the most part, performance testing is associated with Web applications. This area is more or less covered by
Kerberos + Android. A Tale of Opportunity. Slide 1 / 39. Copyright 2012 yassl
Kerberos + Android A Tale of Opportunity Slide 1 / 39 Platform Decisions The Statistics Slide 2 / 39 Why Go Mobile? 80% of the world's population now has a mobile phone. ( 5 Billion Phones ) Slide 3 /
cubesql ReadMe 2005-2015 SQLabs, All rights reserved.
cubesql ReadMe 2005-2015 SQLabs, All rights reserved. Preface 3 System Requirements 4 Default installation paths 4 Five Minutes Guide 5 MacOS X 5 Windows 5 Linux 6 2 Preface cubesql is a fully featured
Scaling to Millions of Simultaneous Connections
Scaling to Millions of Simultaneous Connections Rick Reed WhatsApp Erlang Factory SF March 30, 2012 1 About... Joined WhatsApp in 2011 New to Erlang Background in performance of C-based systems on FreeBSD
Basic TCP/IP networking knowledge of client/server concepts Basic Linux commands and desktop navigation (if don't know we will cover it )
About Oracle WebLogic Server Oracle WebLogic Server is the industry's best application server for building and deploying enterprise Java EE applications with support for new features for lowering cost
Scaling Pinterest. Yash Nelapati Ascii Artist. Pinterest Engineering. Saturday, August 31, 13
Scaling Pinterest Yash Nelapati Ascii Artist Pinterest is... An online pinboard to organize and share what inspires you. Growth March 2010 Page views per day Mar 2010 Jan 2011 Jan 2012 May 2012 Growth
Server & Application Monitor
Server & Application Monitor agentless application & server monitoring SolarWinds Server & Application Monitor provides predictive insight to pinpoint app performance issues. This product contains a rich
Enterprise Application Monitoring with
Enterprise Application Monitoring with 11/10/2007 Presented by James Peel [email protected] / www.altinity.com 1 Who am I? James Peel - [email protected] Job: Managing Director of Altinity
Disco: Beyond MapReduce
Disco: Beyond MapReduce Prashanth Mundkur Nokia Mar 22, 2013 Outline BigData/MapReduce Disco Disco Pipeline Model Disco Roadmap BigData/MapReduce Data too big to fit in RAM/disk of any single machine Analyze
Connecting UniOP to Telemecanique PLC s
Connecting UniOP to Telemecanique PLC s Contents 1. Introduction... 2 2. Uni-Telway Driver... 2 2.1 Uni-Telway Addresses... 2 2.2 Designer Controller Setup... 4 2.3 Point To Point Connection Addressing...
Research and Design of Universal and Open Software Development Platform for Digital Home
Research and Design of Universal and Open Software Development Platform for Digital Home CaiFeng Cao School of Computer Wuyi University, Jiangmen 529020, China [email protected] Abstract. With the development
Using NSM for Event Notification. Abstract. with DM3, R4, and Win32 Devices
Using NSM for Event Notification with DM3, R4, and Win32 Devices Abstract This document explains why Native Synchronization Methods (NSM) is the best solution for controlling synchronization of DM3, R4,
NoSQL replacement for SQLite (for Beatstream) Antti-Jussi Kovalainen Seminar OHJ-1860: NoSQL databases
NoSQL replacement for SQLite (for Beatstream) Antti-Jussi Kovalainen Seminar OHJ-1860: NoSQL databases Background Inspiration: postgresapp.com demo.beatstream.fi (modern desktop browsers without
Creating a More Secure Device with Windows Embedded Compact 7. Douglas Boling Boling Consulting Inc.
Creating a More Secure Device with Windows Embedded Compact 7 Douglas Boling Boling Consulting Inc. About Douglas Boling Independent consultant specializing in Windows Mobile and Windows Embedded Compact
Performance Analysis of Android Platform
Performance Analysis of Android Platform Jawad Manzoor EMDC 21-Nov-2010 Table of Contents 1. Introduction... 3 2. Android Architecture... 3 3. Dalvik Virtual Machine... 4 3.1 Architecture of Dalvik VM...
Acronis Backup & Recovery: Events in Application Event Log of Windows http://kb.acronis.com/content/38327
Acronis Backup & Recovery: Events in Application Event Log of Windows http://kb.acronis.com/content/38327 Mod ule_i D Error _Cod e Error Description 1 1 PROCESSOR_NULLREF_ERROR 1 100 ERROR_PARSE_PAIR Failed
High Availability Solutions for the MariaDB and MySQL Database
High Availability Solutions for the MariaDB and MySQL Database 1 Introduction This paper introduces recommendations and some of the solutions used to create an availability or high availability environment
Preparing for the Big Oops! Disaster Recovery Sites for MySQL. Robert Hodges, CEO, Continuent MySQL Conference 2011
Preparing for the Big Oops! Disaster Recovery Sites for Robert Hodges, CEO, Continuent Conference 2011 Topics / Introductions / A Motivating Story / Master / Slave Disaster Recovery Replication Tungsten
Cluster Computing. ! Fault tolerance. ! Stateless. ! Throughput. ! Stateful. ! Response time. Architectures. Stateless vs. Stateful.
Architectures Cluster Computing Job Parallelism Request Parallelism 2 2010 VMware Inc. All rights reserved Replication Stateless vs. Stateful! Fault tolerance High availability despite failures If one
Multiprogramming. IT 3123 Hardware and Software Concepts. Program Dispatching. Multiprogramming. Program Dispatching. Program Dispatching
IT 3123 Hardware and Software Concepts Operating Systems II October 26 Multiprogramming Two or more application programs in memory. Consider one CPU and more than one program. This can be generalized to
Bigdata High Availability (HA) Architecture
Bigdata High Availability (HA) Architecture Introduction This whitepaper describes an HA architecture based on a shared nothing design. Each node uses commodity hardware and has its own local resources
By Wick Gankanda Updated: August 8, 2012
DATA SOURCE AND RESOURCE REFERENCE SETTINGS IN WEBSPHERE 7.0, RATIONAL APPLICATION DEVELOPER FOR WEBSPHERE VER 8 WITH JAVA 6 AND MICROSOFT SQL SERVER 2008 By Wick Gankanda Updated: August 8, 2012 Table
Vanilla44 New Features
Vanilla 4.4 New Features Author: Contact: Patrick Beaucamp [email protected] www.bpm-conseil.com www.freeanalysis.fr Date: October 2013 Document: Vanilla44 New Features Vanilla Version 4.4
Deploying and Monitoring Ruby on Rails A practical guide
Deploying and Monitoring Ruby on Rails A practical guide Mathias Meyer and Jonathan Weiss, 02.09.2008 Peritor GmbH Who are we? Jonathan Weiss Consultant for Peritor GmbH in Berlin Specialized in Rails,
CDH installation & Application Test Report
CDH installation & Application Test Report He Shouchun (SCUID: 00001008350, Email: [email protected]) Chapter 1. Prepare the virtual machine... 2 1.1 Download virtual machine software... 2 1.2 Plan the guest
Data and Machine Architecture for the Data Science Lab Workflow Development, Testing, and Production for Model Training, Evaluation, and Deployment
Data and Machine Architecture for the Data Science Lab Workflow Development, Testing, and Production for Model Training, Evaluation, and Deployment Rosaria Silipo Marco A. Zimmer [email protected]
How To Monitor A Server With Zabbix
& JavaEE Platform Monitoring A Good Match? Company Facts Jesta Digital is a leading global provider of next generation entertainment content and services for the digital consumer. subsidiary of Jesta Group,
OpenACC 2.0 and the PGI Accelerator Compilers
OpenACC 2.0 and the PGI Accelerator Compilers Michael Wolfe The Portland Group [email protected] This presentation discusses the additions made to the OpenACC API in Version 2.0. I will also present
mguard Device Manager Release Notes Version 1.6.1
mguard Device Manager Release Notes Version 1.6.1 Innominate Security Technologies AG Rudower Chaussee 13 12489 Berlin Germany Phone: +49 30 921028 0 Fax: +49 30 921028 020 [email protected] http://www.innominate.com/
Modern Web Development From Angle Brackets to Web Sockets
Modern Web Development From Angle Brackets to Web Sockets Pete Snyder Outline (or, what am i going to be going on about ) 1.What is the Web? 2.Why the web matters 3.What s unique about
E21 Mobile Users Guide
E21 Mobile Users Guide E21 Mobile is the Mobile CRM companion to TGI s Enterprise 21 ERP software. Designed with the mobile sales force in mind, E21 Mobile provides real-time access to numerous functions
MyISAM Default Storage Engine before MySQL 5.5 Table level locking Small footprint on disk Read Only during backups GIS and FTS indexing Copyright 2014, Oracle and/or its affiliates. All rights reserved.
Kony MobileFabric. Sync Windows Installation Manual - WebSphere. On-Premises. Release 6.5. Document Relevance and Accuracy
Kony MobileFabric Sync Windows Installation Manual - WebSphere On-Premises Release 6.5 Document Relevance and Accuracy This document is considered relevant to the Release stated on this title page and
Authorize.Net. Advanced Integration Method. Miva Merchant Module. Documentation for module version 1.43. Last Updated: 5/07/03
Authorize.Net Advanced Integration Method Miva Merchant Module Documentation for module version 1.43 Last Updated: 5/07/03 Module and documentation created by 4TheBest.net 4TheBest.net AIM Module Documentation
Resource Monitoring During Performance Testing. Experience Report by Johann du Plessis. Introduction. Planning for Monitoring
Resource Monitoring During Performance Testing Experience Report by Johann du Plessis Introduction During a recent review of performance testing projects I completed over the past 8 years, one of the goals
Outside In Image Export Technology SDK Quick Start Guide
Reference: 2009/02/06-8.3 Outside In Image Export Technology SDK Quick Start Guide This document provides an overview of the Outside In Image Export Software Developer s Kit (SDK). It includes download
MuL SDN Controller HOWTO for pre-packaged VM
MuL SDN Controller HOWTO for pre-packaged VM 1 P a g e Table of Contents 1 Starting the VM... 3 2 Using MuL controller... 3 2.1 Mul component overview... 3 2.2 Running MUL... 5 2.2.1 Running MuL s forwarding
Scaling Graphite Installations
Scaling Graphite Installations Graphite basics Graphite is a web based Graphing program for time series data series plots. Written in Python Consists of multiple separate daemons Has it's own storage backend
Ensuring scalability and performance with Drupal as your audience grows
Drupal performance and scalability Ensuring scalability and performance with Drupal as your audience grows Presented by Jon Anthony Bounty.com Northern and Shell (OK! Magazine etc) Drupal.org/project/
Mark Bennett. Search and the Virtual Machine
Mark Bennett Search and the Virtual Machine Agenda Intro / Business Drivers What to do with Search + Virtual What Makes Search Fast (or Slow!) Virtual Platforms Test Results Trends / Wrap Up / Q & A Business
Guideline for stresstest Page 1 of 6. Stress test
Guideline for stresstest Page 1 of 6 Stress test Objective: Show unacceptable problems with high parallel load. Crash, wrong processing, slow processing. Test Procedure: Run test cases with maximum number
Performance Testing of a Cloud Service
Performance Testing of a Cloud Service Trilesh Bhurtun, Junior Consultant, Capacitas Ltd Capacitas 2012 1 Introduction Objectives Environment Tests and Results Issues Summary Agenda Capacitas 2012 2 1
CGL Architecture Specification
CGL Architecture Specification Mika Karlstedt Helsinki 19th February 2003 Seminar paper for Seminar on High Availability and Timeliness in Linux University of Helsinki Department of Computer science i
Masters in Human Computer Interaction
Masters in Human Computer Interaction Programme Requirements Taught Element, and PG Diploma in Human Computer Interaction: 120 credits: IS5101 CS5001 CS5040 CS5041 CS5042 or CS5044 up to 30 credits from
Dave Stokes MySQL Community Manager
The Proper Care and Feeding of a MySQL Server for Busy Linux Admins Dave Stokes MySQL Community Manager Email: [email protected] Twiter: @Stoker Slides: slideshare.net/davidmstokes Safe Harbor Agreement
A Comparative Study on Vega-HTTP & Popular Open-source Web-servers
A Comparative Study on Vega-HTTP & Popular Open-source Web-servers Happiest People. Happiest Customers Contents Abstract... 3 Introduction... 3 Performance Comparison... 4 Architecture... 5 Diagram...
Masters in Advanced Computer Science
Masters in Advanced Computer Science Programme Requirements Taught Element, and PG Diploma in Advanced Computer Science: 120 credits: IS5101 CS5001 up to 30 credits from CS4100 - CS4450, subject to appropriate
A Generic Game Server
A Generic Game Server Jonatan Pålsson Richard Pannek Niklas Landin Mattias Petterson University of Gothenburg Department of Computer Science and Engineering Gothenburg, Sweden 2011 Bachelor s thesis 2011:44
Sample copy. Introduction To WebLogic Server Property of Web 10.3 Age Solutions Inc.
Introduction To WebLogic Server Property of Web 10.3 Age Solutions Inc. Objectives At the end of this chapter, participants should be able to: Understand basic WebLogic Server architecture Understand the
Log Management with Open-Source Tools. Risto Vaarandi rvaarandi 4T Y4H00 D0T C0M
Log Management with Open-Source Tools Risto Vaarandi rvaarandi 4T Y4H00 D0T C0M Outline Why do we need log collection and management? Why use open source tools? Widely used logging protocols and recently
Masters in Artificial Intelligence
Masters in Artificial Intelligence Programme Requirements Taught Element, and PG Diploma in Artificial Intelligence: 120 credits: IS5101 CS5001 CS5010 CS5011 CS4402 or CS5012 in total, up to 30 credits
Exploring Amazon EC2 for Scale-out Applications
Exploring Amazon EC2 for Scale-out Applications Presented by, MySQL & O Reilly Media, Inc. Morgan Tocker, MySQL Canada Carl Mercier, Defensio Introduction! Defensio is a spam filtering web service for
Masters in Networks and Distributed Systems
Masters in Networks and Distributed Systems Programme Requirements Taught Element, and PG Diploma in Networks and Distributed Systems: 120 credits: IS5101 CS5001 CS5021 CS4103 or CS5023 in total, up to
Oracle Enterprise Manager 12c New Capabilities for the DBA. Charlie Garry, Director, Product Management Oracle Server Technologies
Oracle Enterprise Manager 12c New Capabilities for the DBA Charlie Garry, Director, Product Management Oracle Server Technologies of DBAs admit doing nothing to address performance issues CHANGE AVOID
CentOS. Apache. 1 de 8. Pricing Features Customers Help & Community. Sign Up Login Help & Community. Articles & Tutorials. Questions. Chat.
1 de 8 Pricing Features Customers Help & Community Sign Up Login Help & Community Articles & Tutorials Questions Chat Blog Try this tutorial on an SSD cloud server. Includes 512MB RAM, 20GB SSD Disk, and
Dollar Universe SNMP Monitoring User Guide
Dollar Universe SNMP Monitoring User Guide Version: 6.6.01 Publication Date: 2016-02 Automic Software GmbH ii Copyright Copyright Automic and the Automic logo are trademarks owned by Automic Software GmbH
What is a stack? Do I need to know?
What is a stack? Do I need to know? WIMP, WAMP, LAMP, LIMP A collection of software that inter-operates to complete a task. Why think about it? Standards Scale Security 61.240.144.67 - "GET / HTTP/1.0"
Using MySQL for Big Data Advantage Integrate for Insight Sastry Vedantam [email protected]
Using MySQL for Big Data Advantage Integrate for Insight Sastry Vedantam [email protected] Agenda The rise of Big Data & Hadoop MySQL in the Big Data Lifecycle MySQL Solutions for Big Data Q&A
How To Fix A Fault Notification On A Network Security Platform 8.0.0 (Xc) (Xcus) (Network) (Networks) (Manual) (Manager) (Powerpoint) (Cisco) (Permanent
XC-Cluster Release Notes Network Security Platform 8.0 Revision A Contents About this document New features Resolved issues Known issues Installation instructions Product documentation About this document
FTP Client Engine Library for Visual dbase. Programmer's Manual
FTP Client Engine Library for Visual dbase Programmer's Manual (FCE4DB) Version 3.3 May 6, 2014 This software is provided as-is. There are no warranties, expressed or implied. MarshallSoft Computing, Inc.
What's new in httpd 2.2?
What's new in httpd 2.2? 2.1 Paul Querna [email protected] July 21, 2005 http://www.outoforder.cc/presentations/ 2.2? major.minor.patch Versioning Scheme: Even = Stable / General Availability 2.0.x &
