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
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
Evolution of rack (Gource Visualization)
Evolution of rack (Gource Visualization)
Published: 2015/07/18
Channel: Landon Wilkins
Rack Cabinet Access via POE Web Interface
Rack Cabinet Access via POE Web Interface
Published: 2017/01/11
Channel: ssihuset
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
Public Webserver by Port Forward
Public Webserver by Port Forward
Published: 2015/06/24
Channel: Ri Gà
Rack - Ruby Code Reading Group
Rack - Ruby Code Reading Group
Published: 2016/09/10
Channel: Engineers.SG
Building a 1U Server (Bad A$$ 1U Server)
Building a 1U Server (Bad A$$ 1U Server)
Published: 2017/03/27
Channel: TheGeekPub
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
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
DON
DON'T Rack mount your gear until you watch this!
Published: 2015/02/08
Channel: Obscure Machines
PIXNET Overview
PIXNET Overview
Published: 2014/08/12
Channel: Sound Devices
Buy Server | Supermicro | 2U Server | Web Server
Buy Server | Supermicro | 2U Server | Web Server
Published: 2014/07/04
Channel: Server Factory Ltd
Cabling a SoftLayer Data Center Server Rack
Cabling a SoftLayer Data Center Server Rack
Published: 2012/11/26
Channel: Elnur Asgerov
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
Setting up the iLO3 Interface on the HP DL360 G7 Server
Setting up the iLO3 Interface on the HP DL360 G7 Server
Published: 2012/02/08
Channel: Avaya Mentor
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
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
Dell Switch VLAN Config -  Rack Build Log: Part 4
Dell Switch VLAN Config - Rack Build Log: Part 4
Published: 2015/09/21
Channel: Fifty!
Rack Basics
Rack Basics
Published: 2010/08/27
Channel: Charles Wood
Portfolio Server 9 - Server Admin web interface
Portfolio Server 9 - Server Admin web interface
Published: 2009/06/29
Channel: extensisblog
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
DiGiGrid SoundGrid and Studio Rack Demonstration
DiGiGrid SoundGrid and Studio Rack Demonstration
Published: 2015/05/18
Channel: Eastwood (Sound and Vision) Ltd
Rhebok, High Performance Rack Handler - RubyKaigi 2015
Rhebok, High Performance Rack Handler - RubyKaigi 2015
Published: 2016/01/01
Channel: RubyKaigi
Exploring the versadac web server
Exploring the versadac web server
Published: 2016/09/14
Channel: Eurotherm by Schneider Electric
Datacenter Top-of-Rack Switch Redundancy Models
Datacenter Top-of-Rack Switch Redundancy Models
Published: 2016/05/26
Channel: TeamNANOG
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
Home Server Rack Traffic Monitoring Packetshaper Setup Overview
Home Server Rack Traffic Monitoring Packetshaper Setup Overview
Published: 2013/09/13
Channel: Jacob Dykstra
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
SIMATIC RACK PCs as industrial servers
SIMATIC RACK PCs as industrial servers
Published: 2013/01/21
Channel: Siemens
Quanta Server ILO Web Interface Review
Quanta Server ILO Web Interface Review
Published: 2015/11/23
Channel: Saju M
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
OMSA Web Browser Installer - Dell OpenManage Server Administrator
OMSA Web Browser Installer - Dell OpenManage Server Administrator
Published: 2013/10/31
Channel: DellTechCenter
Building Your Own Network for a Computer Lab
Building Your Own Network for a Computer Lab
Published: 2013/02/15
Channel: Eli the Computer Guy
Smartrack LED light control via web interface
Smartrack LED light control via web interface
Published: 2012/08/23
Channel: hazeld0g
Untangle Network Gateway rack metaphor introduction
Untangle Network Gateway rack metaphor introduction
Published: 2010/05/07
Channel: untangleinc
vSphere ESXi 6.0: vSphere Client Web & Windows
vSphere ESXi 6.0: vSphere Client Web & Windows
Published: 2016/04/24
Channel: SysAdmGirl
SoftLayer - Tutorial Number Three - Starting a Web Server
SoftLayer - Tutorial Number Three - Starting a Web Server
Published: 2014/08/19
Channel: Eamonn Killian
AKCP SP2+ Temperature Monitoring for Server Racks
AKCP SP2+ Temperature Monitoring for Server Racks
Published: 2016/03/21
Channel: Tom Watson
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
sensorProbe4 SNMP enabled Rack Monitoring System from AKCess Pro
sensorProbe4 SNMP enabled Rack Monitoring System from AKCess Pro
Published: 2011/12/01
Channel: AKCessPro
RDMA over Converged Ethernet setup with Comware 7
RDMA over Converged Ethernet setup with Comware 7
Published: 2016/06/09
Channel: ABC Networking
Rack Monitoring with securityProbe 5E Standard and E-opto16 expansion unit
Rack Monitoring with securityProbe 5E Standard and E-opto16 expansion unit
Published: 2012/01/31
Channel: AKCessPro
Servidores  Cisco UCS C210 M2 Rack Server
Servidores Cisco UCS C210 M2 Rack Server
Published: 2012/07/06
Channel: Teknicom.com.mx
Dell iDRAC Initial Setup
Dell iDRAC Initial Setup
Published: 2013/08/23
Channel: DellTechCenter
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
IBM Lenovo IMM management port setup for Series X servers
IBM Lenovo IMM management port setup for Series X servers
Published: 2014/10/09
Channel: Robert McMillen
ENVIROMUX MINI - Installation & Mounting into a Server Rack
ENVIROMUX MINI - Installation & Mounting into a Server Rack
Published: 2011/06/03
Channel: Network Technologies Inc
vSphere ESXi 6.0: Server Setup
vSphere ESXi 6.0: Server Setup
Published: 2016/04/23
Channel: SysAdmGirl
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; 3 months ago (2017-05-15)
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