Heim > Web-Frontend > js-Tutorial > Node.JS-bezogenes Wissen

Node.JS-bezogenes Wissen

一个新手
Freigeben: 2017-09-21 09:49:20
Original
2020 Leute haben es durchsucht

Bei der Eingabe einer URL gibt der Browser——

1. Chrome搜索自身的DNS缓存(仅有一分钟生命力) 查看:chrome://net-internals/#dns

2. 如果Chrome找不到,或者DNS失效,便会------>>>> 搜索操作系统自身的DNS缓存

3. 前两步都没有找到,就会--------->>>>>>>>>读取本地的HOST文件

4. 浏览器发起一个DNS的系统调用(一般是宽带运营商提供的)

5. 浏览器获得域名对应的IP地址后,发起HTTP“三次握手”

6. TCP/IP连接建立后,浏览器向服务器发送HTTP请求。(比如,使用GET方式,请求一个根域里的一个域名)

7. 服务器向浏览器返回响应结果,包括响应头和响应体

8. 浏览器收到响应之后进行渲染
Nach dem Login kopieren

Und der Betreiberserver————

1. 查看本身缓存

2. 发起一个迭代DNS解析请求

3. 把结果返回操作系统内核并缓存起来
Nach dem Login kopieren

Der Betriebssystemkern gibt das Ergebnis an den Browser zurück

Einige grundlegende Konzepte in JS

1 Was ist eine Callback-Funktion?

Der Rückruf besteht darin, die nachfolgende Logik in die Parameter der Startfunktion zu kapseln und die Funktion dann Schicht für Schicht zu verschachteln.

2. Was ist Synchronisation/Asynchronität?

Synchron: Nach dem Senden der Daten warten Sie, bis antwortet, bevor Sie das nächste Datenpaket senden.

Asynchron: Nach dem Senden der Daten warten SieAntwort Senden Sie die nächste Datenpaket-Kommunikationsmethode

3. Was ist E/A?

Im Dateisystem:

            磁盘的写入(in)
            磁盘的读取(out)
Nach dem Login kopieren

4. Was ist Single-Thread/Multi-Thread?

Einmal kann nur Ein Programm ausführen, wird als Single-Threaded bezeichnet. Das Ausführen

mehrerer

Programme wird aufgerufen Multithreading 5. Was ist blockierend/nicht blockierend?

Blockierung:
Sie müssen warten, bis die Ausführung des vorherigen Programms abgeschlossen ist

Nicht blockierend: Wenn die Ausführung des vorherigen Programms nicht abgeschlossen ist Ausführung abgeschlossen. Sie können die Ausführung anderer Programme anhalten, weiterhin ausführen und warten, bis sie verwendet werden, bevor Sie sie ausführen.

6. Was ist ein Ereignis? Eine ausgelöste Aktion (z. B. Klicken auf eine Schaltfläche)

7. Was ist ereignisgesteuert?

Ein Vorgang, der durch eine Auslöseraktion verursacht wird (z. B. ein Dialogfeld, das nach dem Klicken auf eine Schaltfläche angezeigt wird)

8. Was ist ein ereignisgesteuerter Rückruf?

Eine Rückruffunktion für ein bestimmtes Ereignis registriert, aber diese Rückruffunktion

wird nicht sofort ausgeführt
,

wird nur aufgerufen, wenn das Ereignis eintritt. Funktion, die Die Art und Weise, wie diese Funktion ausgeführt wird, wird als ereignisgesteuert bezeichnet.

Diese Art des registrierten Rückrufs basiert auf einem ereignisgesteuerten Rückruf.

Wenn sich diese Rückrufe auf asynchrone E/A-Vorgänge (Schreiben, Lesen von Daten) beziehen, können sie als rückrufbasierte asynchrone E/A betrachtet werden. Es ist nur so, dass diese Art von Rückruf in NodeJS ereignisgesteuert ist

9 Was ist eine Ereignisschleife?

Ereignisschleife: Wenn es eine große Anzahl asynchroner Vorgänge gibt, z. B. einige zeitaufwändige E/A-Vorgänge oder sogar einige zeitgesteuerte verzögerte Vorgänge,


Sie sind vorhanden abgeschlossen Die entsprechende Rückruffunktion muss jederzeit aufgerufen werden, um einige intensive Aufgaben auszuführen, ohne

den gesamten Programmausführungsprozess zu blockieren. Zu diesem Zeitpunkt ist ein Mechanismus erforderlich, um diesen Mechanismus zu verwalten >

Zusammenfassend wird der Mechanismus zur Verwaltung einer großen Anzahl asynchroner Vorgänge als Ereignisschleife bezeichnet.

Das obige ist der detaillierte Inhalt vonNode.JS-bezogenes Wissen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage