Commit Graph

93 Commits

Author SHA1 Message Date
Daniel Cortes
703795ed6b Merge branch 'testing' 2020-06-14 04:09:00 -04:00
Daniel Cortes
a17d024393 Ultimos tests de cache 2020-06-14 04:08:18 -04:00
Daniel Cortes
71fe9523a9 Tests de get_artist_of_recording 2020-06-14 04:04:16 -04:00
Daniel Cortes
907cfe92d5 Testeados get_releases_of_recordings 2020-06-14 03:59:00 -04:00
Daniel Cortes
823149bf5b Testeo de get_recordings of release 2020-06-14 03:32:44 -04:00
Daniel Cortes
fb70b829a3 Tests para get_recording 2020-06-14 01:48:23 -04:00
Daniel Cortes
a4f3a5c87f Test para get_artist_of_release 2020-06-14 01:44:02 -04:00
Daniel Cortes
e3c3209433 Mas tests <3 2020-06-13 01:56:56 -04:00
Daniel Cortes
45147618c1 htmlcov a gitignore 2020-06-13 01:31:14 -04:00
Daniel Cortes
a7984779f7 Testeando el codigo! 2020-06-13 01:18:09 -04:00
Daniel Cortes
b806b1163c Los docs estaban demasiado desactualizados 2020-06-12 17:23:27 -04:00
Daniel Cortes
97f4b86870 cambios minimos en search 2020-06-12 06:57:48 -04:00
Daniel Cortes
788a4e3397 Cache para los cover arts
Aparte hice un metodo que cambia http a https dentro de map_coverart,
porque por alguna razon cover art archive retorna sus imagenes con http
y los navegdores se quejan por esto
2020-06-12 06:39:04 -04:00
Daniel Cortes
878c85ec78 Continua la separacion de cache 2020-06-12 06:23:16 -04:00
Daniel Cortes
b8c79da9ca Extrayendo funcionalidad de cache en su propio modulo 2020-06-12 02:40:26 -04:00
Daniel Cortes
bb27c57c98 Cache en covers 2020-06-12 01:09:22 -04:00
Daniel Cortes
8951541a7a Artists of recordings 2020-06-12 00:19:34 -04:00
Daniel Cortes
df83c17c39 Agregado cache a release of recordings 2020-06-11 23:31:28 -04:00
Daniel Cortes
a1a74de82d Arreglada recordings of release 2020-06-11 05:57:40 -04:00
Daniel Cortes
1aed9351ab Agregando logs a medium 2020-06-11 05:15:23 -04:00
Daniel Cortes
83c095e4ec Pasando a utilizar flake8, es mas rapido y confiable 2020-06-11 04:59:06 -04:00
Daniel Cortes
1d4c5f28ac Arreglada race condition de get_discs_of_artist
Ademas hice algo inteligente y agrege logs a la funcion, es mas facil
ver que carajo paso
2020-06-10 05:28:00 -04:00
Daniel Cortes
2a639f557f Agregada integracion a cache de recordings
Fue un leseo la parte de recordings_of_release, pero ya esta esa parte

Me faltan un par de recordings no mas :3
2020-06-10 04:06:04 -04:00
Daniel Cortes
65c77c679f Continuando con el almacenamiento de datos en cache
Va a mejor la cosa, tengo que hacer tests si o tambien porque no estoy
nada seguro si es que todo funciona como espero ya que toda llamada a la
api corresponde a una llamada a cache y descubrir si es que esta todo en
cache como se espera

Voy a terminar del modo que lo estoy haciendo y tal vez cambio esto a un
modulo de cache el cual se encargara de o obtener datos desde cache o
llamar a music brainz para suplir los datos que no puede responder
2020-06-10 00:02:45 -04:00
Daniel Cortes
d62253051b agregado cache a get_artist_of_disc 2020-06-09 05:55:48 -04:00
Daniel Cortes
d6060915de stash me da mas problemas de los que deberia asi que se va 2020-06-09 05:02:38 -04:00
Daniel Cortes
b44c18770e get_artist_of_disc con cache 2020-06-09 04:49:39 -04:00
Daniel Cortes
cabe607958 Volver a py-redis
Resulta que django-redis es muy bonito pero esta pensado para usarse
como el cache por default de django, remplazando a memcached y por eso
no permite casi ninguna de las funcionalidades que redis permite, como
usar listas y sets.
Djang-redis permite usar el cliente directamente pero el codigo se
estaba haciendo largo y creando mas problemas de los que necesito
Asi que voy a usar el cliente regular, asi me evito dramas
2020-06-09 04:08:08 -04:00
Daniel Cortes
72bcf94d11 Trabajando para aprovechar el cache el las relaciones 2020-06-09 01:55:12 -04:00
Daniel Cortes
2edca8e255 Se remplazo la conexion a cache de django a la nativa 2020-06-08 23:14:13 -04:00
Daniel Cortes
765e482958 removida dependencia no usada 2020-06-08 22:50:38 -04:00
Daniel Cortes
1e548be114 Reintentar request si es que el servidor responde con 503
Resulta que musicbrainz puede responde con 503 a pesar de ser buena
gente y mantener el ratelimit, esto puede ser por varias razones
documentadas en
https://musicbrainz.org/doc/XML_Web_Service/Rate_Limiting
2020-06-08 22:39:01 -04:00
Daniel Cortes
749aa50ee1 es workers no worker 2020-06-08 22:04:53 -04:00
Daniel Cortes
5450e6522e Es necesario reiniciar los workers en deploy 2020-06-08 21:59:25 -04:00
Daniel Cortes
06b2ff0c4b load_cover_art como job de alta prioridad
Ya que no tengo limite de request por segundo a coverart archive solo
hago mas lento el worker default con las request hacia alla sumando a
que tengo que esperar a que termine el resto

En un worker separado no tengo esas limitaciones
2020-06-08 21:00:44 -04:00
Daniel Cortes
4066a6c9e1 No estaba instalando los requirements de produccion 2020-06-08 19:37:40 -04:00
Daniel Cortes
2646438343 escribi -f en vez de -r 2020-06-08 19:30:10 -04:00
Daniel Cortes
c076b11993 rm -r para eliminar carpetas ~~ 2020-06-08 19:25:18 -04:00
Daniel Cortes
392dba39ea Inclusion de un ratelimit usando cache
Necesitaba un ratelimit que estuviera disponible en todos los workers,
cosa que aparentemente la libreria que estaba usando no tomaba en cuenta

asi que la mejor idea que tuve es aprovechar el cache y usarlo para
generar el ratelimit :3 asi que como todos los workers se comunican con
el mismo cache, todos van a compartir el mismo lock
2020-06-08 19:14:51 -04:00
Daniel Cortes
b71b6e824d json.load es differente a json.loads 2020-06-08 17:19:07 -04:00
Daniel Cortes
ac58e29c75 Definidos jobs basicos y comunicacion con estos 2020-06-08 16:56:14 -04:00
Daniel Cortes
90c34dada3 Me equivoque en la key de release-group-count 2020-06-08 05:16:19 -04:00
Daniel Cortes
54d18f0d76 Agregando jobs para rellenar el cache de datos 2020-06-08 05:11:34 -04:00
Daniel Cortes
fce2072f82 Tampoco era buena idea hacer querys en los mapeos 2020-06-08 04:19:05 -04:00
Daniel Cortes
a3b4479579 Parallel map fue una mala idea~ 2020-06-08 04:07:07 -04:00
Daniel Cortes
d46c2f61ca Removiendo uso de cache en musicbrainz
Esto esta en proceso, se va a mover el cache a medium, donde se puede
controlar lo que se esta haciendo, ya que se planea que musicbrainz.py
sea simplemente una capa de conexion
2020-06-08 03:56:59 -04:00
Daniel Cortes
0e2ac5a1e3 Implentada RQ_Queues en el proyecto 2020-06-08 03:49:12 -04:00
Daniel Cortes
0d2d23e2e1 Utilizando cache de django 2020-06-08 02:10:01 -04:00
Daniel Cortes
6498bf9c48 Chequeo user agents en _do_request 2020-06-08 01:48:02 -04:00
Daniel Cortes
67e5e8a7a2 Divisiones visuales en medium 2020-06-08 00:29:43 -04:00