2012-02-03 14 views
15

En 0.7.0, "Experimenetal isolates support" [sic] se introdujo. Nunca entendí esto, además de una vaga idea de que daban capacidades de subprocesamiento pero sin los problemas de los hilos. Y tal vez fueron buenos para resolver la historia de manejo de fallas/errores de Node.¿Qué eran los aislamientos de Node.js? ¿Y por qué están ahora muertos?

Pero, nunca nadie explicó de qué se trataba, ni en ese blog ni en los primeros resultados de Google. ¿Qué son los aislamientos? ¿Por qué fueron presentados a Node?


Esta mañana, un montón de problemas de GitHub (2662, 2663, 2665, y probablemente más) fueron cerradas con el comentario "aislamientos está muerto". ¿Que pasó? ¿Por qué esta idea supuestamente buena, que por lo que pude ver fue la característica principal de 0.7, murió?

+0

Por lo que yo sé _isolates_ fueron instancias separadas del nodo v8 que se ejecutaron como hilos en un solo proceso. (tenga en cuenta que el uso del término no tiene nada que ver con el uso del mismo término por dart). –

Respuesta

9

se explica aquí: http://groups.google.com/group/nodejs/msg/6b8b8a487d2ab817

Ben me scooped antes de que pudiera llegar el mensaje enviado :)

+0

mencionó 'en su lugar centrarse en Dominios y otras cosas que prometen aumentar la estabilidad y facilitar la depuración'. Ahora, ¿qué son los dominios? ¿hay información adicional disponible para dominios? Creo que escuché a Ryan explicando los dominios en algún lugar para aislar las acciones. Pero curioso por encontrar información adicional. – mamu

+0

@mamu Más información próximamente. La premisa de los dominios es agrupar diferentes acciones de E/S conjuntamente, de modo que los errores se puedan manejar en un solo lugar por solicitud, en lugar de por proceso. – isaacs

0

Se puede pensar en Aislar como una instancia independiente del tiempo de ejecución V8. Tiene gestión de memoria propia (GC). El nombre proviene del motor de ejecución de Chrome, donde tiene varias pestañas y cada pestaña tiene su propio motor de entorno JavaScript. Cada pestaña (y entorno JS) tiene que estar 'aislada' entre sí, por lo que ninguna parte de la página puede acceder a otro entorno de página (window.local o window.document). Esa es la razón por la cual V8 tiene un objeto aislado, que le permite funcionar en múltiples entornos paralelos (páginas/pestañas) independientes (aislados) el uno del otro.

Cuestiones relacionadas