[pyar] [Django] Accesibilidad a Sistema Web Offline

Agustin Toledo toledoag en gmail.com
Jue Ago 9 11:49:45 -03 2018


Podes usar PWA para mostrar la "interfaz" del sistema cuando esté offline,
y usar como "base de datos local" IndexedDB que esta bastante bien
soportada, con un loop en el ServiceWorker de la progressive que chequee si
hay conexión, o enviar un mensaje push desde el servidor cuando se pierda
la conexión, y, al estar online de nuevo, el SW la recibe y manda lo que
tenga guardado en el IndexedDB.

El mar., 7 ago. 2018 a las 17:43, Daniel (<dmlistapython en gmail.com>)
escribió:

> La vez que me enfrenté a ese tipo de problemas me salió mucho (mucho)
> menos costosa la opción de tener una conexión de backup (con 3G/4G por
> ejemplo)
>
>
> El mar., 7 ago. 2018 a las 17:28, Emiliano Cugno (<emi.cugno en gmail.com>)
> escribió:
>
>> Muchas gracias Matías y Ariel por las respuestas. No conocía sinceramente
>> sobre Progressive Web App, por lo que ví (muy por arriba) es lo que
>> necesito, voy a investigarlo.
>>
>> Ariel, creo que mi idea se asemejaba en cierta forma a la tuya, aunque
>> sigo sin darme cuenta cómo "mostrar" online la página cuando no haya
>> Internet. Ese es mi principal problema, y la única solución que se me
>> ocurrió es correr esa app en local, y cuando haya internet pegarle con un
>> worker de Celery al sitio online. Tal vez es una pavada lo que planteo.
>>
>> En fin, muchas gracias. Me voy a poner a investigar estas dos opciones
>> que me dieron, que desde ya parecen mucho más eficientes que la mía.
>>
>> El 7 de agosto de 2018, 17:07, Ariel Gerardo Ríos <
>> arielgerardorios en gmail.com> escribió:
>>
>>> Emiliano:
>>>
>>>     Tu enunciado es la definición de un sistema distribuido. Tanto tu
>>> sistema local como el remoto tienen que ser considerados como partes
>>> independientes, porque de otra manera vas a tener mucho acoplamiento entre
>>> los componentes y te puede traer dolor de cabeza en el futuro; mejor
>>> separados y que evolucionen individualmente.
>>>
>>> * Si tenés la libertad de tomar decisiones de arquitectura: yo pondría
>>> una API del lado remoto y localmente usaría un storage (una bd o una cola)
>>> para procesar los datos pendientes de envío de forma asincrónica y que
>>> reintente hasta que tengas un OK. Para implementar un esquema de workers
>>> asincrónicos se suele usar Celery <http://www.celeryproject.org/> con
>>> Django.
>>>
>>> * Si no: también separaría la lógica que guarda localmente y la que hace
>>> el guardado remoto, así tenés una separación de responsabilidades y es más
>>> fácil de probar; usaría una db o una cola de mensajes.
>>>
>>> [  web local ]  ------guarda localmente -------> [ DB local o cola ]
>>> <-------- [ worker lee y guarda en la DB remota ] ----------> [ DB remota ]
>>>
>>> Saludos!
>>>
>>> El mar., 7 de ago. de 2018 a la(s) 16:54, Matías Bellone (
>>> matiasbellone en gmail.com) escribió:
>>>
>>>> Si es algo web, probablemente te convenga revisar Progressive Web Apps
>>>> que usan Service Workers para proveer funcionalidad offline al conectarte a
>>>> una web.
>>>>
>>>> https://developers.google.com/web/fundamentals/codelabs/offline/
>>>>
>>>> Saludos,
>>>> Toote
>>>>
>>>> On Tue, Aug 7, 2018 at 4:34 PM Emiliano Cugno <emi.cugno en gmail.com>
>>>> wrote:
>>>>
>>>>> Hola lista, mi nombre es Emiliano. Me surgió un problema de
>>>>> requerimientos en un proyecto el cual, cuando se corta internet, debe
>>>>> seguir operando la app de pagos. El sistema debe ser web por el 90% de los
>>>>> otros requerimientos, y acceder mediante navegador.
>>>>>
>>>>> Para solucionar el problema, mi idea es correr en local la web. Si hay
>>>>> internet, funcionar normalmente. Si no lo hay, entrar al sistema de manera
>>>>> local, y persistir en local dichos pagos. Cuando vuelva internet, pegarle
>>>>> al sitio web con todos los pagos efectuados y procesarlos. Estuve viendo
>>>>> que lo podría implementar mediante un esquema de tenants, aunque sería una
>>>>> solución muy rústica la cual quiero evitar a toda costa.
>>>>>
>>>>> ¿Que les parece? ¿Se les ocurre algo mejor? Hace muy poquito que estoy
>>>>> desarrollando y sinceramente no consigo encontrar una solución que me
>>>>> convenza.
>>>>>
>>>>> Desde ya, muchas gracias!
>>>>> _______________________________________________
>>>>> Lista de Correo de PyAr - Python Argentina - pyar en python.org.ar
>>>>> Sitio web: http://www.python.org.ar/
>>>>>
>>>>> Para administrar la lista (o desuscribirse) entrar a
>>>>> http://listas.python.org.ar/listinfo/pyar
>>>>>
>>>>> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
>>>>> Argentina - http://www.usla.org.ar
>>>>
>>>> _______________________________________________
>>>> Lista de Correo de PyAr - Python Argentina - pyar en python.org.ar
>>>> Sitio web: http://www.python.org.ar/
>>>>
>>>> Para administrar la lista (o desuscribirse) entrar a
>>>> http://listas.python.org.ar/listinfo/pyar
>>>>
>>>> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
>>>> Argentina - http://www.usla.org.ar
>>>
>>>
>>>
>>> --
>>> Ariel Gerardo Ríos
>>> linkedin <http://www.linkedin.com/pub/ariel-gerardo-rios/33/158/227> | *blog
>>> <http://www.ariel17.com.ar>*
>>>
>>> _______________________________________________
>>> Lista de Correo de PyAr - Python Argentina - pyar en python.org.ar
>>> Sitio web: http://www.python.org.ar/
>>>
>>> Para administrar la lista (o desuscribirse) entrar a
>>> http://listas.python.org.ar/listinfo/pyar
>>>
>>> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
>>> Argentina - http://www.usla.org.ar
>>>
>>
>> _______________________________________________
>> Lista de Correo de PyAr - Python Argentina - pyar en python.org.ar
>> Sitio web: http://www.python.org.ar/
>>
>> Para administrar la lista (o desuscribirse) entrar a
>> http://listas.python.org.ar/listinfo/pyar
>>
>> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
>> Argentina - http://www.usla.org.ar
>
>
>
> --
> Daniel Malisani
> _______________________________________________
> Lista de Correo de PyAr - Python Argentina - pyar en python.org.ar
> Sitio web: http://www.python.org.ar/
>
> Para administrar la lista (o desuscribirse) entrar a
> http://listas.python.org.ar/listinfo/pyar
>
> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
> Argentina - http://www.usla.org.ar

-- 

Que tengas un excelente día!
Saludos.


*Ing. Agustín Toledo*

*agroads.com.ar
<http://links.agroads.com.ar/wf/click?upn=1gmVyW3hIIR9x6v1jhDEilQHbYMcntn6SE-2FniPoLGTo-3D_Mq4tZjgB8vpxws9uvJ3TiBzVKbupb-2B9FzHugw8k1JOCEGLh63MxpiJXzCtSwwvPSZ6RvrbTU6GmKj00vdCzr8uO6L2b6Rlpio8jm4Q-2FEnGlwqvS4TdUA4xdnDvAGylWrGyry7n9SaZB2puLH6L6hF-2Bi6fdy9QXoaR-2F4ER-2BGLwfn8psLPzNTTU2X0vIYJzns-2FkFiw-2FaAIFO65wQw4XUww2ad6x2zLJMeLcbaxcO4saU4-3D>**Facebook
<http://links.agroads.com.ar/wf/click?upn=WsUa-2Bc86EC6e69sySDnSzUPLqtRd30hNo8BBn5kYppkNG7te-2Fd873-2FXZWGWeX-2FhL_Mq4tZjgB8vpxws9uvJ3TiBzVKbupb-2B9FzHugw8k1JOCEGLh63MxpiJXzCtSwwvPSz-2FV11lVIUicRC0FsyvWC7Bb15hYAWTc2mbQ41CQFuO03r5Ox0385kNvbCkvrnmBQCyGkoV0wBuBQod-2F0mgSowq7C4ywyGLoSWQE-2FPsPmUrygVGyh0mIk1HxLIg62Vi-2F-2F8AQuC9yFHYa-2Be4CRvETcKNly0muoEazLFt9eAsnq8wM-3D>*
 I *Twitter
<http://links.agroads.com.ar/wf/click?upn=EaqpCH3og-2BSqrvt6As12wdgIkfF5gAwxuyaSsnDjR2b-2FWoHvRMMn6whBrGdVj2Kw_Mq4tZjgB8vpxws9uvJ3TiBzVKbupb-2B9FzHugw8k1JOCEGLh63MxpiJXzCtSwwvPSeiSaBMWdfDfWr9KblPjE7jRrxHaS-2FVRVcfw9EF7BKXCXtZAYbYj5rVyzW8Ewm0pIU4QSaOtjHTh9XPuc6v3rgJDLs73gSGfCP3A-2B5zUi6tBgPuuRXHE6j1rTV7FP35SEF-2Fp3b10WQxtZO-2F-2Fj6ro5v2YdUA9HHnXPR2TR-2BDEaJC4-3D>
*
I *Youtube
<http://links.agroads.com.ar/wf/click?upn=WsUa-2Bc86EC6e69sySDnSzXM9Y-2FREH2SEcllCmjW0LvsC7HeNbFsjbuEujYJr1EHnm-2B-2BD7u-2FZUdzKsOEmk0R8zA-3D-3D_Mq4tZjgB8vpxws9uvJ3TiBzVKbupb-2B9FzHugw8k1JOCEGLh63MxpiJXzCtSwwvPS2irb5Z3TSgN-2BhA7rmcz1Hid-2BBUTRfHBrHlQyqOmO5Ta26fEbI4uoOrqlycOsMEQeZD5NJ4BKb5xxl5kWLCn0qOiqgXa2oh5Z2e-2BwOcPUtQT74AEfNLNLxyDx2kTPQ8cbPaK3xzs1HJ-2BNPnbTBsRqrMyM3DuZjsg-2FX7ADU6-2BLUig-3D>*
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.python.org.ar/pipermail/pyar/attachments/20180809/3ff1e0fe/attachment-0001.html>


Más información sobre la lista de distribución pyar