1. ゆるテク
  2. #27 Fediverseのおひとりサー..
2023-11-05 27:05

#27 Fediverseのおひとりサーバーを立てた話

spotify apple_podcasts

Fediverseに参加するサーバーを立てた話をしました。


Links:

・北九州市立いのちのたび博物館 https://www.kmnh.jp/

・講談社の動く図鑑MOVE https://cocreco.kodansha.co.jp/move

・トランポリン・パーク トランポランド https://www.trampoland.com/

・Fediverseの図 https://en.wikipedia.org/wiki/File:How-the-Fediverse-connects.jpg

・Mastodon https://joinmastodon.org/

・Misskey https://misskey-hub.net/

・GoToSocial https://gotosocial.org/

・Fly.io https://fly.io/


ゆるテクは @junichi_m_ と @hacktk がゆるーく技術の話をするポッドキャストです。 感想は #yurutech をつけてポストしてください。Googleフォームからも送れます。 https://forms.gle/ZaxjmXSYSNbihf9k9

X (formerly Twitter):

・ゆるテク: https://twitter.com/yuru_tech

・@junichi_m_: https://twitter.com/junichi_m_

・@hacktk: https://twitter.com/hacktk

サマリー

今回のエピソードでは、命の旅博物館についてお話ししました。博物館に関する話題として、命の旅博物館についてお話ししました。また、Fediverseに参加するサーバーについてもお話ししました。今回の話では、私はActivityPubというプロトコルを使用したOSS製のプロダクトを使用させていただきました。このプロトコルは一応W3Cで採用されており、韓国でも使用されています。Fediverseに参加するサーバーを立てる話の概要には、サーバー管理人のモチベーション、サーバーの文化の違い、サイロの形成によるメリット、ローカルタイムラインの活用、そしてサーバーの運用経験が含まれています。

