Share
VIDEOS 1 TO 50
Tekpub: Understanding Rack
Tekpub: Understanding Rack
Published: 2012/01/04
Channel: MrTekpub
How to install the FREE VMware ESXi 6.5 on a Rack Server - 447
How to install the FREE VMware ESXi 6.5 on a Rack Server - 447
Published: 2016/12/09
Channel: My PlayHouse
Evolution of rack (Gource Visualization)
Evolution of rack (Gource Visualization)
Published: 2015/07/18
Channel: Landon Wilkins
Alona Mekhovova - Using and scaling Rack and Rack-based middleware
Alona Mekhovova - Using and scaling Rack and Rack-based middleware
Published: 2012/10/23
Channel: Alex Mekhovov
Rack - Ruby Code Reading Group
Rack - Ruby Code Reading Group
Published: 2016/09/10
Channel: Engineers.SG
DON
DON'T Rack mount your gear until you watch this!
Published: 2015/02/08
Channel: Obscure Machines
Building a 1U Server (Bad A$$ 1U Server)
Building a 1U Server (Bad A$$ 1U Server)
Published: 2017/03/27
Channel: TheGeekPub
MSA 2040 Web User Interface
MSA 2040 Web User Interface
Published: 2015/05/17
Channel: מטריקס אינטגרציה ותשתיות
Rhebok, High Performance Rack Handler - RubyKaigi 2015
Rhebok, High Performance Rack Handler - RubyKaigi 2015
Published: 2016/01/01
Channel: RubyKaigi
Rack Cabinet Access via POE Web Interface
Rack Cabinet Access via POE Web Interface
Published: 2017/01/11
Channel: ssihuset
Cockpit - Powerful and Easy Web-interface for Managing Servers
Cockpit - Powerful and Easy Web-interface for Managing Servers
Published: 2015/06/06
Channel: The Linux Homefront
Rack Basics
Rack Basics
Published: 2010/08/27
Channel: Charles Wood
Datacenter Top-of-Rack Switch Redundancy Models
Datacenter Top-of-Rack Switch Redundancy Models
Published: 2016/05/26
Channel: TeamNANOG
Exploring the versadac web server
Exploring the versadac web server
Published: 2016/09/14
Channel: Eurotherm by Schneider Electric
Home Server Rack Traffic Monitoring Packetshaper Setup Overview
Home Server Rack Traffic Monitoring Packetshaper Setup Overview
Published: 2013/09/13
Channel: Jacob Dykstra
APC AP8958 Switched Rack PDU - Web Interface Schneider Electric Update
APC AP8958 Switched Rack PDU - Web Interface Schneider Electric Update
Published: 2017/03/26
Channel: jellepie69
Buy a Supermicro server | 1u server rack | server factory
Buy a Supermicro server | 1u server rack | server factory
Published: 2014/07/11
Channel: Max Smirnov
WVOX VOX RADIO - My BUDGET Hardware Audio Processing Rack Setup & Tour
WVOX VOX RADIO - My BUDGET Hardware Audio Processing Rack Setup & Tour
Published: 2016/06/13
Channel: EposVox
Centralized Server Management with CommandCenter® Secure Gateway
Centralized Server Management with CommandCenter® Secure Gateway
Published: 2011/06/28
Channel: Raritan
Lenovo x3650 M4 Rack Mounting and IMM Reset & Access - 460
Lenovo x3650 M4 Rack Mounting and IMM Reset & Access - 460
Published: 2017/01/06
Channel: My PlayHouse
Setting up APC7920 PDU power distribution unit: IP address, web management HTTP, HTTPS, SSL, SSH
Setting up APC7920 PDU power distribution unit: IP address, web management HTTP, HTTPS, SSL, SSH
Published: 2017/01/22
Channel: Donkey Learning IT
hosting web server - home server hosting - should you do it or not
hosting web server - home server hosting - should you do it or not
Published: 2017/01/13
Channel: hosting web server 1866
pfSense Tutorial - Configure pfSense Web Interface | How-to/Guide/Tutorial
pfSense Tutorial - Configure pfSense Web Interface | How-to/Guide/Tutorial
Published: 2014/07/18
Channel: iamasuperuser
ESXi FREE Web Client Interface
ESXi FREE Web Client Interface
Published: 2015/08/12
Channel: ESX Virtualization
Portfolio Server 9 - Server Admin web interface
Portfolio Server 9 - Server Admin web interface
Published: 2009/06/29
Channel: extensisblog
Dell Switch VLAN Config -  Rack Build Log: Part 4
Dell Switch VLAN Config - Rack Build Log: Part 4
Published: 2015/09/21
Channel: Fifty!
Rackspace Cloud Servers Basic Setup
Rackspace Cloud Servers Basic Setup
Published: 2010/10/30
Channel: Kevin Veroneau
Buy Server | Supermicro | 2U Server | Web Server
Buy Server | Supermicro | 2U Server | Web Server
Published: 2014/07/04
Channel: Server Factory Ltd
Rack Server Build Timelapse
Rack Server Build Timelapse
Published: 2017/03/06
Channel: Elliotts Tech Show
Someone is currently logged into the APC management web server
Someone is currently logged into the APC management web server
Published: 2016/01/10
Channel: Yunar Winardi
vSphere ESXi 6.0: vSphere Client Web & Windows
vSphere ESXi 6.0: vSphere Client Web & Windows
Published: 2016/04/24
Channel: SysAdmGirl
Jacarta Temperature & Humidity Sensor for Computer Rooms, Server Rooms and Racks
Jacarta Temperature & Humidity Sensor for Computer Rooms, Server Rooms and Racks
Published: 2013/06/18
Channel: JacartaLtd
best linux server (proxy, dns, dhcp, mail, webserver, server)
best linux server (proxy, dns, dhcp, mail, webserver, server)
Published: 2015/07/11
Channel: Linux Debian
VMWare ESXi 6.5 - The new interface
VMWare ESXi 6.5 - The new interface
Published: 2016/12/09
Channel: Nevexo
Temperature and Humidity Monitoring in Server Room with sensorProbe2 Rack Monitoring System
Temperature and Humidity Monitoring in Server Room with sensorProbe2 Rack Monitoring System
Published: 2011/12/21
Channel: AKCessPro
Smartrack LED light control via web interface
Smartrack LED light control via web interface
Published: 2012/08/23
Channel: hazeld0g
PIXNET Overview
PIXNET Overview
Published: 2014/08/12
Channel: Sound Devices
SIMATIC RACK PCs as industrial servers
SIMATIC RACK PCs as industrial servers
Published: 2013/01/21
Channel: Siemens
OMSA Web Browser Installer - Dell OpenManage Server Administrator
OMSA Web Browser Installer - Dell OpenManage Server Administrator
Published: 2013/10/31
Channel: DellTechCenter
Patrick Robertson - Rack CORS
Patrick Robertson - Rack CORS
Published: 2013/09/02
Channel: BostonRB Organizer
UCS C3260 Management Interface Initial Setup
UCS C3260 Management Interface Initial Setup
Published: 2015/12/17
Channel: Cisco UCS Tech Talks
HP ProLiant DL180 Gen9 Rack Server Review - Technical Overview in 4K Video!
HP ProLiant DL180 Gen9 Rack Server Review - Technical Overview in 4K Video!
Published: 2016/10/29
Channel: IT Creations, Inc.
APC AP8961 SWITCHED RACK PDU 2G SERVER RACKS POWER C13 C19 VERTICAL
APC AP8961 SWITCHED RACK PDU 2G SERVER RACKS POWER C13 C19 VERTICAL
Published: 2015/02/18
Channel: Global 1 Server Racks
AKCP SP2+ Temperature Monitoring for Server Racks
AKCP SP2+ Temperature Monitoring for Server Racks
Published: 2016/03/21
Channel: Tom Watson
ازاى تعمل Web Server وموقع على جهاز QNAP
ازاى تعمل Web Server وموقع على جهاز QNAP
Published: 2017/10/03
Channel: Arabhardware
How To Install PHP Server Monitor on CentOS 7
How To Install PHP Server Monitor on CentOS 7
Published: 2017/06/05
Channel: Quick Notepad Tutorial
Set up HP Proliant DL380 G7 server from the beginning
Set up HP Proliant DL380 G7 server from the beginning
Published: 2013/04/23
Channel: baskar siva
vSphere ESXi 6.0: Server Setup
vSphere ESXi 6.0: Server Setup
Published: 2016/04/23
Channel: SysAdmGirl
Portfolio Server Web Client
Portfolio Server Web Client
Published: 2011/10/10
Channel: extensisblog
Eagle Mode Server Monitoring Demo
Eagle Mode Server Monitoring Demo
Published: 2012/04/18
Channel: oh417
NEXT
GO TO RESULTS [51 .. 100]

