img, le cache d’images sur LinuxFr.org

Posté par  (site web personnel) . Édité par BAud, Nils Ratusznik, Ysabeau 🧶 et Florent Zara. Modéré par Pierre Jarillon. Licence CC By‑SA.
52
22
oct.
2024
LinuxFr.org

Le site LinuxFr.org utilise divers logiciels libres pour son fonctionnement et ses services : une large majorité provient de projets tiers (Debian, MariaDB, Redis - version d’avant le changement de licence, nginx, Postfix, conteneurs LXC et Docker, Ruby On Rails, Sympa, etc.) et d’autres composants sont développés pour nos propres besoins. Cette dernière catégorie comprend le code principal du site web en Ruby On Rails, et principalement 5 services autour : le cache d’images img, la tribune board, le convertisseur EPUB 3 epub, le partageur sur les réseaux sociaux share et le convertisseur LaTeX vers SVG svg. Cette dépêche va s’intéresser à img, un code sous AGPLv3.

Elle est née d’une envie personnelle d’expliquer, documenter et montrer ce qui a été fait sur le cache d’images de LinuxFr.org, complétée d’une demande d’un « article technique sur le fonctionnement de ce cache, les choix techniques qui ont été faits, les erreurs commises donc à éviter… ».

Forum général.général Requête HTTP pour obtenir la version mise en cache, même périmée

Posté par  (site web personnel, Mastodon) . Licence CC By‑SA.
2
25
avr.
2023

Bonjour,

J'utilise un miroir avec mise en cache du dépôt Alpine Linux pour mes machines virtuelles, le but étant de minimiser l'usage de bande passante et de rendre les mise à jour plus rapides sur tout mon parc.

Pour faire ça j'utilise nginx, avec une config pompée là dessus. Ça marche impec.

Cependant je voulais savoir s'il existait un moyen pour un client HTTP de demander au miroir de lui servir une ressource en version mise en cache, même (…)

Journal scratch_manager: gestionnaire de mise en cache de jeux de données

Posté par  . Licence CC By‑SA.
21
16
déc.
2022

J'ai eu l'occasion de développer un petit logiciel open-source pour mon travail, donc j'en profite pour partager ici.

Motivation

Sur les grappes de calculs (clusters) dédiés à l'intelligence artificielle, il y a un problème assez récurrent lié au stockage et à l'accès aux données.
Dans ces installations, on trouve généralement d'un côté une baie de stockage avec des jeux de données composés de millions de petits fichiers, et de l'autre côté les nœuds de calcul qui lisent ces fichiers.
La (…)

Forum Linux.redhat Cache log de squid ne tourne pas

Posté par  . Licence CC By‑SA.
Étiquettes :
0
6
juil.
2021

