- un utilisateur poste un mark sur blogmarks
- si besoin (par rapport à la fraicheur voulue) on ajoute dans la file d'attente (table bm_screenshots)
- id du lien, date de demande, date de génération, url de l'image, status (ok, en cours, ko), tentatives
- id : int 11
- link : int 11
- created : datetime
- generated : datetime
- url de l'image : varchar 255
- status : enum
- tentatives : tinyint
- on lit un mark sur l'interface
- on va chercher la widget adequat
- si c'est une image, l'url du dernier screenshot ok pour ce lien dans la table bm_screenshots
- on a un démon qui s'occupe de gérer la file d'attente et de générer les screenshots
- stockage sur le disque identique à l'ancien selon date de génération
- si on détecte que ça foire (taille inférieur à 1000 octets , 2x la même taille de suite)
- on fais un test sur la mire pour voir si le serveur de screenshot répond normalement
- si oui : on incrémente tentative, si tentative = X, on passe le status à "ko"
- technologie : cron/PHP, indépendant de bm-core
- conversion de l'ancien modèle vers le nouveau
- bm_links attachés aux marks
- pour chaque mark :
- convertir le lien screenshot vers bm_screenshots
- supprimer la colonne screenshots et les enregistrements dans bm_links
- méthode $link->getWidget() image (loading - moins d'1 minute, 404, ok) ou flash (mp3)
Download in other formats: