Heim >Web-Frontend >Front-End-Fragen und Antworten >So richten Sie die mittlere Ebene von nodejs ein
Mit der rasanten Entwicklung des Internets werden Webanwendungen immer komplexer und umfangreicher. Um die Wartbarkeit und Skalierbarkeit von Webanwendungen zu verbessern, übernehmen viele Webentwickler daher das Architekturmuster der mittleren Ebene. Die mittlere Schicht von Node.js ist eine gängige Implementierungsmethode für die mittlere Schicht, da Node.js nicht nur eine effiziente E/A-Betriebsleistung aufweist, sondern auch problemlos ereignisgesteuerte Programmierung implementieren kann.
In diesem Artikel erfahren Sie, wie Sie eine einfache mittlere Ebene in Node.js erstellen und einige allgemeine Funktionen implementieren.
1. Was ist die mittlere Schicht?
Die mittlere Schicht bezieht sich auf die Schicht zwischen dem Client und dem Server. Ihre Hauptfunktion besteht darin, Client-Anfragen zu verarbeiten und Anfragen an den Server zu senden. In Webanwendungen wird die mittlere Ebene häufig verwendet, um verschiedene Dienste in einer Anwendung zu integrieren und so komplexe Geschäftslogiken besser bewältigen zu können. Darüber hinaus können über die mittlere Schicht auch Funktionen wie Caching, Authentifizierung und Autorisierung implementiert werden.
2. Node.js-Mittelschichtimplementierung
In Node.js gibt es zwei Hauptmethoden zur Implementierung der Mittelschicht: die Socket-Mittelschicht basierend auf dem WebSocket-Protokoll und die HTTP-Mittelschicht basierend auf dem HTTP-Protokoll. Unter diesen ist die HTTP-Mittelschicht die am häufigsten verwendete Methode, da sie mit Webstandards kompatibel und einfach zu implementieren und zu warten ist.
Das Folgende ist ein einfaches Beispiel für die mittlere Ebene von Node.js, das Funktionen wie Anforderungsweiterleitung, Anforderungs-Caching und Anforderungsprotokollierung implementiert:
const http = require('http'); const request = require('request'); const url = require('url'); http.createServer((req, res) => { // 解析前端请求的url const urlObject = url.parse(req.url); // 配置中间层请求的选项参数 const options = { url: 'http://backend-service' + urlObject.path, headers: req.headers }; // 处理GET请求的缓存功能 if (req.method === 'GET') { // 检查缓存中是否有数据 const cacheData = cache.get(options.url); if (cacheData) { res.writeHead(200, cacheData.headers); res.end(cacheData.body); console.log('cache hit: ' + options.url); return; } } // 请求发送到后端服务 console.log('forwarding request: ' + options.url); const proxyRequest = request(options); // 处理GET请求的缓存功能 if (req.method === 'GET') { // 将响应数据缓存到cache中 proxyRequest.on('response', (response) => { cache.set(options.url, response, response.headers['cache-control']); }); } // 将请求响应返回给前端 req.pipe(proxyRequest).pipe(res); // 请求日志记录 console.log(req.method + ' ' + req.url + ' ' + res.statusCode); }).listen(8080);
Im obigen Code verwenden wir zum Erstellen das integrierte http-Modul von Node.js ein HTTP-Server. Nachdem die Anfrage den Server erreicht hat, analysieren wir zunächst die vom Front-End angeforderte URL und leiten die Anfrage entsprechend der URL-Adresse an den Back-End-Dienst weiter (der Standardwert ist hier Backend-Service). Bevor wir die Anfrage an den Back-End-Dienst weiterleiten, haben wir auch einige Verarbeitungen an der Anfrage durchgeführt:
Darüber hinaus kann die mittlere Schicht von Node.js auch viele andere Funktionen implementieren, z. B. Anforderungsauthentifizierung, Autorisierung, Strombegrenzung, Leistungsschalter usw.
3. Zusammenfassung
Als eine Art Webanwendungsarchitekturmuster besteht die Hauptfunktion der mittleren Schicht darin, verschiedene Dienste in eine Anwendung zu integrieren, um komplexe Geschäftslogik besser verarbeiten zu können. In Node.js können wir die mittlere Schicht über HTTP- oder WebSocket-Protokolle implementieren. Das HTTP-Protokoll ist mit Webstandards kompatibel und einfach zu implementieren und zu warten. Daher ist es die gebräuchlichste Implementierungsmethode der mittleren Ebene.
Beim Aufbau der mittleren Schicht von Node.js können wir die effiziente E/A-Betriebsleistung und die ereignisgesteuerten Programmierfunktionen von Node.js nutzen, um einige allgemeine Funktionen wie Anforderungsweiterleitung, Anforderungs-Caching und Anforderungsprotokollierung zu implementieren . Darüber hinaus kann die mittlere Schicht von Node.js auch viele andere Funktionen implementieren, z. B. Anforderungsauthentifizierung, Autorisierung, Strombegrenzung und -fusion usw., um die Wartbarkeit und Skalierbarkeit von Webanwendungen zu verbessern.
Das obige ist der detaillierte Inhalt vonSo richten Sie die mittlere Ebene von nodejs ein. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!