00:02
こんにちは、エンジニアの博多家です。
こんにちは、エンジニアの三長です。
ゆるテクは、三長と博多家が緩く技術の話をするポッドキャストです。よろしくお願いします。
よろしくお願いします。
はい、9月も終わりです。
終わりですね。今日の収録日が9月28日。
はい、あのー、交絡シリーズンということで。
はいはい。
命の旅博物館について
こないだちょっと博物館に行ってきまして。
はい、博物館。
はい、私が福岡に住んでるんですけどね。
はい。
あのー、北九州市に命の旅博物館っていうところがあってですね。
なんか名前が、すごい秋っぽいですね。
秋っぽい?
秋っぽいってなんだって感じですけど。
どういうこと?旅?
旅、旅が。
はい、そこあのー、ホームページのURLあったんですけど、いきなりこう恐竜のこの骨のあれが出てきません?
あ、これ化石じゃなくてこれ標本って言うんですかね?ちょっと何て表現していいかわかんないですけど。
何でしょうね、まあ骨ですよね。
骨ですね、はい。よく博物館の飾られている恐竜といえばこんな感じの骨が。
そうそうそう。
はいはい。
骨があって、まあこういうのがあったりとか、恐竜以外にもなんかこう、なんて言うんですかね、古代生物?
はいはい。
すごいなんかアノマロカリスとかって言うんですけどこう。
え?
こんな生き物が?みたいな生き物があるんですよ。
はいはい。
とか、あと普通にその現代のいろんな生き物。
はい。
なんかその像とか。
うんうんうん。
普通にそういうものとかの、なんか薄製なのか作り物なのかわかんないですけど、結構いっぱい展示されていたりする感じのところですね。
おー、結構あれじゃないですか、そういうのって今ってすごくリアリティあるから、お子さん怖がったりしなかったんですか?
あーえっとですね、うん確かに怖がってなかった、動かないと大丈夫なのかもしれないですね。
すごい。
そう、動いてるとなんかちょっとしたものでも怖がったりするかも。
あー。
うん。
顛引きがはっきりしてますね、なんかね。
動いてるとか、あと音かな、音が敏感ですね。
あー。
なるほどなるほど。
なんで、そもそもここに行こうって思ったきっかけが、きっかけっていうか、先月ぐらいに子供に図鑑、結構うち図鑑買うんですけど、
はい。
大昔の生き物っていう図鑑があるんですよ。
これあれか、ムーブの動く図鑑ですよね。
はいはい。
自分の中で2大図鑑シリーズがあって、ネオとムーブなんですけど。
うちも、うちめっちゃムーブ買ってます。
めっちゃうちと同じです。
うちもムーブハーバスなんで。
はい。
で、この大昔の生き物を買ってて、これ何かいつになくめっちゃハマってたんで、
うんうんうん。
何かこういうのがいっぱいあるとこ行ってみようかって言ってきました。
あ、いいですね。
うん。
そっか、いや何かうちもムーブ買ってるって話したと思うんですけど、
はい。
最初、子供まだ小学校上がる前なんですけど、
うん。
初めて買ったムーブが、何か普通、普通って言ったらあれですけど、
親の期待値としては何か生き物かなって思うじゃないですか。
はい。
その海の生き物が好きとか、
はい。
空の生き物が好きみたいな。
はい。
何か最初に選んだのが古代文明の。
ああ、あれだ、あのピラミッドとかの書いてあるやつが。
そうそう、ピラミッド書いてるやつを買って、何かそれを狂ったように見てましたね。
狂ったように、表現。
表現が。
いいじゃないですか、何でも好きになることは。
そうですね。
うん。
はい、何か意外とこういうとこハマるんだって思いましたもん。
うちはあれでしたよ、一番最初は鉄道でした。
ああ、いろんな電車とかSLとか出てくるやつですか。
海外の電車とかもあるやつですね。
なるほど、結構あれですね、字が読めなくてもDVDとかついてくるから、
それでだいぶインプットできますもんね。
できますね。
なるほど、じゃあ今日のあれですかね、
家族とトランポリンパークへ
Podcastを公開するときはMOOVの公式ホームページとかURL乗っけておいたほうがいいやつですかね。
はい、乗っけておきますか。
千鷹さんは最近どうですか。
そうですね、秋だからってわけでは全くないんですけど、
私今関東のほうに住んでて、
ちょうど先週ですかね、子供連れてトランポリンパークっていうところに行ってきました。
いいなあ。
で、トランポリン飛んだのなんて、最後に飛んだのはいつなんだろうぐらい記憶を遡ってもないんですけど、
なんでしょうね、まあ飛び続けるのきついなあって。
確かにあれ全身きついっすもんね。
全身きついっす。
なので結構リアルに全部トランポリン。
全部トランポリンって変な表現ですけど、本当にトランポリンでした。
URLを見てみると本当だ、すごい。
やってみて思ったのはすごく短時間でいい運動になるので、
これ本当家にあったら仕事で行き詰まったとき、何回か飛んだらいいアイディア出るんじゃないかなって感じ。
買いましょう。
買いたいけど、天井が高くないと。
確かに。庭とかに置いておきましょう。
そういうやつですね。
はい、そんなことがありました。
ありがとうございます。
じゃあ今日のトピックに行きますか。
Fediverseに参加するサーバー
お願いします。
今日のトピックはですね、以前の話でもちょっと言ったかもしれないですけど、
ツイッターの代わりというか、ツイッターの代わりっていうと変だな。
SNS的な何かを他に探そうかっていう話をちょこっとしたことがあるかと思うんですけど、
それをやりましたっていう感じです。
じゃあやってみた系の報告ですね。
やってみたんだけどその感想どうでしたかみたいな、そういう話をしようかと。
いいですね、なんか面白そうな話。
前回三長さんにテク成分が最近ないよねって言われたんですけど、
気持ちばかりのテク成分を持ってきました。
素晴らしいですね、バッチリですね。
今回すごいざっくり言うと、
Fediverseっていうやつに参加できるサーバーを自分で立てましたっていうことなんですけど、
そのFediverseってそもそも何っていうことになると思うので、
一応自分も全然そんなめっちゃ詳しくないっていう前置きをしつつ、
ざっくり言うとSNSの種類です。
すごい語弊があるかもしれないですけど。
じゃあXとかFacebookとかと同じ立ち位置みたいな感じのイメージを持っておけばいいですかね。
ソーシャルネットワークであるのはそうだと思います。
今TwitterとかFacebookって名前入れたと思うんですけど、
あれらはそれぞれTwitterだったらX社とか、
Facebookだったらメタ社とかが運営している一つの会社が全てを管理している。
あれは中央集権型って言われたりするんですね。
中央に管理する機構があるので、
それに対応してこのFediverseとかっていうのは非中央集権型って言われたりします。
多分これがそのFediverseの一番特徴的なところだと思います。
自分の知る限りだとですね、2017年ぐらいにマストドンっていうのがちょっと流行ったかと思うんですよ。
名前は私も聞いたことありますね。
あれがそのFediverseを構成する要素の一つなんですね。
それによって非中央集権型のSNSっていう概念が広まったのかなと思っています。
その前からもあったのかもしれないですけど、自分が認知したのはそのぐらいかなっていう感じですね。
そんな深く説明できないのでざっくり言うと、このFediverseっていうところではサーバーがいくつもあって、
それぞれのサーバーが自分たちのサーバー内のアカウントを管理している。
そのサーバー同士で特定のプロトコルとかで通信し合ってネットワークになっているっていう感じです。
なので管理しているところが一箇所じゃなくて、それぞれのサーバーで管理しているので非中央集権型と言われるっていう感じですかね。
今の博多家さんの話を聞いて中央集権型なのか非中央集権型なのかのイメージはすごく湧いたんですけど、
そうするとそのFediverseというものが提供する情報とでも言うんですかね。
っていうのは各サーバーを管理している個人、人たちが提供しているものになるってイメージであってます?
そうですそうです。
AサーバーとBサーバーがあったら、例えばBサーバーに三長さんがいて、Aサーバーに自分がいるとするじゃないですか。
三長さんが自分の例えば何らかのポストの情報を取りたいって言ったら、BサーバーがAサーバーに要求して取ってきてそれを見れるっていう感じですかね。
なるほど。ありがとうございます。
今取ってきてって言ったんですけど、その時のプロトコルがいくつかあって、そのうちの多分一番使われているのがActivityPubっていうプロトコルなんですけど、
ActivityPubの説明と通信プロトコルのバリエーション
今回は自分はActivityPubっていうプロトコルで他と通信するプロダクトがOSSであったんで、それを使わせてもらいましたっていう感じです。
なるほどなるほど。
その辺の説明なんかいい図とかないかなと思ったらWikipediaにあったんで。
これですね。
一番真ん中の上の方にマストドンってあるんですけど。
本当だ。
マストドンと他はActivityPubで通信して、
右の方にあるとディアスポラかな、赤いやつ。
ディアスポラのように見えますね。
こういうやつとかは違うプロトコルで話している感じがしますよね。
そのいくつかのあれか、先ほどおっしゃってくれてたいくつかの通信プロトコルはあって、この図で言うと2種類どころではないか。
Zotですか?
Zotかな。
なるほどなるほど。
それぞれのいろんなプロダクト、いろんなサーバーがあって、それぞれにプロトコルさえ守れば通信はできるよっていう感じでしょうね。
確かにね。
っていうのがざっくり。
サーバーの選定とGoToSocialの利用
これ全体を指してフェディバースというらしいです。
なるほどなるほど。
さっきActivityPubって言ったんですけど、このプロトコルはW3Cで一応韓国にまでなってて。
使用化されているやつです。
素晴らしい。
なので一応実装しようと思ったらできるんでしょうけど、今回はこれちょっと大変だわと思って、既にあるやつを使わせてもらうところから始めました。
なるほどなるほど。
ちなみにサーバー選定とかってどういったものを使ったんですか?
そのプロダクトはとにかく実装が小さいやつ。
前もちょっと言ったんですけど、自分で実装してみたいっていう気持ちはまだあるんで。
変えていけそうだったらいじれそうなやつっていうので、なるべく実装が少ないやつ。
あとフロントエンドはなくていいと思ったんですよ。
なるほど。
サーバー同士通信してくれたら、あとAPIだけあればインターバイ以外に持ってたんで、それに近いものがないかなと思ったらあったんで。
GoToSocialっていうやつがあって。
名前からするとゴーセイっぽい。
そうです、ゴーラングですね。
ゴーラングですか?
はいはいはい。
これがすごいフットプリントも小さくて。
へー。
これをPaaSで動かしてます。
fly.ioっていうやつがあって。
これか。
無料で1CPU250Mのコンテナが動くんですけど、それ3つとかいけるんじゃなかったかな。
あーそういう感じなんですね。
私てっきりサーバー建てられたっておっしゃってたから、自分でパブリッククラウドなんか使ってサーバーでも建ててるのかなって思ったんですけど。
そっちでもいいかなと思ったんですけど、料金かかるんで。
そうですよね。
あと通信料とかがかかるから。
無料でいけるなら無料でいけるところにやろうと思ったんですよね。
なるほどなるほど。
じゃあ自分なりにカスタマイズしてコンテナ化し、さっきのfly.ioでしたっけ。
はい。
上に載せてるみたいな感じですか。
そうですそうです。今は全然カスタマイズしてなくて。
うんうん。
もうこのGoToSocialですね。
はいはいはい。
その公式のドッカイメージみたいなのがあるんですよ。
なるほど。
それをそのまま使ってます。
はいはいはい。
で、いじるときはちょっとこいつはちゃんと公開しないといけなくて。
ライセンスがGPLなんで。
はいはいはい。
なんでこいつをもし変更しようと思ったらちゃんとパブリックにソースを公開しないといけないやつですね。
なるほど。
はい。
じゃあいじるときはまずそれなりにしっかりいじってって感じになりそうですね。
なんかほんとちょっとでいいんですけどね。
うんうん。
うんうん。
という感じで最小限のやつをやってみた感じなんですね。
非中央集権型SNSの利点とコンテンツデザイン
やってます。
それはちなみにいつ頃からやってみた感じなんですか。
もう1週間以上は経ったと思うんですよね。
じゃあ1週間以上経ってるならどうですかね。
1週間くらい使ってみてこうだったかなみたいな感じるところってありました。
えーっとですね。
とりあえず軽いですね。
軽いというと。
この動作がすごい軽いしフォローもフォロワーも全然いないからもうひたすら自分がこう虚空に向かって喋っている状態になってて。
寸法みたいなもんですよね。
完全にそうですね。
なるほどなるほど。
今は損害でいいかなと思って。
適当なことを言っても誰にも見られないっていうのは逆にいいですね。
誰にも見られないけど後で自分が何を言ったかはちゃんと見直せるみたいな感じですか。
そうですそうです。
面白いですねでもこれ。
どうなんですかね。
ユーザー数というかユーザー規模で言うと結構な規模で皆さん使われているような感じですかね。
先ほど冒頭にもあったと思うんですけど。
結構あると思いますけどね。
結構多いと思います。
特に最近ツイッターから辞めてこっちに移動している人も多いんで。
なるほど。
ただここだけしかやってないって人は少ないのかもしれないですね。
みんな並行で使ってて。
両方やっててどっちにもポストしてたりとかそういう感じなんですかね。
だと思います。
使い分けてたりとか。
完全に同じ投稿がされるように何かしら設定してる人とかもいるかもしれないです。
なるほど。
確かに両方開いて同じ文面送るはエンジニアっぽくはないですよね。
そうそう。
そんな感じで。
必要な情報しか見れないのはすごく気持ちよくていいですね。
流れてくる情報量の認知負荷って言葉はもしかすると合ってないかもしれないですけど
フィルターする負荷は他のSNSと比べると少なめって感じですかね。
そうですね。
ちなみに1週間使い続けてみて今すごく軽いであったりとか
フォロワーの関係もあってノイズが少ないという話はあったと思うんですけど
どうですかね。
こういう人は試してみてもいいんじゃない。
こういうこと考えてる人は試してみるといいんじゃないみたいなものって
博多家さんの中であったりします。
1週間使ってみた感じ。
これどのサーバーを選ぶかでかなり変わると思うんですよ。
Aサーバー、Bサーバー、Cサーバーとかによって
まさに管理する人によってルールが作られてるはずなので
お気に入りのサーバーを見つけるじゃないですけど
見つけられればそこでもいいでしょうし
あと知り合いがやってればそこでもいいでしょうし
そういう意味だと同じSNSの媒体なんだけれども
ルールがサーバーによって違うので
ある意味今回のXのようなパターンで結構ルールが
破壊的な変更がありそうなものがあったとしても
サーバー乗り換えれば意外と同じ感覚で使い続けられるみたいなところが
もしかしたらこの非中央集権型にとっては
いいパターンってことなんですかね。
そうですね。それもいいとこか。
でも選ぶところによっては
自分の投稿とかフォローフォロワー関係を
持っていけないところの方がほとんどなんじゃないかな
マストドが確かあった気がします
エクスポートみたいなのが
持っていきたければ自分であとは
頑張るしかないかも
引き抜くような実装をしてエクスポートするとかって感じなんですかね
そんな感じかもしれないですね
なるほどなるほど
それぞれのサーバーごとに雰囲気も違ったりするんですよね
いる人が違うから
このミスキーとかすごいですよ
見たら三沢さんだいぶ驚くと思います
なんか絵文字がめちゃめちゃ飛び交いますよ
すごいマイクロブログSNS
ミスキーとかマストドはマイクロブログとかってきっと言われてますけど
どこだっけ
ピクセルフェドかな
こことかはインスタグラムみたいなやつを目指してるっぽいんですよね
画像だけみたいな
そこを目指してるけれども大きく
コンテンツのデザインパターンは中央集権なのか
非中央集権なのか違うみたいな感じってことですか
そうですねコンテンツの種類はあれを目指してるけど
非中央集権型ってことなんでしょうね
どれだけ
中央集権型と非中央集権型の話を聞いた時に
そういう違いがあるんだなっていうのはすごく理解はできたんですけど
差別化というか
そこが違うことによって
どれだけのメリットっていうのも違うかもしれないんですけど
メリットなんですかね
得られるものなんだろうっていうのがまだいまいち
ピンときてないのはあれなんですかね
理解が足りないのか私の価値観がそこにあまり重要視してないから
Fediverseに参加するサーバーのモチベーションと文化の違い
なんか全然気づいてないのかが聞いててまだ
しっくりきてないとこかもしれないですね
自分もあんまり分かってないのは
各サーバーあんまり分かってないというか
人それぞれだと思うんですけど
その各サーバーの管理人が
何のモチベーションで運営してるかっていうのは
それぞれだと思うんですよ
そうですよね
収益とかほぼほぼ上げられないと思うんで
まあ趣味みたいなところが多いのかもしれないですね
俺ってどうなんでしょう
昔どれぐらい昔か分かんないですけど
掲示板とかってあるじゃないですか
あれを管理してるとかに近い感覚があったりするんですかね
近いかもそんな感じにしますよね
あの感覚がどういう感覚なのかもよく分かってないですけど
似たものがあるとすればなんだろうなって思った時に
そういうものなのか
あとは何かのSNSのグループの管理者ぐらいの感覚があったりするんですかね
そうかもしれないですね
何らかの区切られた文化圏を作りたいとかがあるのかもしれないですね
確かにじゃあそうするとサーバーごとに結構文化が違って
同じ趣味というか志向の人たちが集まりやすい憎いがあって
かつあんまり外部からのノイズも入ってきづらいみたいな
サイロの形成とローカルタイムラインの活用
巨大なサイロを作りやすいのがメリットだったりするんですかね
ということですかね
このフェディバースのものたちと連合というのにつながるんですけど
自分が例えばAサーバーにいて
BサーバーCサーバーの人をフォローしているとして
A、B、C全部を見れるタイムラインと
Aだけを見れるタイムラインって別々にあったりするんですよね
なのでそういう意味だとAだけを見ることができるので
サイロの方とグローバルな方とのいいとこ取りというかができるのかもしれないですね
確かにそれは便利ですよね
絞ってというかある程度フィルターかけて見たいときと
全体網羅で見たいときってケースバイケースであるでしょうから
さっき三田さんが言ったどういう人に向いているかなというと
向いている人がいるというよりは自分が見たい
さっき言ったAサーバーの投稿だけを見るタイムラインをローカルタイムラインと言うんですけど
自分が見たいローカルタイムラインがありそうなサーバーを見つけられればいいのかもしれないですね
確かに確かにそうすると情報の収集にもすごく時間になるでしょうし
なんかちょっとしっくりきたかもしれないですね
そういう人が集まってるでしょうからねやっぱり
これでもすごいですねある意味サーバー数が増えていけば
どんどん連合サイズはでかくなっていくというか
多分負荷とかもどんどんすごくなっていくと思います
あとサーバー管理者がどれぐらいサーバーに対して頑張っていくか次第ですもんね
本当ですねこれ自分で立ててみてログとか見てたんですけど
1投稿とか1他のところを検索したりするためにまあまあのリクエスト数走ってるんで
これだから例えばなんかわかんないですけど
違うサーバーの人をリツイートみたいなブーストって多分言うんですけど
した時とかにその人のフォロワーが満とかいたら凄まじいことになると思います
そりゃああれですね先ほど博多家さんが紹介してくれたミスキーでしたっけ
を拝見した時にこれ会社が運営してるやつなんだなとか思いながら見てたんですけど
それはそういう規模で管理しないとダメだなってなりますね
なると思いますなんかすごいあそこ負荷が上がって
なんだっけ運営になんか100万だっけなんかすごいお金かかっててみたいな
どっかで見た気がします
でもなんかエンジニア目線で見るとお金すごいかかりそうですけど
これの運用経験したら結構な運用に強いエンジニア経験詰めそうですよね
そうですねそれもかなり実装に多分よるんですけどね
ボトルネックがフロントエンドにある実装とバックエンドにある実装と本当それぞれな気がします
確かにそれによっては全然変わるでしょうし
すごいなこのSNSというシステムの運用っていうのはなかなか詰めない経験かもしれないですね
あと使ってみて1週間っていう方に聞くのもあれかもしれないですけど
聞いてる感じだとわりとSNSを利用するにあたって
エンジニアっぽい技術とかがわりと好きっぽい人たちじゃないと
到達して参加する参加するまでの道のり遠そうだなみたいな風に聞いてては思ったんですけど
これ実際参加の敷居が高いとかっていうわけではなくて
今回博多家さんは参加するにあたって自前サーバーでやってみましたよ
そこが技術的だったんですよっていうイメージなんですか
普通にやろうと思ったらそれこそこのマストドンとかミスキーとかの
サーバーに行ってアカウント作るのは普通に全然技術者じゃなくてもできると思います
じゃあ別にこれを使ってる人たちがそういう技術的なところを乗り越えてきた人たちしか使ってないですとかじゃなくて
裏側はこうなんですよっていうのを今日話してくれたような感じですね
よかったよかったなんか興味はあるから
でも自前でサーバーまで立てないと結構遠いのかなって気づいたんで
全然そんなことないです
なるほどなるほど
ありがとうございます
じゃあ今日はそんな感じですかね
はい
今回はFediverseに参加できるサーバーを立てたこととその感想を話しました
はい
感想などはハッシュユルティックをつけてポストお願いします
Googleフォームからも送れます
お願いします
今日はありがとうございました
ありがとうございました
27:05

コメント

スクロール