SlideShare una empresa de Scribd logo
SERVE LIKE A BOSS (PART ONE)
SOME CONCEPTS AND AN INTRODUCTION TO SERVER CONFIGURATION
27 Aug 2015
Hamed Nemati
SPOF (SINGLE POINT OF FAILURE)
• Hardware/Software interface
• It’s failure will cause whole
system fail
ROUND-ROBIN SCHEDULING
• No priority
• Simple
• Starvation-free
Usage:
• Process and network scheduler
• data packet scheduling
“Each person takes an equal share of something in turn”
CACHE EVERYWHERE!
When:
• Response time counts
• Accessing multiple times
(Heavy reads, light writes)
“Ram is the new disk”
CACHE EVERYWHERE!
Cache hit occurs when the
requested data can be found in
a cache, while a cache miss
occurs when it cannot.
BOTTLENECK
A bottleneck occurs when the
capacity of an application or a
computer system is severely
limited by a single component.
• Processor
• Communication link
• Disk IO
DATABASE CACHING
• Performance
• Availability: by continued service for applications that depend
only on cached tables even if the backend server is unavailable.
• Scalability
• Flexibility
TWO CACHING SOFTWARE
• Key / Value
• Up to 512MiB per Key
• Support data types
• Not only a cache mechanism
• Can perform persistence
• Simple Key / Value [String]
• Up to 1MiB per Key
• Faster than Redis
• Non-persistence
Use case:
User sessions caching
Use case:
Database caching
A SIMPLE REAL LIFE WEB ARCHITECTURE
User
Request
Web
Server
Web App
Database Cache ( Memcached )
Database ( MySql )
Server
Sessions
Cache
(Redis)
CONFIGURING A WEB SERVER
OPERATING SYSTEM
• Use Ubuntu when you have
more ram (otherwise CentOS fit
better)
• Use 32bit when you have less
ram
• Most of the time newer versions
of the OS require more initial
ram
• Always try to install packages
from OS repositories:
• Easy to update
• More stable and reliable
• More compatible with other apps
OPERATING SYSTEM CHALLENGES
• Configuring different distributions are different
• Configuring a 32bit OS may differ by it’s 64bit version
• Configuring different versions of a same distribution may differ
OPERATING SYSTEM CHALLENGES
Challenge: Distribution support
has finished and packages are
not maintained any more, so
you can not find a package or
the package is out dated
Solution: Use an external
repository to get the latest [or
your preferred] version of the
package (Like Remi and EPEL
for CentOS).
- Dedicated to my friends in NIGS
TO BE CONTINUED…
HAMED NEMATI
• hamed@atbox.io
• @hamednz
• New Idea Game Studio

Más contenido relacionado

La actualidad más candente

Velocity - NxtGen Oxford
Velocity - NxtGen OxfordVelocity - NxtGen Oxford
Velocity - NxtGen Oxford
Phil Pursglove
 
IT PRO|DEV CONNECTIONS 2013 - The X-Files of SQL Server
IT PRO|DEV CONNECTIONS 2013 - The X-Files of SQL Server IT PRO|DEV CONNECTIONS 2013 - The X-Files of SQL Server
IT PRO|DEV CONNECTIONS 2013 - The X-Files of SQL Server
Antonios Chatzipavlis
 
Sqlite Introduction
Sqlite IntroductionSqlite Introduction
Sqlite Introduction
Praveen Nair
 
[Mas 500] Various Topics
[Mas 500] Various Topics[Mas 500] Various Topics
[Mas 500] Various Topics
rahulbot
 
An Introduction to Membase
An Introduction to MembaseAn Introduction to Membase
An Introduction to Membase
Tim Lossen
 
Hyper-v for Windows Server 2012 Live Migration
Hyper-v for Windows Server 2012 Live MigrationHyper-v for Windows Server 2012 Live Migration
Hyper-v for Windows Server 2012 Live Migration
CTE Solutions Inc.
 

La actualidad más candente (20)

NFD9 - David Sinn, Real World Examples
NFD9 - David Sinn, Real World ExamplesNFD9 - David Sinn, Real World Examples
NFD9 - David Sinn, Real World Examples
 
What's new in MySQL 5.5? FOSDEM 2011
What's new in MySQL 5.5? FOSDEM 2011What's new in MySQL 5.5? FOSDEM 2011
What's new in MySQL 5.5? FOSDEM 2011
 
Secure your IT infrastructure with GNU/Linux
Secure your IT infrastructure  with GNU/LinuxSecure your IT infrastructure  with GNU/Linux
Secure your IT infrastructure with GNU/Linux
 
Docker Presentation from Spiceworks All Access
Docker Presentation from Spiceworks All AccessDocker Presentation from Spiceworks All Access
Docker Presentation from Spiceworks All Access
 
New features in OpenNebula 5.4, Jaime Melis
New features in OpenNebula 5.4, Jaime MelisNew features in OpenNebula 5.4, Jaime Melis
New features in OpenNebula 5.4, Jaime Melis
 
Velocity - NxtGen Oxford
Velocity - NxtGen OxfordVelocity - NxtGen Oxford
Velocity - NxtGen Oxford
 
IT PRO|DEV CONNECTIONS 2013 - The X-Files of SQL Server
IT PRO|DEV CONNECTIONS 2013 - The X-Files of SQL Server IT PRO|DEV CONNECTIONS 2013 - The X-Files of SQL Server
IT PRO|DEV CONNECTIONS 2013 - The X-Files of SQL Server
 
TechEvent 2019: Oracle Database Appliance M/L - Erfahrungen und Erfolgsmethod...
TechEvent 2019: Oracle Database Appliance M/L - Erfahrungen und Erfolgsmethod...TechEvent 2019: Oracle Database Appliance M/L - Erfahrungen und Erfolgsmethod...
TechEvent 2019: Oracle Database Appliance M/L - Erfahrungen und Erfolgsmethod...
 
Sqlite Introduction
Sqlite IntroductionSqlite Introduction
Sqlite Introduction
 
What’s the Deal with Containers, Anyway?
What’s the Deal with Containers, Anyway?What’s the Deal with Containers, Anyway?
What’s the Deal with Containers, Anyway?
 
[Mas 500] Various Topics
[Mas 500] Various Topics[Mas 500] Various Topics
[Mas 500] Various Topics
 
Roll your own FOSS cloud hosting
Roll your own FOSS cloud hostingRoll your own FOSS cloud hosting
Roll your own FOSS cloud hosting
 
Setting up a local WordPress Environment
Setting up a local WordPress EnvironmentSetting up a local WordPress Environment
Setting up a local WordPress Environment
 
An Introduction to Membase
An Introduction to MembaseAn Introduction to Membase
An Introduction to Membase
 
Vm mobility
Vm mobilityVm mobility
Vm mobility
 
Hyper-v for Windows Server 2012 Live Migration
Hyper-v for Windows Server 2012 Live MigrationHyper-v for Windows Server 2012 Live Migration
Hyper-v for Windows Server 2012 Live Migration
 
Mini-Training: NancyFX
Mini-Training: NancyFXMini-Training: NancyFX
Mini-Training: NancyFX
 
Networking in iOS NSURLSession & NSStream
Networking in iOS NSURLSession & NSStreamNetworking in iOS NSURLSession & NSStream
Networking in iOS NSURLSession & NSStream
 
TechTarget Event - Storage Architectures for the Modern Data Center - Howard ...
TechTarget Event - Storage Architectures for the Modern Data Center - Howard ...TechTarget Event - Storage Architectures for the Modern Data Center - Howard ...
TechTarget Event - Storage Architectures for the Modern Data Center - Howard ...
 
Server operating system file
Server operating system fileServer operating system file
Server operating system file
 

Similar a Serve like a boss (part one)

NGENSTOR_ODA_P2V_V5
NGENSTOR_ODA_P2V_V5NGENSTOR_ODA_P2V_V5
NGENSTOR_ODA_P2V_V5
UniFabric
 

Similar a Serve like a boss (part one) (20)

Modeling, estimating, and predicting Ceph (Linux Foundation - Vault 2015)
Modeling, estimating, and predicting Ceph (Linux Foundation - Vault 2015)Modeling, estimating, and predicting Ceph (Linux Foundation - Vault 2015)
Modeling, estimating, and predicting Ceph (Linux Foundation - Vault 2015)
 
NGENSTOR_ODA_P2V_V5
NGENSTOR_ODA_P2V_V5NGENSTOR_ODA_P2V_V5
NGENSTOR_ODA_P2V_V5
 
Disaggregated Container Attached Storage - Yet Another Topology with What Pur...
Disaggregated Container Attached Storage - Yet Another Topology with What Pur...Disaggregated Container Attached Storage - Yet Another Topology with What Pur...
Disaggregated Container Attached Storage - Yet Another Topology with What Pur...
 
Disaggregated Container Attached Storage - Yet Another Topology with What Pur...
Disaggregated Container Attached Storage - Yet Another Topology with What Pur...Disaggregated Container Attached Storage - Yet Another Topology with What Pur...
Disaggregated Container Attached Storage - Yet Another Topology with What Pur...
 
Developing a Ceph Appliance for Secure Environments
Developing a Ceph Appliance for Secure EnvironmentsDeveloping a Ceph Appliance for Secure Environments
Developing a Ceph Appliance for Secure Environments
 
OSDC 2016 - Tuning Linux for your Database by Colin Charles
OSDC 2016 - Tuning Linux for your Database by Colin CharlesOSDC 2016 - Tuning Linux for your Database by Colin Charles
OSDC 2016 - Tuning Linux for your Database by Colin Charles
 
Teradata introduction - A basic introduction for Taradate system Architecture
Teradata introduction - A basic introduction for Taradate system ArchitectureTeradata introduction - A basic introduction for Taradate system Architecture
Teradata introduction - A basic introduction for Taradate system Architecture
 
(ATS6-PLAT06) Maximizing AEP Performance
(ATS6-PLAT06) Maximizing AEP Performance(ATS6-PLAT06) Maximizing AEP Performance
(ATS6-PLAT06) Maximizing AEP Performance
 
VMworld Europe 2014: Advanced SQL Server on vSphere Techniques and Best Pract...
VMworld Europe 2014: Advanced SQL Server on vSphere Techniques and Best Pract...VMworld Europe 2014: Advanced SQL Server on vSphere Techniques and Best Pract...
VMworld Europe 2014: Advanced SQL Server on vSphere Techniques and Best Pract...
 
Tuning Linux for your database FLOSSUK 2016
Tuning Linux for your database FLOSSUK 2016Tuning Linux for your database FLOSSUK 2016
Tuning Linux for your database FLOSSUK 2016
 
DBAM-01.pdf
DBAM-01.pdfDBAM-01.pdf
DBAM-01.pdf
 
Database Administration & Management - 01
Database Administration & Management - 01Database Administration & Management - 01
Database Administration & Management - 01
 
Pascal benois performance_troubleshooting-spsbe18
Pascal benois performance_troubleshooting-spsbe18Pascal benois performance_troubleshooting-spsbe18
Pascal benois performance_troubleshooting-spsbe18
 
Drupal performance
Drupal performanceDrupal performance
Drupal performance
 
Running MySQL on Linux
Running MySQL on LinuxRunning MySQL on Linux
Running MySQL on Linux
 
Midwest PHP - Scaling Magento
Midwest PHP - Scaling MagentoMidwest PHP - Scaling Magento
Midwest PHP - Scaling Magento
 
Cloud computing UNIT 2.1 presentation in
Cloud computing UNIT 2.1 presentation inCloud computing UNIT 2.1 presentation in
Cloud computing UNIT 2.1 presentation in
 
Ashnik EnterpriseDB PostgreSQL - A real alternative to Oracle
Ashnik EnterpriseDB PostgreSQL - A real alternative to Oracle Ashnik EnterpriseDB PostgreSQL - A real alternative to Oracle
Ashnik EnterpriseDB PostgreSQL - A real alternative to Oracle
 
RavenDB embedded at massive scales
RavenDB embedded at massive scalesRavenDB embedded at massive scales
RavenDB embedded at massive scales
 
REDIS (Remote Dictionary Server)
REDIS (Remote Dictionary Server)REDIS (Remote Dictionary Server)
REDIS (Remote Dictionary Server)
 

Último

How to Position Your Globus Data Portal for Success Ten Good Practices
How to Position Your Globus Data Portal for Success Ten Good PracticesHow to Position Your Globus Data Portal for Success Ten Good Practices
How to Position Your Globus Data Portal for Success Ten Good Practices
Globus
 

Último (20)

Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
 
First Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User EndpointsFirst Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User Endpoints
 
Abortion ^Clinic ^%[+971588192166''] Abortion Pill Al Ain (?@?) Abortion Pill...
Abortion ^Clinic ^%[+971588192166''] Abortion Pill Al Ain (?@?) Abortion Pill...Abortion ^Clinic ^%[+971588192166''] Abortion Pill Al Ain (?@?) Abortion Pill...
Abortion ^Clinic ^%[+971588192166''] Abortion Pill Al Ain (?@?) Abortion Pill...
 
Into the Box 2024 - Keynote Day 2 Slides.pdf
Into the Box 2024 - Keynote Day 2 Slides.pdfInto the Box 2024 - Keynote Day 2 Slides.pdf
Into the Box 2024 - Keynote Day 2 Slides.pdf
 
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.ILBeyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
 
Cyaniclab : Software Development Agency Portfolio.pdf
Cyaniclab : Software Development Agency Portfolio.pdfCyaniclab : Software Development Agency Portfolio.pdf
Cyaniclab : Software Development Agency Portfolio.pdf
 
Enhancing Research Orchestration Capabilities at ORNL.pdf
Enhancing Research Orchestration Capabilities at ORNL.pdfEnhancing Research Orchestration Capabilities at ORNL.pdf
Enhancing Research Orchestration Capabilities at ORNL.pdf
 
De mooiste recreatieve routes ontdekken met RouteYou en FME
De mooiste recreatieve routes ontdekken met RouteYou en FMEDe mooiste recreatieve routes ontdekken met RouteYou en FME
De mooiste recreatieve routes ontdekken met RouteYou en FME
 
A Comprehensive Appium Guide for Hybrid App Automation Testing.pdf
A Comprehensive Appium Guide for Hybrid App Automation Testing.pdfA Comprehensive Appium Guide for Hybrid App Automation Testing.pdf
A Comprehensive Appium Guide for Hybrid App Automation Testing.pdf
 
Designing for Privacy in Amazon Web Services
Designing for Privacy in Amazon Web ServicesDesigning for Privacy in Amazon Web Services
Designing for Privacy in Amazon Web Services
 
How to Position Your Globus Data Portal for Success Ten Good Practices
How to Position Your Globus Data Portal for Success Ten Good PracticesHow to Position Your Globus Data Portal for Success Ten Good Practices
How to Position Your Globus Data Portal for Success Ten Good Practices
 
Studiovity film pre-production and screenwriting software
Studiovity film pre-production and screenwriting softwareStudiovity film pre-production and screenwriting software
Studiovity film pre-production and screenwriting software
 
AI/ML Infra Meetup | Reducing Prefill for LLM Serving in RAG
AI/ML Infra Meetup | Reducing Prefill for LLM Serving in RAGAI/ML Infra Meetup | Reducing Prefill for LLM Serving in RAG
AI/ML Infra Meetup | Reducing Prefill for LLM Serving in RAG
 
