SlideShare ist ein Scribd-Unternehmen logo
1 von 34
SERVER SIDE BASICS
       Keith Swallow
  PDX Web & Design Meetup
TONIGHT

• DNS: What     Does 72.26.203.99 Mean?

• HTTP: Its   Just Text!

• MVC: The Way      of Web Apps

• Recipes: Login   and Email

• Scaling: More, Smaller, Faster
DNS
What Do Those Numbers Mean?
DOMAIN NAMING SERVICE


• Computers    are bad with names, prefer numbers

• People   are bad with numbers, prefer names

• DNS   bridges the gap
• You   type http://xkcd.com in a browser

• Your   computer asks its local DNS server where xkcd.com is

• That   DNS server asks an authoritative server

• Then   relays the IP address (72.26.203.99)
DOMAIN NAMING SERVICE

                where is xkcd.com?




your computer
                                     DNS server
DOMAIN NAMING SERVICE

                where is xkcd.com?


                                                  where is xkcd.com?

your computer
                                     DNS server




                                                                   authoritative
                                                                   DNS server
DOMAIN NAMING SERVICE

                where is xkcd.com?


                                                  72.26.203.99

your computer
                                     DNS server




                                                                 authoritative
                                                                 DNS server
DOMAIN NAMING SERVICE

                72.26.203.99


                                            72.26.203.99

your computer
                               DNS server




                                                           authoritative
                                                           DNS server
DOMAIN NAMING SERVICE

                72.26.203.99


                                                  72.26.203.99

your computer
                                     DNS server




                                                                 authoritative
                                                                 DNS server
                       xkcd.com
                      72.26.203.99
HTTP
Its Just Text!
HYPER TEXT TRANSFER
             PROTOCOL
• Request

 • Ask   for data

• Response

 • Read     response headers

 • Act   on response body

• Repeat
HTTP VERBS


• GET

• POST

• PUT

• DELETE
HTTP REQUEST

Host: xkcd.com

User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.3) Gecko/
  20100401 Firefox/3.6.3

Accept: text/html,application/xhtml+xml,application/xml;

Accept-Language: en-us,en;

Accept-Encoding: gzip,deflate

Accept-Charset: ISO-8859-1,utf-8;

Keep-Alive: 115
HTTP RESPONSE HEADERS
Vary: Accept-Encoding

Last-Modified: Mon, 21 Feb 2011 05:00:08 GMT

Etag: "2060469139"

Content-Type: text/html

Accept-Ranges: bytes

Date: Tue, 22 Feb 2011 18:28:44 GMT

Server: lighttpd/1.4.19

Content-Length: 2799
HTTP RESPONSE BODY
<?xml version="1.0" encoding="utf-8" ?>


<?xml-stylesheet href="http://imgs.xkcd.com/s/c40a9f8.css" type="text/css" media="screen" ?>


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">


<html xmlns="http://www.w3.org/1999/xhtml">


<head>


 <title>xkcd: Computer Problems</title>


 <link rel="stylesheet" type="text/css" href="http://imgs.xkcd.com/s/c40a9f8.css" media="screen" title="Default" />


<link rel="alternate" type="application/atom+xml" title="Atom 1.0" href="/atom.xml" />


 <link rel="alternate" type="application/rss+xml" title="RSS 2.0" href="/rss.xml" />
HTTP RESPONSE BODY
MVC
The Way of Web Apps
MODEL-VIEW-CONTROLLER

• Controller

  • Handles    the request and sends it to the correct model(s)

• Model

  • Business   logic and abstract representation of domain entities

• View

  • Display   of information contained in models
REQUEST FLOW

 Browser   Controller




  View      Model
RAILS MVC & RECIPES



• Logon

• Email
SCALING
More, Smaller, Faster
SCALING

• Horizontal    Scaling (More)

  • Throw     more hardware at the problem

• Vertical   Scaling (Smaller)

  • Cut   the problem into smaller chunks

• Caching    (Faster)

  • Increase   response speed, reduce load
HORIZONTAL SCALING

• Add more hardware to
 deliver the same content
                                       your computer
                            xkcd.com




   web
HORIZONTAL SCALING

• Add more hardware to
 deliver the same content
                                       your computer
                            xkcd.com




   web
  images
HORIZONTAL SCALING

• Add more hardware to
 deliver the same content
                                       your computer
                            xkcd.com




   web
  images
  database
HORIZONTAL SCALING

• Add more hardware to
 deliver the same content
                                       your computer
                            xkcd.com




   web
  images
  database
HORIZONTAL SCALING

• Add more hardware to
 deliver the same content
                                       your computer
                            xkcd.com




   web
  images
  database
VERTICAL SCALING
                            xkcd.com


                            web
                          images
                          database



   your computer



• Break the system into
 specialized parts
VERTICAL SCALING
                          xkcd.com


                          web




                                 images
   your computer
                                database


• Break the system into
 specialized parts
VERTICAL SCALING
                          xkcd.com


                          web




                                 images
   your computer



• Break the system into
 specialized parts                        database
VERTICAL SCALING
                             xkcd.com


                             cache




  your computer

                                          web

• Respond   quickly to the              images
                                        database
 request
QUESTIONS?
Speak now or forever hold your peace
THANK YOU!
    Keith Swallow
     keithcelt.com
 twitter.com/keithcelt
 keithcelt@gmail.com

Weitere ähnliche Inhalte

Was ist angesagt?

Deep Dive Into Windows Server 2012 Hyper-V
Deep Dive Into Windows Server 2012 Hyper-VDeep Dive Into Windows Server 2012 Hyper-V
Deep Dive Into Windows Server 2012 Hyper-VLai Yoong Seng
 
What’s new in windows server 2012
What’s new in windows server 2012What’s new in windows server 2012
What’s new in windows server 2012Alex de Jong
 
windows server 2012 R2
windows server 2012 R2windows server 2012 R2
windows server 2012 R2Gol D Roger
 
Getting Started With Your Virtual Dedicated Server
Getting Started With Your Virtual Dedicated ServerGetting Started With Your Virtual Dedicated Server
Getting Started With Your Virtual Dedicated Serverwebhostingguy
 
What's New in Windows Server 2012 R2
What's New in Windows Server 2012 R2What's New in Windows Server 2012 R2
What's New in Windows Server 2012 R2Aidan Finn
 
Cloud Computing & Scaling Web Apps
Cloud Computing & Scaling Web AppsCloud Computing & Scaling Web Apps
Cloud Computing & Scaling Web AppsMark Slingsby
 
70-410 Practice Test
70-410 Practice Test70-410 Practice Test
70-410 Practice Testwrailebo
 
Selecting the correct hypervisor for CloudStack 4.5
Selecting the correct hypervisor for CloudStack 4.5Selecting the correct hypervisor for CloudStack 4.5
Selecting the correct hypervisor for CloudStack 4.5Tim Mackey
 
KoprowskiT_SQLSat152_Bulgaria_HighAvailabilityOfSQLintheContextOfSLA
KoprowskiT_SQLSat152_Bulgaria_HighAvailabilityOfSQLintheContextOfSLAKoprowskiT_SQLSat152_Bulgaria_HighAvailabilityOfSQLintheContextOfSLA
KoprowskiT_SQLSat152_Bulgaria_HighAvailabilityOfSQLintheContextOfSLATobias Koprowski
 
Scaling Xen within Rackspace Cloud Servers
Scaling Xen within Rackspace Cloud ServersScaling Xen within Rackspace Cloud Servers
Scaling Xen within Rackspace Cloud ServersThe Linux Foundation
 
Hypervisor selection in CloudStack
Hypervisor selection in CloudStackHypervisor selection in CloudStack
Hypervisor selection in CloudStackTim Mackey
 
Microsoft Offical Course 20410C_12
Microsoft Offical Course 20410C_12Microsoft Offical Course 20410C_12
Microsoft Offical Course 20410C_12gameaxt
 
