[RUBY] Rails-Webserver und Anwendungsserver

Einführung

Der Befehl "Rails s", den ich beiläufig verwendet habe. Mit diesem Befehl wurde mir wieder klar, was und wie funktionierte, also werde ich es aufschreiben.

** Ergänzung ** Rails s ist ein Befehl zum Starten eines lokalen Servers.

Inhaltsverzeichnis

  1. Webserver und Anwendungsserver
  2. Lokale Umgebung
  3. Produktionsumgebung

1. Webserver und Anwendungsserver

Um die Verarbeitungslast zu verteilen (Hochgeschwindigkeitsverarbeitung), werden die Server nach Funktionen unterteilt.

** Webserver ** Empfangen Sie alle Anfragen von der Client-Seite. Wenn der Inhalt der Anforderung statisch ist (HTML oder CSS), gibt der Webserver eine Antwort an den Browser (Client) zurück. Wenn der Inhalt der Anforderung dynamisch ist (Suche nach Informationen aus der Datenbank usw.), übergeben Sie die Anforderung an den Anwendungsserver.

** Anwendungsserver ** Empfängt die vom Webserver übergebene Anforderung und führt die entsprechende Controller-Aktion aus. Danach wird das Verarbeitungsergebnis an den Webserver zurückgegeben.

2. Lokale Umgebung

Geben Sie im Terminal Rails s ein, um den Server zu starten. Zu diesem Zeitpunkt wird Puma auf dem Terminal angezeigt. Dies ist ein Anwendungsserver für Rails und nicht vom Webserver getrennt.

Terminal


=> Booting Puma
=> Rails 6.0.3.4 application starting in development 
=> Run `rails server --help` for more startup options
Puma starting in single mode...
* Version 3.12.6 (ruby 2.6.5-p114), codename: Llamas in Pajamas
* Min threads: 5, max threads: 5
* Environment: development
* Listening on tcp://localhost:3000
Use Ctrl-C to stop

3. Produktionsumgebung

Trennen Sie den Webserver und den Anwendungsserver in der Produktionsumgebung. Wie oben erwähnt, besteht der Grund darin, Maßnahmen gegen die Serverlast zu ergreifen, z. B. konzentrierten Zugriff. Erstellen Sie eine Produktionsumgebung, indem Sie Nginx (Webserver) und Unicorn (Anwendungsserver) kombinieren.

Referenzseite Warum Unicorn, Nginx in der Produktionsumgebung von Rails verwenden? ~ Über die Zusammenarbeit von Rack, Unicorn, Nginx ~ [Webdienstbetrieb mit Ruby On Rails]

das ist alles

Recommended Posts

Rails-Webserver und Anwendungsserver
Vergleich der WEB-Anwendungsentwicklung mit Rails und Java Servlet + JSP
Schienen und Formulardaten
Was ist der Unterschied zwischen einem Webserver und einem Anwendungsserver?
Erstellen Sie einen Webanwendungsserver (Java) auf VPS
Versuchen Sie, die Rails-App für EC2-Part 2 (Server Construction) bereitzustellen.
Schienen gültig und ungültig?
Aufbau eines Autorisierungsservers mit Authlete und Kommunikation vom OAuth-Client (Webanwendung)
Automatisierung von Webanwendungstests
[Rails] Erstellen Sie eine Anwendung
Etwa der Ablauf der Entwicklung von Webanwendungen mit Rails.
Erstellen Sie eine JAVA WEB App und probieren Sie OMC APM aus
Implementieren Sie die Anwendungsfunktion in Rails
Java (WebSphere Application Server) Hinweis [1]
Schienen neuer Befehl zum Starten der Anwendung
Rails Posts und User Linkage
[Schienen] erfordern Methode und Genehmigungsmethode
Rails Tutorial Records und Memorandum # 0
Ich möchte Tomcat auf den Server bringen und die Anwendung starten
Schienenpfad und URL-Methoden
[Spring Boot] Erstellung von Webanwendungen
Schienen sind schwierig und schmerzhaft!
Zusammenfassung des Artikels zur Entwicklung von Webanwendungen
Schienen sind schwierig und schmerzhaft! Ⅱ
So beenden Sie den Rails-Server
Mit Docker erstellte Webanwendung (1)
[Rails] strftime dies und das
So führen Sie React und Rails auf demselben Server aus
[Schienen] Startzeit und Endzeit speichern
Vorbereiten der Erstellung einer Rails-Anwendung
[Spring Boot] Vorsichtsmaßnahmen beim Entwickeln einer Webanwendung mit Spring Boot und beim Ausführen eines Krieges auf einem unabhängigen Tomcat-Server
[Rails] Unterschied zwischen find und find_by
Erstellen Sie eine Webanwendung mit Javalin
[Rails] Validierungseinstellungen und japanische Lokalisierung
Namenskonventionen für Schienenmodelle und Tabellen
[Rails] Ich habe versucht, die Anwendung zu löschen
Tutorial zum Kauen der Schienen [Kapitel 2 Spielzeuganwendung]
Entfernen Sie "Assets" und "Turbolinks" in "Rails6".
CRUD-Funktion und MVC in Rails
[Rails] Unterschiede und Verwendung von each_with_index und each.with_index
Upgrade der Ruby- und Rails-Version des Projekts
Stellen Sie mit dem iPhone eine Verbindung zum Rails-Server her
TCP: Grundprinzipien und Anwendungsarchitektur
Anwendung von Downcase- und Slice-Methoden
Überlegungen zu Schienen und sauberer Architektur
Über Docker, gefälschten Server und Container
[Rails] Unterschied zwischen redirect_to und Rendern
Webanwendungsstruktur nach Java und Verarbeitungsablauf in der Präsentationsschicht
[Aktualisiert Dezember 2018] Tipps für integrierte Webserver und Serverlets, die mit Jetty9 erstellt wurden
Spring Boot2-Webanwendungsentwicklung mit Visual Studio Code SQL Server-Verbindung
Spring5 MVC-Webanwendungsentwicklung mit Visual Studio Code SQL Server-Verbindung
WAR die WEB-Anwendung per Spring Boot und stellen Sie sie auf dem Tomcat-Server bereit