Open jmg opened 10 years ago
@jmg Fijate la movida que hice ahí de archivos. La parte del server que habías hecho vos, si mal no entendí, era una implementación de ejemplo de en un entorno web; me pareció correcto ponerlo ahí, comentame qué te parece. Sin embargo, luego de hacer ésto me surgió una duda:
La clase CacheClient era una implementación específica de tu ejemplo web, pero el backend de memoria MemoryProcessBackend hace uso de CacheClient... creo que hay un error de concepto acá, porque el backend debería ser independiente de cualquier otro cliente ya que es justamente el que hace el trabajo sucio.
@ariel17 Por qué te parece que el server es un ejemplo en un entorno web? El server de cache que hice es de propósito general. Funciona exactamente como memcached (solamente implementando TCP sockets. No UDP ni unix sockets). Tranquilamente se puede tener un app de escritorio haciendo uso del server de cache.
La clase CacheClient forma parte de la arquitectura cliente-servidor del backend de almacenamiento en memoria. Ninguna es un caso especifico ni ejemplo. Ambas forman parte del MemoryProcessBackend.
@jmg Me pareció que era eso :( no lo había entendido. La idea del branch era esa justamente, aclarar y que no se rompa nada :)
Entonces, ponele, ¿este framework siempre-siempre va a ser centralizado? Me perdí acá :P ¿Mi backend va a estaría implementado por la parte del server?
@ariel17 Tu backend no debería ver a mi server. Lo único en común entre los backends debería ser la interfaz CacheBackend. MemoryProcessBackend es mi implementación en particular para el backend en memoria estilo cliente-servidor. Mi idea es que los demás backends implementen esa interfaz y no vean nada del código que hice para la implementación cliente-servidor.
Armar ejemplos de uso de jcaching. Pueden ir desde los más simple hasta alguna web app básica que haga uso del framework de cache.