DotNetNuke on Azure Cloud Servers
DotNetNuke on Azure Cloud ServersDotNetNuke on Azure Cloud Servers
DotNetNuke on Azure Cloud Serversbrchapman
 
Windows Azure Design Patterns
Windows Azure Design PatternsWindows Azure Design Patterns
Windows Azure Design PatternsDavid Pallmann
 
CloudStack DC Meetup - Apache CloudStack Overview and 4.1/4.2 Preview
CloudStack DC Meetup - Apache CloudStack Overview and 4.1/4.2 PreviewCloudStack DC Meetup - Apache CloudStack Overview and 4.1/4.2 Preview
CloudStack DC Meetup - Apache CloudStack Overview and 4.1/4.2 PreviewChip Childers
 
Magento Imagine 2013: Fabrizio Branca - Learning To Fly: How Angry Birds Reac...
Magento Imagine 2013: Fabrizio Branca - Learning To Fly: How Angry Birds Reac...Magento Imagine 2013: Fabrizio Branca - Learning To Fly: How Angry Birds Reac...
Magento Imagine 2013: Fabrizio Branca - Learning To Fly: How Angry Birds Reac...AOE
 

Was ist angesagt? (20)

Deep Dive Into Windows Server 2012 Hyper-V
Deep Dive Into Windows Server 2012 Hyper-VDeep Dive Into Windows Server 2012 Hyper-V
Deep Dive Into Windows Server 2012 Hyper-V
 
What’s new in windows server 2012
What’s new in windows server 2012What’s new in windows server 2012
What’s new in windows server 2012
 
windows server 2012 R2
windows server 2012 R2windows server 2012 R2
windows server 2012 R2
 
Getting Started With Your Virtual Dedicated Server
Getting Started With Your Virtual Dedicated ServerGetting Started With Your Virtual Dedicated Server
Getting Started With Your Virtual Dedicated Server
 
What's New in Windows Server 2012 R2
What's New in Windows Server 2012 R2What's New in Windows Server 2012 R2
What's New in Windows Server 2012 R2
 
Cloud Computing & Scaling Web Apps
Cloud Computing & Scaling Web AppsCloud Computing & Scaling Web Apps
Cloud Computing & Scaling Web Apps
 
Art of Using Xen at Scale
Art of Using Xen at ScaleArt of Using Xen at Scale
Art of Using Xen at Scale
 
70-410 Practice Test
70-410 Practice Test70-410 Practice Test
70-410 Practice Test
 
Selecting the correct hypervisor for CloudStack 4.5
Selecting the correct hypervisor for CloudStack 4.5Selecting the correct hypervisor for CloudStack 4.5
Selecting the correct hypervisor for CloudStack 4.5
 
SharePoint on Azure
SharePoint on Azure SharePoint on Azure
SharePoint on Azure
 
KoprowskiT_SQLSat152_Bulgaria_HighAvailabilityOfSQLintheContextOfSLA
KoprowskiT_SQLSat152_Bulgaria_HighAvailabilityOfSQLintheContextOfSLAKoprowskiT_SQLSat152_Bulgaria_HighAvailabilityOfSQLintheContextOfSLA
KoprowskiT_SQLSat152_Bulgaria_HighAvailabilityOfSQLintheContextOfSLA
 
Scaling Xen within Rackspace Cloud Servers
Scaling Xen within Rackspace Cloud ServersScaling Xen within Rackspace Cloud Servers
Scaling Xen within Rackspace Cloud Servers
 
Hypervisor selection in CloudStack
Hypervisor selection in CloudStackHypervisor selection in CloudStack
Hypervisor selection in CloudStack
 
Microsoft Offical Course 20410C_12
Microsoft Offical Course 20410C_12Microsoft Offical Course 20410C_12
Microsoft Offical Course 20410C_12
 
EMAIL
EMAIL EMAIL
EMAIL
 
