¿Cómo guardo los datos que se utilizarán para todos los clientes en mi servidor? (como los mensajes de un chat)Almacenamiento en memoria de Nodejs
Respuesta
El servidor que node.js le permite compilar, es un servidor de aplicaciones, lo que significa que el estado se conserva, entre las solicitudes, en el lado del servidor. El siguiente fragmento demuestra esto:
var sys = require('sys'),
http = require('http');
var number = 0;
http.createServer(function (req, res) {
console.log(req.method, req.url);
res.writeHead(200, {'Content-Type': 'text/html'});
res.write('<h1>Number is: ' + number + '</h1>');
res.end();
number++;
}).listen(8000);
sys.puts('Server running at http://127.0.0.1:8000/');
Si quieres más características echar un vistazo a redis-node-client
o utilizar un mecanismo de almacenamiento nodo nativo (escrito en Node.js)
node-cache es actualmente el mejor paquete para el almacenamiento de valores clave y permite el almacenamiento/recuperación/eliminación síncrona y asincrónica de claves.
escribí Bx para este propósito; que le da un simple caché en memoria con:
- de almacenamiento de valor-clave
- de caducidad opcional de los datos almacenados
- Soporte para esquemas utilizando JSON-esquema
Aunque estoy Conectando mi propio repositorio aquí, puedo asegurarle que funciona bien y ha sido utilizado en producción en mi propia compañía, Onshape durante más de un año sin problemas. Al final del día, es una herramienta bastante simple; No hay mucho que estropear aquí.
Sin embargo, si usted está almacenando datos que está destinado a ser permanente vas a querer una base de datos como MongoDB (w/ Mongoose), MySQL, etc en lugar de una memoria caché como Bx o Redis.
el repositorio no tiene ningún ejemplo y el sitio no está disponible – Tony
- 1. Detección de fugas de memoria en nodejs
- 2. ASP.Net Almacenamiento en memoria caché
- 3. Almacenamiento en memoria caché de WebConfigurationManager.AppSettings?
- 4. Almacenamiento en memoria caché PreparedStatement en Tomcat
- 5. Restkit, desactivar el almacenamiento en memoria caché
- 6. Almacenamiento en memoria caché REST y URI
- 7. Datos principales con almacenamiento en memoria
- 8. Objetos con almacenamiento de memoria de herencia
- 9. Modelos de concurrencia en nodejs
- 10. Almacenamiento en memoria caché de objetos regex compilados en Python?
- 11. Iframe problema de almacenamiento en memoria caché src en firefox
- 12. Rails 3.1 elementos de almacenamiento en memoria caché en heroku
- 13. Almacenamiento en memoria caché de un archivo binario en C#
- 14. Almacenamiento en memoria caché de todos los usuarios en ASP.NET
- 15. Activadores de base de datos/integridad referencial y almacenamiento en memoria caché en memoria
- 16. Desactivar el almacenamiento en memoria intermedia de salida
- 17. Almacenamiento en memoria caché de Solr con EHCache/BigMemory
- 18. Cómo deshabilitar el almacenamiento en memoria caché de hibernación
- 19. Almacenamiento en memoria para la aplicación de matraz
- 20. ¿Cómo afecta el almacenamiento en caché el consumo de memoria?
- 21. cómo deshabilitar el almacenamiento en memoria caché de tomcat?
- 22. C# y almacenamiento de datos en la memoria
- 23. rails asset Pipeline "No se puede asignar memoria - nodejs"
- 24. Almacenamiento en memoria caché en ASP.NET MVC Framework
- 25. Almacenamiento en memoria caché en Haskell y paralelismo explícito
- 26. Vídeo HTML5: aborto forzado del almacenamiento en memoria intermedia
- 27. NSURLConnection, NSURLRequest y almacenamiento en memoria caché remota
- 28. Uso de la memoria de almacenamiento local de subprocesos
- 29. Cómo escribir un servicio WCF con almacenamiento persistente en memoria?
- 30. ¿Por qué agregar "" a una memoria de almacenamiento de cadenas?
Este ejemplo me muestra: el número es 0, el número es 2, el número es 4, el número es 6, etc. es muy confiable. Nadie más está de visita. Alojado en nodester.com. ¿Alguna idea de lo que eso significa? –
@Thomas David Baker, sí, el navegador hace una solicitud adicional para favicon.ico. Modifiqué el fragmento para admitir la última versión del nodo y para registrar el método de solicitud y la URL en la consola. Echa un vistazo ahora. Debería mostrar algo como 'GET/favicon.ico' entre cada otra solicitud. –
¿Cuántos estados se conservarán? ¿Hay algún valor para el que pueda establecerlo? – user482594