Licence CC BY

J’ai ma propre instance Mastodon. Sept mois plus tard, je déconseille.

Un logiciel beaucoup trop gros et des problèmes de conception

En novembre 2022, Elon Musk a racheté Twitter, le précipitant dans une nouvelle ère de grand n’importe quoi. C’est à ce moment que beaucoup de gens se sont dit qu’ils allaient passer à Mastodon présenté par certains comme une alternative à Twitter.

J’avais déjà essayé Mastodon à sa sortie, mais n’avait pas été convaincu par l’expérience. En particulier, il manquait beaucoup de la partie « sociale » dans le concept de « réseau social » : les comptes qui m’intéressaient n’étaient pas sur Mastodon. Donc j’avais abandonné. Mais là, avec le rachat de Twitter par Musk, beaucoup parlaient de migrer, et je me suis laissé tenter. C’est aussi le moment ou on a vu arriver du drama autour de la modération et des blocages inter-instances1, donc je me suis dit : j’ai un serveur avec de la place, pourquoi ne pas héberger ma propre instance personnelle ? Comme ça, pas de problème de modération !

Causons technique

L’installation

Si on a un peu l’habitude de l’hébergement, il suffit de suivre la documentation et ça fonctionne. Pareil pour les mises à jour. Et ça, c’est cool.

De même, aucun problème pour configurer le serveur, me créer un compte et administrer une poignée de comptes pour des amis.

La capacité serveur nécessaire

C’est le gros point noir technique. Mastodon consomme à mort pour le service rendu. Je n’ai pas essayé de configurer le service au-delà de ce que propose l’outil.

Quelques chiffres :

  • 867 Mo dans la base de données (dont 281 Mo rien que pour les statuts)
  • 15,1 Go de stockage de médias (je ne sais pas d’où ils peuvent sortir)
  • 1,5 Go de RAM2 occupé par les processus Mastodon + 1,5 Go de RAM2 pour les processus PostgreSQL rattachés à Mastodon.
  • 2 587 029 tâches Sitekiq traitées, soit environ une toutes les 7 secondes. Cela dit, l’occupation processeur reste faible.

Tout ça pour deux utilisateurs actifs seulement sur le serveur, très peu suivis et qui suivent peu de comptes. Sans oublier que toutes ces données doivent aussi être sauvegardées, et que les médias se compressent très mal.

Et à l’usage ?

Le côté technique de la force

De manière générale, d’un point de vue technique, Mastodon sur une instance personnelle, ça fonctionne correctement.

Avec toutefois un gros bémol : l’affichage de l’historique des publications des personnes. Concrètement, si je croise un message d’un inconnu (dans le sens : quelqu’un qui n’est pas dans mes contacts), si je veux voir son historique de messages, il y a 95 % de chances pour que celui-ci m’apparaisse vide. C’est un gros défaut pour mon usage : quand je vois quelqu’un qui poste un contenu qui me plait, j’aime bien savoir si c’est le type de contenus que cette personne publie d’ordinaire (auquel cas ça vaut le coup de la suivre) ou si c’est un message inhabituel.

La migration de mon ancien compte Mastodon s’est très bien passé, mais il était presque vide… je ne suis pas certain que ça fonctionne aussi bien pour des comptes avec un bel historique.

La charge, serveur, elle, est à peu près imprévisible. J’ai beau avoir réduit tous les caches des médias, j’en ai toujours une quantité énorme sur mon serveur, bien plus que tout ce que les comptes actifs sur mon serveur ont vu dans la fenêtre de temps paramétrée. Les liens interserveurs sont aussi imprévisibles : le « serveur le plus actif » avec lequel je suis fédéré est, de très loin, un serveur de 32 comptes actifs.

Mastodon en tant que réseau social

Le fait d’avoir son instance personnelle est confortable, j’ai ainsi évité toutes les problématiques à base de modération.

Cela dit, en tant que réseau social généraliste, Mastodon est assez inefficace pour mon usage. Et pour une raison toute bête : il y manque les gens. Non pas qu’il n’y ait personne d’intéressant, au contraire. Mais beaucoup – trop – de comptes qui m’intéressent et que je ne veux pas perdre n’y sont pas. Pire : beaucoup de ceux qui avaient plus ou moins migré en novembre 2022 ont déjà abandonné le réseau, ou ne se sont jamais rendu compte que l’outil de crosspost avec Twitter qu’ils utilisaient ne fonctionne plus depuis des mois…

Le fait de n’avoir aucune forme de recommandation (on voit qui on suit, dans l’ordre de publication) est très agréable.

Ici une instance personnelle est un énorme handicap : le flux général d’instance, par définition, est vide. Couplé au manque de très grands comptes « prescripteurs » et à l’absence d’algorithmes de recommandation, ça crée un vrai manque de découvrabilité. Je suis certain de passer à côté de tonnes de contenu passionnant, mais que je suis incapable de trouver.

De plus, ceci renforce la notion de bulle de contenu : je ne vois littéralement que les contenus que j’ai choisis, ou partagés directement par des personnes que j’ai choisies. Ce problème de la bulle n’est pas résolu par l’utilisation d’une instance publique, puisqu’on est très fortement incités à choisir une instance qui nous correspond… donc dans notre bulle.

Quoiqu’en disent certains, la notions « d’instance » n’est pas du tout intuitive pour qui ne s’est pas intéressé au fonctionnement de Mastodon, et ce même pour les personnes avec un bon bagage technique. C’est un handicap si l’on imagine que le réseau veuille devenir massivement utilisé par le très grand public. Et je ne parle même pas des notions de Fediverse dont Mastodon n’est qu’une partie. Les pires ennemis de Mastodon sont, pour moi, certains de ses plus grands fans qui n’arrivent plus à voir les défauts de l’outil.

Un côté pratique toutefois à cette notion d’instances : j’en ai repéré quelques-unes (je ne donnerai pas de noms) dont je sais que si quelqu’un y est inscrit, il y a de grandes chances que ce soit un gros lourd…

Le futur !

Mon instance

Pour l’instant, je vais la garder, parce que je m’en sers, que le serveur est assez gros et que je n’ai pas envie de migrer vers autre chose.

Mastodon en tant que remplaçant de Twitter ?

À l’heure où Twitter devient de plus en plus n’importe quoi de jour en jour (là tout de suite, la dernière nouveauté c’est les publicités tous les 3 messages et le semi-ban des personnes qui les bloqueraient trop automatiquement…) la question peut se poser, et se pose de plus en plus tant Twitter devient inutilisable, même pour les gens de bonne volonté.

Ce point là est ambigu – et je ne parle pas des zélotes qui l’érigent en tant que remplaçant évident de Twitter, ni de ceux qui jurent sur leurs grands dieux que ça ne sera jamais un équivalent et que ça n’en a jamais eu la volonté.

Déjà, l’interface, le vocabulaire, les concepts, certaines actions sont directement reprises des anciennes versions de Twitter. Ça serait hypocrite de ne pas constater cet héritage. En fait, par beaucoup de points, Mastodon ressemble à Twitter tel qu’il était il y a 10–15 ans – avec des messages plus longs. D’ailleurs on y trouve son lot de trolls, de bots, de personnes qui viennent commenter en racontant n’importe quoi… simplement en moins systématique que sur Twitter.

Par contre, j’ai de très sérieux doutes sur le fait que Mastodon puisse remplacer Twitter, en tous cas pas en l’état, et pour diverses raisons :

  1. Le protocole de fédération est, disons-le, inefficace et ne semble pas du tout conçu pour gérer de grosses instances et de gros comptes massivement suivis. Idéalement il faudrait un grand nombre d’instances moyennes assez mal interconnectées pour que ça fonctionne, ce qui n’est pas du tout le modèle d’utilisation de tous les réseaux sociaux grands public (une poignée de comptes y sont massivement suivis, la plupart des comptes sont connectés à un petit cercle de proches et à quelques gros comptes).
  2. Le problèmes des instances dominantes. mastodon.social est décrié comme étant « beaucoup trop dominant », tout en ne comptant que 1,2 millions d’utilisateurs déclarés et 221 mille utilisateurs actifs (d’après la page d’accueil). Twitter a mille fois plus d’utilisateurs enregistrés, et plus de 550 millions d’utilisateurs actifs. Dans le monde francophone, Framapiaf a fermé ses inscriptions, mais n’a que 1500 utilisateurs actifs ; piaille.fr en a 7 500 ; marmot.fr 2900.
  3. Les dramas de modération ne sont toujours pas résolus, et ont tendance à s’empirer. Deux personnes sur deux instances généralistes moyennes ont de plus en plus de risques de voir leur lien coupé – sans parler des communautés qui s’isolent en sous-réseau quasiment étanches, ça c’est un mode d’utilisation encore différent de la plateforme.
  4. Méta (Facebook) s’intéresse à la chose, ce qui provoque encore plus de dissensions dans la communauté.

Et donc, on fait quoi ?

Bonne question, sans réponse simple.

Je ne vois pas d’avenir grand public à Mastodon, à moins que Facebook ne l’intègre (et ça ne serait pas forcément une bonne chose, rappelez-vous : Facebook a utilisé XMPP pour Messenger entre 2008 et 2015, on ne peut pas dire que ça ait fait du bien au réseau – pas plus que Google (2005–2013) d’ailleurs).

Dans tous les cas, si le réseau social – avec ses points forts et ses limites – vous intéresse, avoir sa propre instance Mastodon a quelques avantages et de sérieux inconvénients. Tout comme l’utilisation d’une petite instance tenue par des connaissances. Ou d’une instance thématique moyenne. Ou d’une grosse instance. La règle à retenir ici, c’est qu’il faut une confiance absolue dans l’administration de l’instance : comme dans les gros réseaux sociaux, c’est elle qui gère toutes vos données ; mais en plus ici elle a le pouvoir de vous couper instantanément et sans que vous le sachiez de toute une partie du réseau.

