Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
APIサーバーが止まったので、GitHub Actions内にAPIサーバーを立てた話
Search
uutan1108
April 04, 2025
Programming
2
240
APIサーバーが止まったので、GitHub Actions内にAPIサーバーを立てた話
https://odekake-tech.connpass.com/event/346217/
uutan1108
April 04, 2025
Tweet
Share
More Decks by uutan1108
See All by uutan1108
仕様がそのままテストになる!Javaで始める振る舞い駆動開発
ohmori_yusuke
8
4.7k
勉強会から始まった僕のDevRel~新卒エンジニアがつないだ2年間の軌跡~
ohmori_yusuke
2
300
WebエンジニアがSwiftをブラウザで動かすプレイグラウンドを作ってみた
ohmori_yusuke
0
200
アニメがエンジニアをつなぐ!「エンジニアニメ」勉強会が巻き起こすCo-Creationの波
ohmori_yusuke
0
170
組織が大きく変わろうとするとき、自分はどうありたいかを考えている
ohmori_yusuke
19
6.8k
技術以外をきっかけに交流するエンジニア向け勉強会
ohmori_yusuke
0
67
デザインって“感覚”だけじゃないVibe Codingからの気づき
ohmori_yusuke
3
110
MDN Web Docs に日本語翻訳でコントリビュートしたくなる
ohmori_yusuke
1
160
PHPで始める振る舞い駆動開発(Behaviour-Driven Development)
ohmori_yusuke
1
630
Other Decks in Programming
See All in Programming
JEP 496 と JEP 497 から学ぶ耐量子計算機暗号入門 / Learning Post-Quantum Crypto Basics from JEP 496 & 497
mackey0225
2
500
TypeScript 5.9 で使えるようになった import defer でパフォーマンス最適化を実現する
bicstone
1
530
AIエージェントでのJava開発がはかどるMCPをAIを使って開発してみた / java mcp for jjug
kishida
4
820
「正規表現をつくる」をつくる / make "make regex"
makenowjust
1
950
Level up your Gemini CLI - D&D Style!
palladius
1
130
これだけで丸わかり!LangChain v1.0 アップデートまとめ
os1ma
4
310
dnx で実行できるコマンド、作ってみました
tomohisa
0
110
WebRTC と Rust と8K 60fps
tnoho
1
530
Java_プロセスのメモリ監視の落とし穴_NMT_で見抜けない_glibc_キャッシュ問題_.pdf
ntt_dsol_java
0
230
MAP, Jigsaw, Code Golf 振り返り会 by 関東Kaggler会|Jigsaw 15th Solution
hasibirok0
0
130
FlutterKaigi 2025 システム裏側
yumnumm
0
1.2k
Why Kotlin? 電子カルテを Kotlin で開発する理由 / Why Kotlin? at Henry
agatan
1
130
Featured
See All Featured
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
3k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.5k
Stop Working from a Prison Cell
hatefulcrawdad
273
21k
Making the Leap to Tech Lead
cromwellryan
135
9.6k
Building an army of robots
kneath
306
46k
Mobile First: as difficult as doing things right
swwweet
225
10k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
11
940
Raft: Consensus for Rubyists
vanstee
140
7.2k
[RailsConf 2023] Rails as a piece of cake
palkan
57
6.1k
How to train your dragon (web standard)
notwaldorf
97
6.4k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.2k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
1.6k
Transcript
APIサーバーが止まったので、 GitHub Actions内にAPIサーバー を立てた話 うーたん 花見LT in 大宮公園 ~春の風を感じながらゆるっとLT~
自己紹介 • うーたん ◦ X:@uutan1108 • 株式会社ゆめみ ◦ 新卒3年目 ◦
サーバーサイドエンジニア • 趣味 ◦ アニメを観ること
GitHub Actions でやっていること
https://github.com/engineers-anime/anime-info-gif
https://github.com/engineers-anime/anime-info-gif 今日誕生日のアニメキャラクターを 外部 API から取得
外部 API サーバー GitHub Actions APIサーバーに クエリを投げる 今日誕生日の キャラは?
外部 API サーバー GitHub Actions クエリの結果を 返却 郁田 はるき
外部 API サーバー GitHub Actions Gif 画像を生成 クエリの結果を 返却 郁田
はるき
API サーバーが停止
外部 API サーバー GitHub Actions Gif 画像を生成
困った
でも、外部 API サーバーのデータは 公開されている
https://github.com/imas/imasparql
データだけじゃ、 今日誕生日のアニメキャラクターを検索 できないので API サーバーを立てないと!!
データが SPARQL
SPARQL とは? SPARQL(スパークル、SPARQL Protocol and RDF Query Languageの再帰的頭字語)は、RDF問合せ言語 の1つである。RDF問合せ言語は、Resource Description
Framework (RDF) で記述されたXMLや TurtleなどのRDFデータのリソースを取り扱うためのコ ンピュータ言語である。 https://ja.wikipedia.org/wiki/SPARQL
https://github.com/imas/imasparql
https://github.com/imas/imasparql
Apache Jena Fuseki が必要
Apache Jena Fuseki とは
Apache Jena Fuseki とは Fuseki とは、RDF ファイルを永続化し、RDF クエリで 検索することができる RDF
データベースサービスで す。 https://shirasagi.github.io/installation/fuseki.html
XML の RDF をいい感じに変換して、 Apache Jena Fuseki (APIサーバー)で、 クエリできるようにする
やってみる
RDF(XML)
https://github.com/imas/imasparql
https://github.com/imas/imasparql
「天海春香」に一致するキャラをフィルタ
SPARQL
None
Apache Jena Fuseki
None
SPARQL
None
レスポンス
とりあえず、 サーバーでクエリできるようになった
👏
API サーバー立てられるけど、お金...
今回は、APIサーバーと言いつつ GETしかいらないからサーバー 立てなくてもいいな!
合体!!
GitHub Actions API サーバー Actions 内で起動
GitHub Actions API サーバー Gif 画像生成 ローカルの API に リクエスト
GitHub Actions API サーバー Gif 画像生成 Gif 画像を生成
デメリット
時間がかかる
Actions 内で API を立てていない時 7分2秒 3分25秒
Actions 内で API を立てた時 (XML を変換したりで時間がかかっている) 7分2秒 3分25秒
でも、無料でできているから満足!
宣伝
None
None
None
None
大きめの会場を貸し切ってやります!
None
場所:武蔵境駅前 時間:8月10日(日・祝前日) 色々企画しているので来てくだ さい!