Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Rails 8で作るActivityPub リレーサーバ
Search
S.H.
December 05, 2024
700
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Rails 8で作るActivityPub リレーサーバ
RubyWorld Conference 2024 Sponser LT
S.H.
December 05, 2024
Transcript
14 slides
Rails 8 で作る ActivityPub リレーサーバ S.H. RubyWorld Conference 2024 Sponser
LT 2024-12-05
自己紹介 S.H. ESM, Inc 構文解析器研究部員 Mastodonの管理人(通称:鯖缶)
今日話すこと ActivityPub リレーについて 作った背景 作ったもの
ActivityPubリレー
ActivityPub リレーの仕組み リレーサーバに参加しているサーバの公開投稿を 受け取る 参加しているサーバ全てに受け取った投稿を転送 する
メリットとデメリット Fediverseのサーバ同士が連合しやすくなる 配送される投稿が増えるので参加サーバへの負 荷も増える リレーサーバ自体の負荷もそれなりにかかる
作った背景
現状のリレーサーバ サーバの数に対してリレーサーバの数が多くな いため、特定のリレーサーバに集中する リレーサーバ自体と参加したサーバへの負荷が かかりやすい RedisやDBなどを使うため建てるのに気合が いる
個人的な思い 小さい規模のリレーサーバを作れれば負荷も分 散できそう もっとリレーサーバを建てやすくするとよさそう
Rails8の存在 Kamal2でデプロイが簡単になる SolidQueueを使うのでRedisがいらない SQLite3を本番で使えるので楽そう Rails8で作るといいのでは?
作ったもの
ActivityPub Relay
機能 Mastodon/Misskeyのリレーに対応 Pleroma/Akkomaのリレーにも対応 購読サーバの管理画面 ジョブの管理画面
作ってみて Kamal2でのデプロイが非常に簡単 Thrusterが証明書の自動更新などがされるの で嬉しい SolidQueueを使っているのでRedisが不要で 良い SQLite3を使っているので別途DBを建てなく てよい
More Decks by S.H.
See All by S.H.
PicoRubyではじめる自作カーネル入門
gamelinks007
0
78
Termfront: Ruby標準ライブラリだけで作るFPS
gamelinks007
1
150
Ruby on Bare Metal
gamelinks007
0
150
Ecosystem on parse.y
gamelinks007
0
860
ゆるゆるMastodon 鯖缶生活
gamelinks007
0
850
1週間で作るActivityPubリレーサーバ
gamelinks007
0
210
Developing an ActivityPub Relay with Rails 8
gamelinks007
0
140
Mastodon on Ruby master
gamelinks007
0
230
Trying to Make Ruby's Parser Available as a Gem
gamelinks007
1
1k
Featured
See All Featured
Practical Orchestrator
shlominoach
192
12k
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
1.1k
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
640
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.7k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
1.4k
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
310
Tell your own story through comics
letsgokoyo
1
1.1k
Are puppies a ranking factor?
jonoalderson
2
4.2k
How to Ace a Technical Interview
jacobian
280
24k
How to build a perfect <img>
jonoalderson
1
6.2k
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
750
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
6
1.3k