WIKIPEDIA ARTICLE

From Wikipedia, the free encyclopedia
Jump to: navigation, search
Rack, a Ruby Webserver Interface
Rack-logo.png
Original author(s) Christian Neukirchen
Developer(s) James Tucker, Josh Peek, José Valim, Michael Fellinger, Aaron Patterson, Santiago Pastorino, Konstantin Haase
Stable release
2.0.3 / May 15, 2017; 5 months ago (2017-05-15)
Repository github.com/rack/rack
Operating system Cross-platform
Type Middleware
License MIT License
Website rack.github.io

Rack provides a modular and adaptable interface for developing web applications in Ruby. By wrapping HTTP requests and responses it unifies the API for web servers, web frameworks, and software in between (called middleware) into a single method call.

Rack is used by many Ruby web frameworks and libraries, such as Ruby On Rails and Sinatra. It is available as a Ruby Gem.

Rack has already inspired a JavaScript framework[1] (jackjs) and a Perl one (Plack), a Common Lisp one[2] (Clack), and has resulted in the Ruby developer quasi-standard of "rack-compliant".[3]

It was also cited as an inspiration for OWIN.[4]

Overview[edit]

The characteristics of a Rack application is that the application object responds to the call method. The call method takes in the Environment object as argument and returns the Rack response object.