Bonjour,
J'ai un cache log squid qui grossi trop.
Je n'arrive pas à le faire tourner.
J'ai copié le fichier de conf de logrotate de cron daily à cron hourly.
J'ai fait un fichier spécial squid_cache dans /etc/logrotate.d/

    var/log/squid/cache.log {
    daily
    rotate 2
    size 5G
    compress
    notifempty
    missingok
    nocreate
    sharedscripts
    postrotate
      # Asks squid to reopen its logs. (logfile_rotate 0 is set in squid.conf)
      # errors redirected to make it silent if squid is not running
      /usr/sbin/squid -k rotate 2
(…)

Forum Linux.général LVM-Raid0 + lvm cache pour Docker

Posté par  . Licence CC By‑SA.
0
6
août
2020

Bonjour,

J'utilise un container docker pour générer des images Yocto.
Ca prend pas mal de temps (1h30) et je voudrais utiliser au mieux la machine.

Les sources et les sorties sont stockées sur l’hôte (2 disques HDD en LVM-Raid0) à travers un volume.
Comme j'ai un SSD qui traîne à coté et que j'ai découvert sous linuxfr qu'on pouvait faire un cache de HDD avec un SSD, j'ai voulu l'utiliser en cache.

Après quelques recherches, j'ai configuré ma machine d'après (…)

KissCache un service de mise en cache KISS

26
18
mar.
2020
Administration système

KissCache est un serveur de cache sous licence MIT pensé suivant le principe KISS : Keep It Simple Stupid.

Contrairement à un serveur mandataire (proxy) transparent comme Squid, pour utiliser KissCache, il faut (et suffit) de préfixer l’adresse URL voulue par celle de l’instance locale de KissCache. KissCache va alors télécharger en arrière‑plan le fichier demandé et le transmettre au client. Si plusieurs clients demandent le même fichier au même moment, celui‑ci ne sera téléchargé qu’une seule fois. KissCache n’étant pas transparent, il peut tout à fait mettre en cache des fichiers disponibles via HTTPS.

Wiki [PHP] Tester si le serveur cache Memcached fonctionne

0
17
avr.
2019

Voici une méthode en PHP permettant de tester si le serveur cache Memcached est bien joingnable.
Vous pouvez voir un exemple type de son fonctionnement dans ce script de HealthCheck pour nextcloud.

Tester la disponibilité (connexion) d'un unique serveur

<?php
if(memcache_connect("www.my_server_memcached.com", 11211)){
    echo "work";
}else{
    echo "not work";
}
?>

Tester la disponibilité (connexion) de plusieurs serveurs

<?php

$CONFIG['memcached_servers'] => array(
     array('localhost'
(…)

Wiki [PHP] Tester si le serveur cache (redis) fonctionne

0
16
avr.
2019

Voici un exemple de code testant si le serveur cache redis est bien fonctionnel.
Vous pouvez voir un exemple type de son fonctionnement dans ce script de HealthCheck pour nextcloud.

Tester la disponibilité (connexion) d'un unique serveur

<?php
$CONFIG['redis']['host'] = "127.0.0.1";
$CONFIG['redis']['port'] = 6379;

echo checkCacheRedis($CONFIG);

function checkCacheRedis($CONFIG){
                    /* on definit le port par défaut si l'utilisateur ne l'a pas défini
(…)

Wiki Tuto/HowTo - Nextcloud activer système de cache (memcache) avec redis

4
29
mar.
2017

Introduction

  • Le système de cache permet de stocker en mémoire RAM (ou en SWAP si trop de RAM utilisée) certaines informations régulièrement sollicitées, évitant ainsi de passer par la base de données (MySQL, PostGreSQL, SQLITE, etc) et augmentant les performances. Si vous utilisez un cache Redis sur une autre machine que le serveur web (par exemple en cluster), utilisez php-apcu pour stocker localement les scripts php précompilés et redis pour les informations qui doivent être partagées entre les serveurs.

Note (…)

Forum Linux.général purger le cache RAM après archivage et zippage de gros dossiers

Posté par  . Licence CC By‑SA.
0
26
août
2016

Bonjour,

Par manque d'inode sur un FS je vais devoir archiver beaucoup de dossiers sur un autre FS.
J'aimerai savoir si il y a un commande que je peux intégrer dans ma boucle pour purger le cache après à chaque tour de boucle car la RAM sature après la copie d'environ 300 dossiers et fait planter l'opération en cours de route?

Voici à quoi ressemble ma boucle

for dir in $dirsrc/* ; do

 if [ -d $dir]; then
    ionice -c
(…)

Proxy HTTP(s) gatejs

Posté par  . Édité par Xavier Teyssier, Benoît Sibaud, Pierre Jarillon et rootix. Modéré par ZeroHeure.
20
20
juin
2014
JavaScript

gatejs est un nouveau mandataire/proxy HTTP(s) (forward & reverse) qui a pour vocation de remplacer squid, nginx, varnish ou encore apache, dans leurs fonctions de proxy (forward & reverse). Il est publié sous licence GPLv3.

Il est développé en JavaScript (2/3) et en C++ (1/3). Il est prévu que la proportion de C++ se réduise au fil du temps. Ce proxy utilise le moteur Javascript V8 et nodejs.

Il a été initialement conçu pour offrir plus de flexibilité sur l'interception et le traitement d'informations en HTTP.

Pour ceux qui ne sont pas pro-JavaScript, il est important de préciser que les performances de gatejs sont proches, voire dans certains cas, supérieures à nginx.

De plus, l'utilisation de Javascript permet d'augmenter la lisibilité des codes, de les factoriser et de renforcer la sécurité, surtout pour des opérations complexes.

Les configurations sont écrites au moyen de la notation d'objets Javascript (JSON).

Forum général.général Vie privée et stockage des login sur site web

Posté par  . Licence CC By‑SA.
0
15
juin
2014

Bonjour,

Je viens de m'apercevoir que les sites comme linuxfr ou amazon se souviennent de moi même quand j'efface tous les cookies et que j'efface le cache de mon navigateur (firefox).
Quelle est la méthode utilisée par ces sites pour enregistrer cette information ?
Et est-ce qu'il existe un plugin pour effacer automatiquement cette information ?

Par exemple je souhaite pouvoir me connecter à Amazon, et automatiquement après un délai configurable (par exemple 1h) lorsque je me reconnecte sur Amazon, il ne (…)