Download free for 30 days
Sign in
Upload
Language (EN)
Support
Business
Mobile
Social Media
Marketing
Technology
Art & Photos
Career
Design
Education
Presentations & Public Speaking
Government & Nonprofit
Healthcare
Internet
Law
Leadership & Management
Automotive
Engineering
Software
Recruiting & HR
Retail
Sales
Services
Science
Small Business & Entrepreneurship
Food
Environment
Economy & Finance
Data & Analytics
Investor Relations
Sports
Spiritual
News & Politics
Travel
Self Improvement
Real Estate
Entertainment & Humor
Health & Medicine
Devices & Hardware
Lifestyle
Change Language
Language
English
Español
Português
Français
Deutsche
Cancel
Save
EN
Uploaded by
Ken SASAKI
655 views
janogdon.netはじめました
JPNIC総会講演会で喋った資料。 Mastodonについての技術的概観、課題、未来、等について喋った
Internet
◦
Read more
1
Save
Share
Embed
Embed presentation
Download
Download to read offline
1
/ 30
2
/ 30
3
/ 30
4
/ 30
5
/ 30
6
/ 30
7
/ 30
8
/ 30
9
/ 30
10
/ 30
11
/ 30
12
/ 30
13
/ 30
14
/ 30
15
/ 30
16
/ 30
17
/ 30
18
/ 30
19
/ 30
20
/ 30
21
/ 30
22
/ 30
23
/ 30
24
/ 30
25
/ 30
26
/ 30
27
/ 30
28
/ 30
29
/ 30
30
/ 30
More Related Content
PDF
2017年 日本のマストドン
by
Ken SASAKI
PDF
20年前のバックアップテープと格闘して思ったこと~TechLION vol.20
by
Kiyotaka Doumae
PDF
Fox Trot
by
dynamis
PDF
Es6 cognition
by
Net Kanayan
PDF
Future with Firefox OS
by
dynamis
PDF
業務改善できるかな?
by
Ken SASAKI
PDF
ステマネのお仕事
by
Ken SASAKI
PDF
The Internet Situation in Myanmar
by
Ken SASAKI
2017年 日本のマストドン
by
Ken SASAKI
20年前のバックアップテープと格闘して思ったこと~TechLION vol.20
by
Kiyotaka Doumae
Fox Trot
by
dynamis
Es6 cognition
by
Net Kanayan
Future with Firefox OS
by
dynamis
業務改善できるかな?
by
Ken SASAKI
ステマネのお仕事
by
Ken SASAKI
The Internet Situation in Myanmar
by
Ken SASAKI
More from Ken SASAKI
PDF
世界のインターネット ミャンマー編
by
Ken SASAKI
PDF
さくらインターネット西新宿セミナールームと私
by
Ken SASAKI
PDF
インターネットの仕組み enPiT資料
by
Ken SASAKI
PDF
通販チャレンジ ミャンマー編
by
Ken SASAKI
PDF
槓の光 for ssmonline #4
by
Ken SASAKI
PDF
リモートスクラム開発のノウハウ
by
Ken SASAKI
PDF
私が好きなITコミュニティイベント
by
Ken SASAKI
PDF
リモートスクラム開発やってみた
by
Ken SASAKI
PDF
Wi-Fiのイマ Internet Week 2019 発表資料
by
Ken SASAKI
PDF
中国のネットワーク勉強会 JANOG44野良BoF資料
by
Ken SASAKI
PDF
ダイビングのすゝめ
by
Ken SASAKI
PDF
「入門Kubernetes」輪読会資料 6章
by
Ken SASAKI
PDF
監視 〜 ネットワーク勉強会資料
by
Ken SASAKI
PDF
オーケストラと&オーケストレーション
by
Ken SASAKI
PDF
RFC 〜 ネットワーク勉強会
by
Ken SASAKI
PDF
各種ネットワーク機器と最近の技術動向 〜 ネットワーク勉強会
by
Ken SASAKI
PDF
TCP 〜 ネットワーク勉強会資料
by
Ken SASAKI
PDF
プロトコル/NAT/HTTP通信の中身 〜 ネットワーク勉強会資料
by
Ken SASAKI
PDF
パケット通信とInternet Protocol
by
Ken SASAKI
PDF
データ処理の改善をどのように行なうか
by
Ken SASAKI
世界のインターネット ミャンマー編
by
Ken SASAKI
さくらインターネット西新宿セミナールームと私
by
Ken SASAKI
インターネットの仕組み enPiT資料
by
Ken SASAKI
通販チャレンジ ミャンマー編
by
Ken SASAKI
槓の光 for ssmonline #4
by
Ken SASAKI
リモートスクラム開発のノウハウ
by
Ken SASAKI
私が好きなITコミュニティイベント
by
Ken SASAKI
リモートスクラム開発やってみた
by
Ken SASAKI
Wi-Fiのイマ Internet Week 2019 発表資料
by
Ken SASAKI
中国のネットワーク勉強会 JANOG44野良BoF資料
by
Ken SASAKI
ダイビングのすゝめ
by
Ken SASAKI
「入門Kubernetes」輪読会資料 6章
by
Ken SASAKI
監視 〜 ネットワーク勉強会資料
by
Ken SASAKI
オーケストラと&オーケストレーション
by
Ken SASAKI
RFC 〜 ネットワーク勉強会
by
Ken SASAKI
各種ネットワーク機器と最近の技術動向 〜 ネットワーク勉強会
by
Ken SASAKI
TCP 〜 ネットワーク勉強会資料
by
Ken SASAKI
プロトコル/NAT/HTTP通信の中身 〜 ネットワーク勉強会資料
by
Ken SASAKI
パケット通信とInternet Protocol
by
Ken SASAKI
データ処理の改善をどのように行なうか
by
Ken SASAKI
janogdon.netはじめました
1.
janogdon.net はじめました 2017/06/16 DMM.comラボ 佐々木 健 JPNIC総会講演会資料
2.
2 時系列 ● 4/13 マストドンがメディアに取り上げられ突然ブレイク ● 4/17 JANOG40プログラム募集締切日、エイヤでマストドンプログラム応募 ● 5/1
janogdon.net のインスタンス立ち上げ ● 5/2 JANOG40スタッフからプログラム採用の連絡 ● 5/2 janogdon.net 立ち上げを細々とアナウンス ● 5/10 JANOGのメーリングリストでアナウンス ● 5/10 IPv6対応 ● 5/16 JPNIC総会での登壇依頼 ● 6/5 バージョンアップ(1.3.2→1.4.1) ● 6/12 JPNIC総会向け資料提出締切
3.
3 janogdon.net とは https://janogdon.net/about の内容↓ 注意書き↓ とりあえず立ててみただけ。気まぐれで落とすかもしれない。 JANOGer
っぽい人用?、と思ってるけど、JANOG運営委員とは連係してな いよ。 janogdon ≠ JANOG だよ、と。 自由に遊んでくれてOK。 でも mastodon はアカウント削除機能が未実装なので覚悟してアカウント登 録してね。(※バージョン1.4.2で実装されました) 裏側のこととかは、どこかのJANOGの発表で使わせてもらうかもしれない。 サーバはさくらのVPS、非力なスペックなので、あんまりいじめないでね。
4.
4 janogdon.net とは 2017/6/12時点
5.
5 本日のネタ ● Mastodonの技術的概観 ● Mastodonの技術的問題点 ● Mastodonは今後どう発展するか? (勝手な予測)
6.
6 Mastodonの技術的概観
7.
7 高機能なMastodon ● Twitterに似たモダンなウェブインター フェイス ● Twitterに似たAPI ● バックエンドにデータベース ● インスタンス間通信のための仕組み
8.
8 clocコマンドでMastodonを調べる ● cloc(Count Lines of
Code) – https://github.com/AlDanial/cloc
9.
9 clocコマンドでMastodonを調べる % cloc mastodon 3281
text files. 3231 unique files. 2198 files ignored. github.com/AlDanial/cloc v 1.70 T=6.77 s (191.3 files/s, 11428.1 lines/s) ------------------------------------------------------------------------------- Language files blank comment code ------------------------------------------------------------------------------- Ruby 632 5774 1369 20975 YAML 148 197 145 16042 JavaScript 216 2503 1862 12703 JSON 35 0 0 6496 SASS 23 938 5 5162 Haml 86 286 22 1421 ERB 115 369 0 617 Markdown 27 67 0 304 HTML 6 4 0 73 XML 2 0 0 11 Bourne Shell 1 4 3 7 CSS 4 0 11 4 ------------------------------------------------------------------------------- SUM: 1295 10142 3417 63815 -------------------------------------------------------------------------------
10.
10 clocの出力結果からわかること ● 6万行程度のコンパクトなコード。 ● Ruby上の仕組みを使ったフレームワークで書かれてい る。 ● JavaScriptのコードも多い ● モダンな拡張言語も活用されている。 – SASS:スタイルシート言語 – Haml:HTMLテンプレート言語(Railsで良く使われる) –
ERB;HTMLへのRubyスクリプト埋めこみ技術
11.
11 他のソフトウェアと比較 ● bind-9.11.0-P5 〜みんな大好き? ● inn-2.6.1 〜NetNewsのソフトウェア ● IRCD-Hybrid
〜IRCデーモン
12.
12 bind-9.11.0-P5 % cloc bind-9.11.0-P5 4722
text files. 4434 unique files. 2568 files ignored. github.com/AlDanial/cloc v 1.70 T=8.49 s (255.2 files/s, 102860.2 lines/s) --------------------------------------------------------------------------------------- Language files blank comment code --------------------------------------------------------------------------------------- C 768 66345 56380 363251 Bourne Shell 444 19049 20143 133091 HTML 116 548 795 44516 C/C++ Header 609 10477 42156 31248 XML 13 1258 138 21412 m4 32 1989 818 17860 C++ 74 3487 3129 17191 Perl 61 1571 1771 8472 XSLT 7 146 138 1588 Tcl/Tk 2 174 149 842 Windows Module Definition 9 20 52 513 Python 5 64 63 366 make 13 112 70 319 Windows Resource File 2 41 47 249 diff 1 31 74 240 awk 5 69 145 236 CSS 1 31 28 140 Markdown 1 22 0 64 Protocol Buffers 1 49 170 49 Windows Message File 1 8 1 29 DTD 1 8 33 20 TeX 1 3 6 8 --------------------------------------------------------------------------------------- SUM: 2167 105502 126306 641704 ---------------------------------------------------------------------------------------
13.
13 inn-2.6.1 % cloc inn-2.6.1 894
text files. 885 unique files. 406 files ignored. github.com/AlDanial/cloc v 1.70 T=1.55 s (314.1 files/s, 138891.9 lines/s) ------------------------------------------------------------------------------- Language files blank comment code ------------------------------------------------------------------------------- C 262 16751 20114 94598 Bourne Shell 28 6071 6476 35541 m4 37 1091 986 10219 C/C++ Header 94 1390 3311 4503 make 24 579 230 3556 Perl 22 343 1355 3107 Visual Basic 5 341 0 2588 yacc 1 212 19 842 Python 10 137 445 343 lex 1 46 12 197 CSS 1 3 7 79 XSLT 1 8 42 78 Korn Shell 1 26 81 18 Oracle Forms 1 3 0 15 ------------------------------------------------------------------------------- SUM: 488 27001 33078 155684 -------------------------------------------------------------------------------
14.
14 IRCD-Hybrid % cloc hopm-1.1.4 101
text files. 94 unique files. 14 files ignored. github.com/AlDanial/cloc v 1.70 T=0.26 s (331.9 files/s, 230088.4 lines/s) ------------------------------------------------------------------------------- Language files blank comment code ------------------------------------------------------------------------------- Bourne Shell 10 4133 4547 24884 m4 16 1009 131 9678 C 23 1903 2632 8746 C/C++ Header 30 195 443 814 yacc 1 147 28 552 lex 1 60 26 285 make 5 6 0 70 YAML 1 5 1 19 ------------------------------------------------------------------------------- SUM: 87 7458 7808 45048 -------------------------------------------------------------------------------
15.
15 比較結果 ソフトウェア 総code数 主な言語 Mastodon
63,815 Ruby,JavaScript bind 641,704 C inn 155,684 C IRCD-Hybrid 45048 Shell + C Mastodonは高機能な割にコンパクト モダンな開発言語のパワー!!
16.
16 Mastodonのコードの特徴 ● 機能のわりには相当コンパクト ● フレームワークをうまく使っている ● 複数のソフトウェアを連係動作させている ● 運用を楽にするために、Dockerのコードも 記述されている ● Github上でメンテナンスされている。 ● 進化がとても速い
17.
17 Mastodonが利用するソフトウェア ● Ruby on Rails ● PostgreSQL ● Sidekiq ● Redis ● Node.js ● Docker(使わなくても良い)
18.
18 運用上必要になる外部ソフトウェア等 ● Linux OS基盤 ● リバースプロキシ(Nginx) ● メールサーバ(Postfix) ● 監視ツール
19.
19 実装上の問題その1 ● インストールが大変 ● アップデートが大変 ● 理解すべき技術要素が多い ● トラブルシュートが難しい →ちゃんと運用するのはハードルが高い
20.
20 実装上の問題その2 ● アカウント削除機能がない (※バージョン1.4.2で実装されました) ● 管理機能が弱い ● 外部認証が未実装 ● 高負荷環境時にボトルネックになる箇所が存 在する →商用サービスとして利用するには機能不足
21.
21 インスタンス間通信に用いられる OStatusの問題 ● まとまった仕様書がない ● インスタンスをまたいだメッセージの削除が できない? ● URIをキーに用いてしまっている ● 安全なインターネットを前提にしている →プロトコルとしてまだ発展途上?
22.
22 耳にしたことがあるクレーム ● PostgreSQLではなくMySQLを使っ て欲しい ● Reactを使ってるのはダサい ● UIが絶望的に良くない ● APIとUIは分離させるべきでは
23.
23 Mastodonは今後どう発展するか
24.
24 オイゲン・ロチコ氏かく語りき at 「マストドン」ブリーフィング(6/7) ● Rubyが好き。 ● PostgreSQLはRuby on
Railsのdefaultチョイス。 ● 最初はAPIだけを実装した。 ● 元々Twitterのヘビーユーザであり、UIはそこからヒントを得て作った もの ● シングルサインオン等は実装予定。 ● プロトコルも変えていく。 ● 最近のアップデートは変化が大きくて大変なのはごめんなさい。で も必要なこと。 →確信を持って設計と実装をしている。今後も確実に進化する。
25.
25 こうなると嬉しい?(インストール) apt install mastodon curl
-fsSL https://****/ | sh →やればできるはず
26.
26 こうなると嬉しい?(インスタンス起動) kubectl run mastodon
--option... →これもやればできそう
27.
27 こうなると嬉しい?(運用しやすい実装) ● コンポーネント毎にコード分離 – データストレージ – バックエンドコード –
フロントエンドコード – アプリコード ● デプロイが楽な言語でリライト – Go言語とか? →別実装が出てくるんじゃないかと期待
28.
28 こうなると嬉しい?(クラウドサービス) ● SaaS – さくっとインスタンスを構築 – アップデート等はおまかせ ● BaaS –
アプリに特化し、APIだけを提供 – 良くできたアプリがあればWebUIは不要になる →流行が続くなら、そういう動きもある?
29.
29 こうなると嬉しい?(OStatus) ● プロトコルを進化させる – インスタンスをまたいだdeleteメッセージは多分必要 – URIに紐付かないUUIDがあったほうが便利? –
大規模化した場合にスケールする仕組みが欲しい? ● 別のサービスがOStatusをサポート – TwitterがOStatusをサポートして最大インスタンスになる未 来? – mixiのリブート?? →流行が続くなら、そういう動きもある?
30.
30 面白いソフトウェアなので いじってみると楽しいですよ 終
Download