DotNetNuke on Azure Cloud Servers
DotNetNuke on Azure Cloud ServersDotNetNuke on Azure Cloud Servers
DotNetNuke on Azure Cloud Servers
 
Windows Azure Design Patterns
Windows Azure Design PatternsWindows Azure Design Patterns
Windows Azure Design Patterns
 
CloudStack DC Meetup - Apache CloudStack Overview and 4.1/4.2 Preview
CloudStack DC Meetup - Apache CloudStack Overview and 4.1/4.2 PreviewCloudStack DC Meetup - Apache CloudStack Overview and 4.1/4.2 Preview
CloudStack DC Meetup - Apache CloudStack Overview and 4.1/4.2 Preview
 
Server 2008 R2 Yeniliklər
Server 2008 R2 YeniliklərServer 2008 R2 Yeniliklər
Server 2008 R2 Yeniliklər
 
Magento Imagine 2013: Fabrizio Branca - Learning To Fly: How Angry Birds Reac...
Magento Imagine 2013: Fabrizio Branca - Learning To Fly: How Angry Birds Reac...Magento Imagine 2013: Fabrizio Branca - Learning To Fly: How Angry Birds Reac...
Magento Imagine 2013: Fabrizio Branca - Learning To Fly: How Angry Birds Reac...
 

Andere mochten auch

Pmw2 k3ni 1-2b
Pmw2 k3ni 1-2bPmw2 k3ni 1-2b
Pmw2 k3ni 1-2bhariclant1
 
Deploying and configuring dns service
Deploying and configuring dns serviceDeploying and configuring dns service
Deploying and configuring dns servicelatoniasmith
 
Pmw2 k3ni 1-1b
Pmw2 k3ni 1-1bPmw2 k3ni 1-1b
Pmw2 k3ni 1-1bhariclant1
 
Pmw2 k3ni 1-2a
Pmw2 k3ni 1-2aPmw2 k3ni 1-2a
Pmw2 k3ni 1-2ahariclant1
 
Pmw2 k3ni 1-3a
Pmw2 k3ni 1-3aPmw2 k3ni 1-3a
Pmw2 k3ni 1-3ahariclant1
 
Windows server 2012_r2_networking_white_paper material
Windows server 2012_r2_networking_white_paper materialWindows server 2012_r2_networking_white_paper material
Windows server 2012_r2_networking_white_paper materialJesus Garcia Guevara
 
CRISPR Gene Editing Congress, 25-27 February 2015 in Boston, MA
CRISPR Gene Editing Congress, 25-27 February 2015 in Boston, MACRISPR Gene Editing Congress, 25-27 February 2015 in Boston, MA
CRISPR Gene Editing Congress, 25-27 February 2015 in Boston, MADiane McKenna
 
Installing active directory, dns and dhcp to
Installing active directory, dns and dhcp toInstalling active directory, dns and dhcp to
Installing active directory, dns and dhcp toabayazed
 
6421 configuring and troubleshooting win server 2008 network infrastructure
6421   configuring and troubleshooting win server 2008 network infrastructure6421   configuring and troubleshooting win server 2008 network infrastructure
6421 configuring and troubleshooting win server 2008 network infrastructurebestip
 
Dns protocol design attacks and security
Dns protocol design attacks and securityDns protocol design attacks and security
Dns protocol design attacks and securityMichael Earls
 
Session 4 Tp 4
Session 4 Tp 4Session 4 Tp 4
Session 4 Tp 4githe26200
 
How to configure dns server(2)
How to configure dns server(2)How to configure dns server(2)
How to configure dns server(2)Amandeep Kaur
 

Andere mochten auch (20)

Pmw2 k3ni 1-2b
Pmw2 k3ni 1-2bPmw2 k3ni 1-2b
Pmw2 k3ni 1-2b
 
Deploying and configuring dns service
Deploying and configuring dns serviceDeploying and configuring dns service
Deploying and configuring dns service
 
Pmw2 k3ni 1-1b
Pmw2 k3ni 1-1bPmw2 k3ni 1-1b
Pmw2 k3ni 1-1b
 
Pmw2 k3ni 1-2a
Pmw2 k3ni 1-2aPmw2 k3ni 1-2a
Pmw2 k3ni 1-2a
 
Linux04 dns 2
Linux04 dns 2Linux04 dns 2
Linux04 dns 2
 
Pmw2 k3ni 1-3a
Pmw2 k3ni 1-3aPmw2 k3ni 1-3a
Pmw2 k3ni 1-3a
 
ALCLS
ALCLSALCLS
ALCLS
 
PGCA_Agenda 2017
PGCA_Agenda 2017PGCA_Agenda 2017
PGCA_Agenda 2017
 
6421 b Module-13
6421 b Module-136421 b Module-13
6421 b Module-13
 
Windows server 2012_r2_networking_white_paper material
Windows server 2012_r2_networking_white_paper materialWindows server 2012_r2_networking_white_paper material
Windows server 2012_r2_networking_white_paper material
 
DNS Presentation
DNS PresentationDNS Presentation
DNS Presentation
 
CRISPR Gene Editing Congress, 25-27 February 2015 in Boston, MA
CRISPR Gene Editing Congress, 25-27 February 2015 in Boston, MACRISPR Gene Editing Congress, 25-27 February 2015 in Boston, MA
CRISPR Gene Editing Congress, 25-27 February 2015 in Boston, MA
 
Installing active directory, dns and dhcp to
Installing active directory, dns and dhcp toInstalling active directory, dns and dhcp to
Installing active directory, dns and dhcp to
 
6421 configuring and troubleshooting win server 2008 network infrastructure
6421   configuring and troubleshooting win server 2008 network infrastructure6421   configuring and troubleshooting win server 2008 network infrastructure
6421 configuring and troubleshooting win server 2008 network infrastructure
 
Dns protocol design attacks and security
Dns protocol design attacks and securityDns protocol design attacks and security
Dns protocol design attacks and security
 
Essa lab week 1
Essa lab week 1Essa lab week 1
Essa lab week 1
 
6421 b Module-03
6421 b Module-036421 b Module-03
6421 b Module-03
 
DNS Attacks
DNS AttacksDNS Attacks
DNS Attacks
 
Session 4 Tp 4
Session 4 Tp 4Session 4 Tp 4
Session 4 Tp 4
 
How to configure dns server(2)
How to configure dns server(2)How to configure dns server(2)
How to configure dns server(2)
 

Ähnlich wie Server Side Basics

Running your Windows Enterprise Workloads on AWS - Technical 201
Running your Windows Enterprise Workloads on AWS - Technical 201Running your Windows Enterprise Workloads on AWS - Technical 201
Running your Windows Enterprise Workloads on AWS - Technical 201Amazon Web Services
 
AWS Summit Auckland - Running your Enterprise Windows Workload on AWS
AWS Summit Auckland  - Running your Enterprise Windows Workload on AWSAWS Summit Auckland  - Running your Enterprise Windows Workload on AWS
AWS Summit Auckland - Running your Enterprise Windows Workload on AWSAmazon Web Services
 
Presentation v mware, microsoft, or citrix whose virtual desktop
Presentation   v mware, microsoft, or citrix whose virtual desktopPresentation   v mware, microsoft, or citrix whose virtual desktop
Presentation v mware, microsoft, or citrix whose virtual desktopsolarisyourep
 
Presentation virtual desktops why is this so hot
Presentation   virtual desktops why is this so hotPresentation   virtual desktops why is this so hot
Presentation virtual desktops why is this so hotsolarisyourep
 
Summit301 hdx media stream for flash configuration and troubleshooting
Summit301   hdx media stream for flash configuration and troubleshootingSummit301   hdx media stream for flash configuration and troubleshooting
Summit301 hdx media stream for flash configuration and troubleshootingsolarisyougood
 
Getting started with MariaDB with Docker
Getting started with MariaDB with DockerGetting started with MariaDB with Docker
Getting started with MariaDB with DockerMariaDB plc
 
Creating Your Virtual Data Center: VPC Fundamentals and Connectivity Options
Creating Your Virtual Data Center: VPC Fundamentals and Connectivity OptionsCreating Your Virtual Data Center: VPC Fundamentals and Connectivity Options
Creating Your Virtual Data Center: VPC Fundamentals and Connectivity OptionsAmazon Web Services
 
Amazon WorkSpaces - Fully Managed Desktops in the Cloud
Amazon WorkSpaces - Fully Managed Desktops in the CloudAmazon WorkSpaces - Fully Managed Desktops in the Cloud
Amazon WorkSpaces - Fully Managed Desktops in the CloudAmazon Web Services
 
Server Virtualization
Server VirtualizationServer Virtualization
Server Virtualizationwebhostingguy
 
Amazon WorkSpaces - Fully Managed Desktops in the Cloud
Amazon WorkSpaces - Fully Managed Desktops in the Cloud Amazon WorkSpaces - Fully Managed Desktops in the Cloud
Amazon WorkSpaces - Fully Managed Desktops in the Cloud Amazon Web Services
 
Expandindo seu Data Center com uma infraestrutura hibrida
Expandindo seu Data Center com uma infraestrutura hibridaExpandindo seu Data Center com uma infraestrutura hibrida
Expandindo seu Data Center com uma infraestrutura hibridaAlexandre Santos
 
Creating your virtual data center - Toronto
Creating your virtual data center - TorontoCreating your virtual data center - Toronto
Creating your virtual data center - TorontoAmazon Web Services
 
PC = Personal Cloud (or how to use your development machine with Vagrant and ...
PC = Personal Cloud (or how to use your development machine with Vagrant and ...PC = Personal Cloud (or how to use your development machine with Vagrant and ...
PC = Personal Cloud (or how to use your development machine with Vagrant and ...Codemotion
 
Introduction to Microsoft Workloads on AWS - AWS Online Tech Talks
Introduction to Microsoft Workloads on AWS - AWS Online Tech TalksIntroduction to Microsoft Workloads on AWS - AWS Online Tech Talks
Introduction to Microsoft Workloads on AWS - AWS Online Tech TalksAmazon Web Services
 
Cloud computing presentation
Cloud computing presentation  Cloud computing presentation
Cloud computing presentation hemanth S R
 

Ähnlich wie Server Side Basics (20)

Running your Windows Enterprise Workloads on AWS - Technical 201
Running your Windows Enterprise Workloads on AWS - Technical 201Running your Windows Enterprise Workloads on AWS - Technical 201
Running your Windows Enterprise Workloads on AWS - Technical 201
 
AWS Summit Auckland - Running your Enterprise Windows Workload on AWS
AWS Summit Auckland  - Running your Enterprise Windows Workload on AWSAWS Summit Auckland  - Running your Enterprise Windows Workload on AWS
AWS Summit Auckland - Running your Enterprise Windows Workload on AWS
 
Presentation v mware, microsoft, or citrix whose virtual desktop
Presentation   v mware, microsoft, or citrix whose virtual desktopPresentation   v mware, microsoft, or citrix whose virtual desktop
Presentation v mware, microsoft, or citrix whose virtual desktop
 
Presentation virtual desktops why is this so hot
Presentation   virtual desktops why is this so hotPresentation   virtual desktops why is this so hot
Presentation virtual desktops why is this so hot
 
Docker Basics
Docker BasicsDocker Basics
Docker Basics
 
Summit301 hdx media stream for flash configuration and troubleshooting
Summit301   hdx media stream for flash configuration and troubleshootingSummit301   hdx media stream for flash configuration and troubleshooting
Summit301 hdx media stream for flash configuration and troubleshooting
 
Whose Virtual Desktop is Right for You
Whose Virtual Desktop is Right for YouWhose Virtual Desktop is Right for You
Whose Virtual Desktop is Right for You
 
Getting started with MariaDB with Docker
Getting started with MariaDB with DockerGetting started with MariaDB with Docker
Getting started with MariaDB with Docker
 
Creating Your Virtual Data Center: VPC Fundamentals and Connectivity Options
Creating Your Virtual Data Center: VPC Fundamentals and Connectivity OptionsCreating Your Virtual Data Center: VPC Fundamentals and Connectivity Options
Creating Your Virtual Data Center: VPC Fundamentals and Connectivity Options
 
Server 2016 sneak peek
Server 2016 sneak peekServer 2016 sneak peek
Server 2016 sneak peek
 
Amazon WorkSpaces - Fully Managed Desktops in the Cloud
Amazon WorkSpaces - Fully Managed Desktops in the CloudAmazon WorkSpaces - Fully Managed Desktops in the Cloud
Amazon WorkSpaces - Fully Managed Desktops in the Cloud
 
Server Virtualization
Server VirtualizationServer Virtualization
Server Virtualization
 
Amazon WorkSpaces - Fully Managed Desktops in the Cloud
Amazon WorkSpaces - Fully Managed Desktops in the Cloud Amazon WorkSpaces - Fully Managed Desktops in the Cloud
Amazon WorkSpaces - Fully Managed Desktops in the Cloud
 
Expandindo seu Data Center com uma infraestrutura hibrida
Expandindo seu Data Center com uma infraestrutura hibridaExpandindo seu Data Center com uma infraestrutura hibrida
Expandindo seu Data Center com uma infraestrutura hibrida
 
Creating your virtual data center - Toronto
Creating your virtual data center - TorontoCreating your virtual data center - Toronto
Creating your virtual data center - Toronto
 
PC = Personal Cloud (or how to use your development machine with Vagrant and ...
PC = Personal Cloud (or how to use your development machine with Vagrant and ...PC = Personal Cloud (or how to use your development machine with Vagrant and ...
PC = Personal Cloud (or how to use your development machine with Vagrant and ...
 
Introduction to Microsoft Workloads on AWS - AWS Online Tech Talks
Introduction to Microsoft Workloads on AWS - AWS Online Tech TalksIntroduction to Microsoft Workloads on AWS - AWS Online Tech Talks
Introduction to Microsoft Workloads on AWS - AWS Online Tech Talks
 
CMS on AWS Deep Dive
CMS on AWS Deep DiveCMS on AWS Deep Dive
CMS on AWS Deep Dive
 
Cloud computing presentation
Cloud computing presentation  Cloud computing presentation
Cloud computing presentation
 
Introduction to virtualization
Introduction to virtualizationIntroduction to virtualization
Introduction to virtualization
 

Kürzlich hochgeladen

From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGSujit Pal
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...gurkirankumar98700
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 

Kürzlich hochgeladen (20)

From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAG
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 

Server Side Basics

  • 1. SERVER SIDE BASICS Keith Swallow PDX Web & Design Meetup
  • 2. TONIGHT • DNS: What Does 72.26.203.99 Mean? • HTTP: Its Just Text! • MVC: The Way of Web Apps • Recipes: Login and Email • Scaling: More, Smaller, Faster
  • 3. DNS What Do Those Numbers Mean?
  • 4. DOMAIN NAMING SERVICE • Computers are bad with names, prefer numbers • People are bad with numbers, prefer names • DNS bridges the gap
  • 5. • You type http://xkcd.com in a browser • Your computer asks its local DNS server where xkcd.com is • That DNS server asks an authoritative server • Then relays the IP address (72.26.203.99)
  • 6. DOMAIN NAMING SERVICE where is xkcd.com? your computer DNS server
  • 7. DOMAIN NAMING SERVICE where is xkcd.com? where is xkcd.com? your computer DNS server authoritative DNS server
  • 8. DOMAIN NAMING SERVICE where is xkcd.com? 72.26.203.99 your computer DNS server authoritative DNS server
  • 9. DOMAIN NAMING SERVICE 72.26.203.99 72.26.203.99 your computer DNS server authoritative DNS server
  • 10. DOMAIN NAMING SERVICE 72.26.203.99 72.26.203.99 your computer DNS server authoritative DNS server xkcd.com 72.26.203.99
  • 12. HYPER TEXT TRANSFER PROTOCOL • Request • Ask for data • Response • Read response headers • Act on response body • Repeat
  • 13. HTTP VERBS • GET • POST • PUT • DELETE
  • 14. HTTP REQUEST Host: xkcd.com User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.3) Gecko/ 20100401 Firefox/3.6.3 Accept: text/html,application/xhtml+xml,application/xml; Accept-Language: en-us,en; Accept-Encoding: gzip,deflate Accept-Charset: ISO-8859-1,utf-8; Keep-Alive: 115
  • 15. HTTP RESPONSE HEADERS Vary: Accept-Encoding Last-Modified: Mon, 21 Feb 2011 05:00:08 GMT Etag: "2060469139" Content-Type: text/html Accept-Ranges: bytes Date: Tue, 22 Feb 2011 18:28:44 GMT Server: lighttpd/1.4.19 Content-Length: 2799
  • 16. HTTP RESPONSE BODY <?xml version="1.0" encoding="utf-8" ?> <?xml-stylesheet href="http://imgs.xkcd.com/s/c40a9f8.css" type="text/css" media="screen" ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>xkcd: Computer Problems</title> <link rel="stylesheet" type="text/css" href="http://imgs.xkcd.com/s/c40a9f8.css" media="screen" title="Default" /> <link rel="alternate" type="application/atom+xml" title="Atom 1.0" href="/atom.xml" /> <link rel="alternate" type="application/rss+xml" title="RSS 2.0" href="/rss.xml" />
  • 18. MVC The Way of Web Apps
  • 19. MODEL-VIEW-CONTROLLER • Controller • Handles the request and sends it to the correct model(s) • Model • Business logic and abstract representation of domain entities • View • Display of information contained in models
  • 20. REQUEST FLOW Browser Controller View Model
  • 21. RAILS MVC & RECIPES • Logon • Email
  • 23. SCALING • Horizontal Scaling (More) • Throw more hardware at the problem • Vertical Scaling (Smaller) • Cut the problem into smaller chunks • Caching (Faster) • Increase response speed, reduce load
  • 24. HORIZONTAL SCALING • Add more hardware to deliver the same content your computer xkcd.com web
  • 25. HORIZONTAL SCALING • Add more hardware to deliver the same content your computer xkcd.com web images
  • 26. HORIZONTAL SCALING • Add more hardware to deliver the same content your computer xkcd.com web images database
  • 27. HORIZONTAL SCALING • Add more hardware to deliver the same content your computer xkcd.com web images database
  • 28. HORIZONTAL SCALING • Add more hardware to deliver the same content your computer xkcd.com web images database
  • 29. VERTICAL SCALING xkcd.com web images database your computer • Break the system into specialized parts
  • 30. VERTICAL SCALING xkcd.com web images your computer database • Break the system into specialized parts
  • 31. VERTICAL SCALING xkcd.com web images your computer • Break the system into specialized parts database
  • 32. VERTICAL SCALING xkcd.com cache your computer web • Respond quickly to the images database request
  • 33. QUESTIONS? Speak now or forever hold your peace
  • 34. THANK YOU! Keith Swallow keithcelt.com twitter.com/keithcelt keithcelt@gmail.com

Hinweis der Redaktion

  1. \n
  2. \n
  3. \n
  4. \n
  5. \n
  6. \n
  7. \n
  8. \n
  9. \n
  10. \n
  11. \n
  12. \n
  13. \n
  14. \n
  15. \n
  16. \n
  17. \n
  18. \n
  19. \n
  20. \n
  21. \n
  22. \n
  23. \n
  24. \n
  25. \n
  26. \n
  27. \n
  28. \n
  29. \n
  30. \n
  31. \n
  32. \n
  33. \n
  34. \n