Dans le cadre de l'optimisation des temps de recherche des matchs, ci-dessous un ensemble de points notable qui peuvent avoir une influence sur la performance globale.
L'application wayzup-matcher
est constitué en partie d'un ensemble de workers
avec une converture de test faible.
- account_created_worker.rb
- account_deleted_worker.rb
- account_updated_worker.rb
- administrator_created_worker.rb
- administrator_deleted_worker.rb
- administrator_updated_worker.rb
- favorite_ride_regenerate_matchings_worker.rb
- favorite_trip_upsert_worker.rb
- regenerate_offers_for_mate_worker.rb
- send_ttin_worker.rb
Il existe deux types de workers, le premier groupe est en charge de syncroniser
les ressources Mate
et Administrator
qui sont présentes dans deux applicatifs
wayzup-api
et wayzup-matcher
.
Le déclenchement de la mise à jour d'une ressource doit si j'ai bien compris n'être
démarré que par les événements suivants create
, update
, delete
depuis l'application
wayzup-api
.
La suppression d'un Mate
dans le job account_deleted_worker.rb
supprime aussi
un ensemble de ressource, Le FavoriteTrip
, les FavoriteRide
, tous les
FavoriteRidesMatching
dans lequel le Mate
est passager ou conducteur.
La MAJ d'un Mate
va déclencher le recalcul des offres Offer
si son commute_mode
(moyen de déplacement) change. Une désactivation (status = :inactive) des FavoriteRidesMatching concernant
ce Mate
et lance le déclenchement d'un job MateOffersUpdatedWorker
une fois
les opérations finies