Accelerate Enterprise Software Engineering with Platformless
Accelerate Enterprise Software Engineering with PlatformlessAccelerate Enterprise Software Engineering with Platformless
Accelerate Enterprise Software Engineering with Platformless
 
Developing Distributed High-performance Computing Capabilities of an Open Sci...
Developing Distributed High-performance Computing Capabilities of an Open Sci...Developing Distributed High-performance Computing Capabilities of an Open Sci...
Developing Distributed High-performance Computing Capabilities of an Open Sci...
 
Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024
 
Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...
Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...
Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...
 
Large Language Models and the End of Programming
Large Language Models and the End of ProgrammingLarge Language Models and the End of Programming
Large Language Models and the End of Programming
 
GraphAware - Transforming policing with graph-based intelligence analysis
GraphAware - Transforming policing with graph-based intelligence analysisGraphAware - Transforming policing with graph-based intelligence analysis
GraphAware - Transforming policing with graph-based intelligence analysis
 
Breaking the Code : A Guide to WhatsApp Business API.pdf
Breaking the Code : A Guide to WhatsApp Business API.pdfBreaking the Code : A Guide to WhatsApp Business API.pdf
Breaking the Code : A Guide to WhatsApp Business API.pdf
 

Serve like a boss (part one)

  • 1. SERVE LIKE A BOSS (PART ONE) SOME CONCEPTS AND AN INTRODUCTION TO SERVER CONFIGURATION 27 Aug 2015 Hamed Nemati
  • 2. SPOF (SINGLE POINT OF FAILURE) • Hardware/Software interface • It’s failure will cause whole system fail
  • 3. ROUND-ROBIN SCHEDULING • No priority • Simple • Starvation-free Usage: • Process and network scheduler • data packet scheduling “Each person takes an equal share of something in turn”
  • 4. CACHE EVERYWHERE! When: • Response time counts • Accessing multiple times (Heavy reads, light writes) “Ram is the new disk”
  • 5. CACHE EVERYWHERE! Cache hit occurs when the requested data can be found in a cache, while a cache miss occurs when it cannot.
  • 6. BOTTLENECK A bottleneck occurs when the capacity of an application or a computer system is severely limited by a single component. • Processor • Communication link • Disk IO
  • 7. DATABASE CACHING • Performance • Availability: by continued service for applications that depend only on cached tables even if the backend server is unavailable. • Scalability • Flexibility
  • 8. TWO CACHING SOFTWARE • Key / Value • Up to 512MiB per Key • Support data types • Not only a cache mechanism • Can perform persistence • Simple Key / Value [String] • Up to 1MiB per Key • Faster than Redis • Non-persistence Use case: User sessions caching Use case: Database caching
  • 9. A SIMPLE REAL LIFE WEB ARCHITECTURE User Request Web Server Web App Database Cache ( Memcached ) Database ( MySql ) Server Sessions Cache (Redis)
  • 11. OPERATING SYSTEM • Use Ubuntu when you have more ram (otherwise CentOS fit better) • Use 32bit when you have less ram • Most of the time newer versions of the OS require more initial ram • Always try to install packages from OS repositories: • Easy to update • More stable and reliable • More compatible with other apps
  • 12. OPERATING SYSTEM CHALLENGES • Configuring different distributions are different • Configuring a 32bit OS may differ by it’s 64bit version • Configuring different versions of a same distribution may differ
  • 13. OPERATING SYSTEM CHALLENGES Challenge: Distribution support has finished and packages are not maintained any more, so you can not find a package or the package is out dated Solution: Use an external repository to get the latest [or your preferred] version of the package (Like Remi and EPEL for CentOS).
  • 14. - Dedicated to my friends in NIGS TO BE CONTINUED…
  • 15. HAMED NEMATI • hamed@atbox.io • @hamednz • New Idea Game Studio