Environment[5][edit]

The environment that is taken as argument by the call method refers to an object that has:
a) Information on the HTTP Request

This includes the information like:

  • HTTP request method
  • The URL information(information that would direct to the application, information that directs to the actual location in the application, Query string)
  • Server information like the server name and server port
  • The HTTP meta variables that are received from the client

b) Rack specific information

This includes the information like

  • The version of the Rack application that is running
  • The URL scheme that is used, that is, if the request that is received is http or https.
  • The raw HTTP data.
  • A Ruby object for reporting errors.
  • Information like if the application object is simultaneously invoked from another thread or process.
  • Information on the server expectations and capabilities (capability of the server for connection hijacking).

In case the application is being used as a middleware, the environment can have objects that would provide session information, logging capabilities, information on the size of the data that can be used for read and writes etc. In addition to these, the server can store their own data in the environment.

Rack response[5][edit]

The rack server object returns a response which contains three parts: the status, headers and the body.

  • The status contains the HTTP status codes such as 200,404.
  • The header contains the response for each and gives the key-value pairs. The keys have to be strings.
  • Body contains the final data which is sent by the server to the requester.

Rack::Response provides a convenient interface to create a Rack response. The class Rack::Response is defined in lib/rack/response.rb. To use the Response class, instantiate it from the middleware layer down the stack. It can be used to modify the cookies.

Middleware in racks[5][edit]

Rack makes it easy to add a chain of middleware components between the application and the web server. Multiple middleware components can be used in the rack which modifies the request/response before handing it over to the next component. This is called middleware stack.

The Rack server adds multiple middle middleware by default for the functionalities like showing exception with all the details,[6] validating the request and responses according to the Rack spec[7] etc.

Example application[edit]

A Rack-compatible "Hello World" application in Ruby syntax:

# helloWorld.ru
# The application that has the call method defined.
class HelloWorld
   # Call method that would return the HTTP status code, the content type and the content.
   def call (env)
      [200, {"Content-Type" => "text/html; charset=utf-8"}, ["Hello World"]]
   end
end

The server for the above code can be initiated using "rackup helloWorld.ru" and can be accessed at http://localhost:9292/ The default port used by the Rack application is 9292.

See also[edit]

References[edit]

  1. ^ jack - introduction. Jackjs.org. Retrieved on 2013-09-20.
  2. ^ clacklisp.org. Retrieved on 2014-10-17.
  3. ^ Pancake: How To Stack and Loosely Couple Rack-Based Webapps Together. Rubyinside.com (2009-12-04). Retrieved on 2013-09-20.
  4. ^ http://www.asp.net/aspnet/overview/owin-and-katana/an-overview-of-project-katana. Asp.net. Retrieved on 2014-10-01.
  5. ^ a b c "Documentation for rack". www.rubydoc.info. Retrieved 2016-09-14. 
  6. ^ "Rack::ShowExceptions". www.rubydoc.info. Retrieved 2016-09-14. 
  7. ^ "Rack::Lint". www.rubydoc.info. Retrieved 2016-09-14. 

External links[edit]


Disclaimer

None of the audio/visual content is hosted on this site. All media is embedded from other sites such as GoogleVideo, Wikipedia, YouTube etc. Therefore, this site has no control over the copyright issues of the streaming media.

All issues concerning copyright violations should be aimed at the sites hosting the material. This site does not host any of the streaming media and the owner has not uploaded any of the material to the video hosting servers. Anyone can find the same content on Google Video or YouTube by themselves.

The owner of this site cannot know which documentaries are in public domain, which has been uploaded to e.g. YouTube by the owner and which has been uploaded without permission. The copyright owner must contact the source if he wants his material off the Internet completely.

Powered by YouTube
Wikipedia content is licensed under the GFDL and (CC) license