Si l’aventure de l’instance personnelle vous amuse, allez-y, c’est consommateur en ressources mais pas très compliqué. Sachez toutefois que vous ajoutez encore des contraintes à un réseau qui en a déjà beaucoup.


  1. En résumé : chaque instance est responsable de la propre modération de ses propres membres, avec une définition très variable de ce qui devrait être modéré ou non. Sauf que les instances sont toutes interconnectées par définition, donc un signalement ne garantit aucune action d’aucune sorte. Un gestionnaire d’instance peut bloquer un membre d’une autre instance, mais aussi bloquer l’intégralité d’une autre instance, une fonctionnalité qui a été utilisée sans forcément se rendre compte des conséquences réelles.
  2. « Users Resident Set Size (w/shared) »


Merci d’avoir lu ce billet beaucoup trop long pour ce qu’il contient d’utile, et assez décousu.

Vous pouvez me retrouver sur Mastodon ici : https://mastodon.spacefox.fr/@spacefox (ça fait une adresse un peu redondante…)

Le logo est celui de Mastodon.

12 commentaires

J’avais créé ma propre instance Pleroma. Je l’ai arrêté car je n’avais pas l’habitude des RS (je n’utilise pas Twitter, ni Facebook, j’aime l’idée de la fédération mais je n’ai pas l’habitude des RS).

L’installation était simple, la maintenance aussi et bien sûr niveau poids on était dans le domaine du raisonnable mais ça restait quelque chose de lourd tout de même (j’ai plus les chiffres mais l’essentiel du serveur était utilisé pas Pleroma).

+2 -0

Plus le temps passe, plus je me dis que des blogs avec des flux RSS, couplés avec des mails, conviennent comme réseaux sociaux. Et pourtant je suis sur bon nombre de RS mainstreams, mais il manque ce je ne sais quoi qu’ont les blogs.

+6 -0

Plus le temps passe, plus je me dis que des blogs avec des flux RSS, couplés avec des mails, conviennent comme réseaux sociaux. Et pourtant je suis sur bon nombre de RS mainstreams, mais il manque ce je ne sais quoi qu’ont les blogs.

qwerty

J’ai également ce ressenti mais j’avoue que je n’arrive pas à pointer du doigt ce qui manque.

+0 -0

Par curiosité, j’ai creusé un peu l’utilisation disque de Mastodon.

Si on suit l’installation par défaut, tout est dans /home/mastodon/live (hors base de données).

Là-dedans, on trouve (tailles en Mio) :

26	app
11	config
565	node_modules
17489	public
429	vendor

Déjà, on peut remercier JavaScript et son Gio de données pour gérer le front.

Creusons un peu le contenu de /home/mastodon/live/public. On y trouve entre autres :

22	emoji
11	ocr
74	packs
17381	system

Encore un peu de JS dans packs, et un gigantesque dossier system que l’on va creuser. Il contient très exactement :

2	accounts
17362	cache
19	media_attachments

Le dossier cache contient exactement :

16422	accounts
342	custom_emojis
562	media_attachments
37	preview_cards

342 Mio d’emojis custom (en fait toutes celles de tous les instances auxquelles je suis fédéré…), 562 Mio de média attachés (ce qui me parait beaucoup, il faudrai que je vérifie mes réglages), mais surtout : 16 Gio de données attachées aux comptes ? Creusons !

5611	avatars
10812	headers

Et… on en saura pas plus, parce que le contenu de ces dossiers, c’est une arborescence technique de numéros imbriqués, complètement incompréhensible. Je suppose qu’il s’agit des avatars et images de couverture de tous le gens que j’ai croisé un jour sur Mastodon…

Concrètement, si je croise un message d’un inconnu (dans le sens : quelqu’un qui n’est pas dans mes contacts), si je veux voir son historique de messages, il y a 95 % de chances pour que celui-ci m’apparaisse vide.

Comment ça se fait ? Par défaut, on peut pas voir les messages des personnes qui ne sont pas dans nos contacts ? Un bug ?

On ne fédère que les messages des comptes "liés" à l’instance : personnes suivies par quelqu’un de l’instance ou retoot d’une personne suivie.

C’est pour ça qu’il y a des bots qui s’occupent de follow tous les comptes qu’ils croisent, pour que l’instance fédère avec et que ça remplisse le fil global.

+0 -0

Ajoutez à tout ceci ~1 Go d’occupation RAM supplémentaire si vous activez ElasticSearch sur l’instance. Attention à ne pas laisser les réglages par défaut, dans lesquels l’outil s’octroie 4 Go rien que pour le heap !

Si vous souhaitez changer la taille maximale des massages sous Mastodon, j’ai suivi cette documentation et ça fonctionne très bien. C’est pas compliqué si on est un peu habitué à faire du développement. Le seul cas que j’ai trouvé qui pose problème, c’est que l’application mobile officielle semble avoir laissé une limite de 500 caractères codée en dur pour l’édition d’un message.

À propos d’application mobile, https://tusky.app/ est un peu moins bien polie mais plus fonctionnelle que l’application finie – et elle n’a pas le bug de l’édition susmentionné. Merci au community manager de Zeste de Savoir qui m’en a parlé, je ne sais pas qui était derrière le compte à ce moment là.

Connectez-vous pour pouvoir poster un message.
Connexion

Pas encore membre ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte