SlideShare una empresa de Scribd logo
1 de 56
KiZUNA: P2Pネットワークを用いた
マイクロブログサービスの実現
大阪市立大学 創造都市研究科
播磨 裕太 安倍 広多
石橋 勇人 松浦 敏雄
研究背景


マイクロブログサービスの普及
◦ Twitter, Weibo, Yammer, etc…



Twitter
◦ 月間アクティブユーザ: 2億4千万人超
◦ 日間ツイート数: 5億ツイート



既存のマイクロブログサービスは
サーバクライアントモデルで実現

2
研究背景 | 問題点(1)


サーバクライアントモデル
アクセスが
サーバに集中
サーバがダウンすると
サービスが停止する
(単一故障点の存在)
...
バルス!

バルス!

バルス! バルス!

3
研究背景 | 問題点(2)


高い運用コスト
◦ 大量のサーバなどが必要



Twitter Inc.
◦ 2013年第4四半期(10月-12月): 517億円の赤字

4
研究目的


Pure P2Pでマイクロブログサービスを実現
◦ 全ユーザの端末でTwitterのサブセットを実現

◦ サーバ不要
◦ 名称: KiZUNA


メリット
◦ 耐故障性(単一故障点の排除)
◦ 高いスケーラビリティ
◦ 低い運用コスト
5
KiZUNAで実現するTwitterの機能
Twitter | ツイート

140文字以内の短文
(ツイート)を投稿できる
7
Twitter | フォロー(購読)
フォローしてい
るユーザらのツ
イート

8
Twitter | ハッシュタグ
”#”から始まる文字列

9
Twitter | ハッシュタグ
「#IPSJ」に
言及している
ツイート

10
Twitter | 全文検索
「ソチ」を
含むツイート

11
Twitter | 検索ストリーム
「ソチ」を
含むツイート

Push型

12
Twitter | ログイン

ユーザの認証

13
Twitter | メッセージアーカイブ機能
ユーザの過去の
メッセージを取得

14
本研究の意義
関連研究


本研究

ツイートをフォロワーに
P2Pベースのマイクロブログサービス
配送する機能に該当 西尾らの 戸部らの
Megap
Cuckoo
hone
手法
手法
KiZUNAだけがサポート!
Hybrid ハッシュタグや Pure
Pure
Hybrid
P2Pの種類
購読者に
検索ストリームに該当
○
○
○
○
配送する機能

KiZUNA

Pure
○

内容に応じた配送

×

×

×

×

○

全文検索

×

×

×

×

○

メッセージの
アーカイブ管理

○

○

不明

不明

○

16
本研究の意義


高機能なマイクロブログサービスを
Pure P2Pで実現する方法を明らかにする
◦ マイクロブログサービス = Pub/Subパラダイムに
よってモデル化
 購読者にメッセージを配送
→トピックベースPub/Sub
 内容に応じたメッセージ配送
→コンテンツベースPub/Sub

同時に実現

 アーカイブ機能
→アーカイブ機能付きPub/Sub
17
KiZUNAの設計について
KiZUNA | 構造


後で説明

4つのSkip Graphベースの
構造化P2Pネットワークから構成
メッセージ配送用

検索ストリーム用

全文検索用

DHT用

すべてをSkip Graphベースで
実現することで実装コストを下げる

19
KiZUNA | ユーザの識別(1)

Twitterではスクリーンネーム
(ユーザが任意に設定可能で重複しない)
KiZUNAでも使うが…
重複しないことを保証したいが
サーバがないため難しい 20
KiZUNA | ユーザの識別(2)
重複しないIDが必要

乱数で生成した長いビット列を
IDとする(これをUIDと呼ぶ)
UIDの例: 582cd103-ee87-4b14-b57f-848a248de58c

UIDとスクリーンネームを併用
21
メッセージ配送の実現法
メッセージ配送 | 概要(1)
バルス!

A

Aのフォロワー

B C

...

X

フォロワー全員に配送しなければならない

一人一人に送るのは効率が悪い
Twitterで最もフォローされている
ユーザのフォロワー数は5000万人超

23
メッセージ配送 | 概要(2)
一人一人に送るのは効率が悪い

まとめて送信する
P2Pネットワーク(Skip Graph)上で
ALM(Application Level Multicast)により配送
24
メッセージ配送 | Skip Graphの構造
Level 3

Level 2

10

20

30

40

50

60

30
20

70
40

10

70

80

20 30

50

80

60
50

70

キー(昇順に並ぶ)
同一のコンピュータ(ノード)
10
40
60
80
Level 1
Level 0

10

20 30 40 50 60 70 80

000

100

110

010

101

001

111

011

25
メッセージ配送 | Skip GraphのALM
Level 3

10

20

[50, 80]へ
送信

Level 2

Level 1

Level 0

30
30

40

50

60

①

ホップ数: O (log n )
20
50

40

10

60

70

80

70
80
②

n : ネットワーク内の総ノード数
20 30

10

50

40

②

70

60

③

80

10

20 30 40 50 60 70 80

000

100

110

010

101

001

111

011

26
メッセージ配送 | 詳細(1)
購読者をある範囲に集めておけば
ALMでメッセージを配送できる

ユーザXがユーザYを購読する場合
XはYのUIDをキーとしてSkip Graphに挿入する

27
メッセージ配送 | 具体例
Aのフォロワー

Bのフォロワー

Cのフォロワー

C

B
A 分自身のキーは
自
UID:初めから挿入
10
UID: 20

UID: 30

フォロー関係を表したSkip Graph(Level 0部分)
キーを挿入しているユーザ

10

20

30

A

B

C

28
メッセージ配送 | 具体例
Aのフォロワー

Bのフォロワー

Cのフォロワー

Aを購読

B

A

C

B

UID: 10

UID: 20

UID: 30

BがAのUID(10)を挿入
フォロー関係を表したSkip Graph(Level 0部分)

10

10

20

30

A

B

B

C

29
メッセージ配送 | 具体例
Aのフォロワー

B

A

Bのフォロワー Cを購読
Cのフォロワー

C

B

UID: 10

UID: 20

A

UID: 30

AがCのUID(30)を挿入
フォロー関係を表したSkip Graph(Level 0部分)

10

10

20

30 30

A

B

B

C

A

30
メッセージ配送 | 具体例
Aのフォロワー

Bのフォロワー

B C

A
UID: 10

A C

B

Cのフォロワー

C

A

UID: 30

UID: 20

フォロー関係を表したSkip Graph(Level 0部分)
Aのフォロワー
Bのフォロワー Cのフォロワー

10

10

10

20 20 20 30 30

A

B

C

B

C

A

C

A

31
メッセージ配送 | 具体例
バルス!

Aのフォロワー

B C

A
UID: 10

Bのフォロワー

A C

B

Cのフォロワー

C

A

UID: 30

UID: 20

Bはこの範囲にALMする

フォロー関係を表したSkip Graph(Level 0部分)

10

10

10

20 20 20 30 30

A

B

C

B

C

A

C

A

32
メッセージ配送 | まとめ


購読
◦ 購読したいユーザのUIDを
キーとしてSkip Graphに挿入



配送
◦ 自身のUIDをキーの範囲としてALM



フォロワーが多くても効率が良い
◦ ホップ数は対数オーダー



配送時に購読していないノードを経由しない

※ハッシュタグに関する配送については割愛

33
メッセージアーカイブの実現法
メッセージアーカイブ | 背景(1)
過去のメッセージをいつでも取得したい

発信者自身が
過去のメッセージ
を保持
これだけでは発信者自身が
オフラインの場合は取得できない
35
メッセージアーカイブ | 背景(2)
発信者自身がオフラインの場合は取得できない

他のノード上に
メッセージの複製を持つ必要がある
DHTに複製を配置する?

コストがかかる
36
メッセージアーカイブ | 提案方式(1)
複製のためにコストをかけたくない

(オンラインの)フォロワーには
メッセージが配送されている
配送されたメッセージを複製
として保持しておけば良い

全員オフラインの場合に問題

37
メッセージアーカイブ | 提案方式(2)
発信者もそのフォロワーもすべて
オフラインだった場合はどうする?

オンラインのフォロワー数を一定以上に保つ

オンラインのフォロワー数が一定以下に
なったら誰かに強制的に購読させる
38
メッセージアーカイブ | 具体例
Aのフォロワー

A

B C

Bのフォロワー

B

Cのフォロワー

A C

C

A

UID: 30
UID: 10 Cのオンラインの
UID: 20
フォロワーが少ないGraph(Level 0部分)
フォロー関係を表したSkip
Cのフォロワー

無作為にオンラインの
10 10 10 20 20 20
ユーザを選ぶ

30 30 30

A B C B C A
Cを強制的に購読させる

C

A

X

39
メッセージアーカイブ | まとめ


フォロワーがメッセージの複製を保持する
◦ 余計なコストがかからない



常に一定数以上のフォロワー数を保つ
◦ 少なくなると強制的に購読させる

◦ フォロワーの右端のノードが
フォロワー数の判定と強制購読を担当

40
全文検索と検索ストリームの実現法
全文検索 | 概要


過去のメッセージを検索
KiZUNAではサーバがないためメッセージを
ユーザが分散して保持している
分散しているメッセージを
効率よく探す必要がある

BF Skip Graphを用いる
42
全文検索 | BF Skip Graphの概要


P2Pネットワーク上で全文検索を行うしくみ
◦ 各ノードは保持しているドキュメントを
Bloom Filterに登録
◦ 各ノードのBloom Filterを階層的に集約

IOT研究会なう
形態素解析

IOT

研究

会

なう
登録

Bloom Filter

43
全文検索 | BF Skip Graphの構造
Level 3

Level 2

Level 1

Level 0

10

20

30

40

50

60

30
20

10

70
40

20 30
10
10

70

80

50

60
50

40

80
70

60

80

20 30 40 50 60 70 80

44
全文検索 | BF Skip Graphの構造
Level 3

Level 2

Level 1

Level 0

10

「バルス」を検索 60
20
40
80
30
50
70

30
20

10

70
40

20 30
10
10

50

80

60
50

40

70
60

80

20 30 40 50 60 70 80
バルス

バルス

バルス

45
全文検索 | KiZUNAでは…


全文検索用の新たなSkip Graphを構成する



発信者自身がオフラインでも検索したい
◦ 複製を保持しているノードも参加
◦ フォロワーが一部だけが参加(で十分)

46
検索ストリーム | 概要


Push型検索
◦ 検索キーワードを登録しておく



検索ストリーム専用のBF Skip Graphを構成
◦ 検索キーワードをBloom Filterに登録する

◦ メッセージ配送時にマッチするかを調べ配送する

47
検索ストリーム | 具体例
Level 3

Level 2

Level 1

Level 0

10

「IOT研究会なう」をツイート
20
40
60
80
30
50
70

30
20

70
40

10
20 30
10
10

50

80

60
50

40

70
60

80

20 30 40 50 60 70 80
IOT

IA

IPSJ

なう

SITE

研究

加賀

48
発信者認証について
発信者認証 | 概要(1)
サーバなしで
ユーザを認証する必要がある

メッセージにデジタル署名を付与する

改ざん・詐称を
チェックできる

ユーザの公開鍵は
DHTに保存
50
発信者認証 | 概要(2)
通常のDHTは誰
でもデータを
書き換え可能

公開鍵が
改ざんされる
DHTにデジタル署名を付与
署名が付いているデータの書き換えは
署名付きのリクエストが必要

51
メッセージ配送のまとめ
メッセージ配送のまとめ
Aのフォロワーへ配送

A

IOT研究会
なう #IPSJ

ハッシュタグを抽出し配送
形態素解析しマッチする
BFを持つユーザへ配送

メッセージ配送用

Aのメッセージを受信した
全文検索用
ユーザがAの公開鍵で検証

検索ストリーム用

DHT用
53
実装について
KiZUNA | 実装


P2P基盤ソフトウェアPIAX上に実装中
◦ 実装済み
 Skip Graph
 BF Skip Graph
 メッセージ配送機能
 発信者認証機能

55
まとめ


Pure P2Pでマイクロブログサービスを実現する
方法を示した
◦ メッセージ配送にはSkip Graph上のALMを使用
◦ アーカイブ機能(複製機能)
◦ 全文検索・検索ストリームにはBF Skip Graphを使用



これにより…
◦ 耐故障性(単一故障点の排除)
◦ 高いスケーラビリティ

今後評価予定

◦ 低い運用コスト
56

Más contenido relacionado

La actualidad más candente

2015-10-31 クラウドネイティヴ時代の運用を考える 〜 ドキュメント駆動運用へ
2015-10-31 クラウドネイティヴ時代の運用を考える  〜 ドキュメント駆動運用へ2015-10-31 クラウドネイティヴ時代の運用を考える  〜 ドキュメント駆動運用へ
2015-10-31 クラウドネイティヴ時代の運用を考える 〜 ドキュメント駆動運用へOperation Lab, LLC.
 
クラシフィケーション・ツリー法入門
クラシフィケーション・ツリー法入門クラシフィケーション・ツリー法入門
クラシフィケーション・ツリー法入門H Iseri
 
【de:code 2020】 React Native で Windows アプリ開発 ~React Native for Windows~
【de:code 2020】 React Native で Windows アプリ開発 ~React Native for Windows~【de:code 2020】 React Native で Windows アプリ開発 ~React Native for Windows~
【de:code 2020】 React Native で Windows アプリ開発 ~React Native for Windows~日本マイクロソフト株式会社
 
楽天市場で使われている技術、エンジニアに必要なコアスキルとはTechnology used in Rakuten, core skills neede...
楽天市場で使われている技術、エンジニアに必要なコアスキルとはTechnology used in Rakuten,  core skills  neede...楽天市場で使われている技術、エンジニアに必要なコアスキルとはTechnology used in Rakuten,  core skills  neede...
楽天市場で使われている技術、エンジニアに必要なコアスキルとはTechnology used in Rakuten, core skills neede...Rakuten Group, Inc.
 
Coherenceを利用するときに気をつけること #OracleCoherence
Coherenceを利用するときに気をつけること #OracleCoherenceCoherenceを利用するときに気をつけること #OracleCoherence
Coherenceを利用するときに気をつけること #OracleCoherenceToshiaki Maki
 
作って(壊して?)学ぶインターネットのしくみ サイバーエージェントの実験用ASの紹介 / Introduce experimental AS in ...
作って(壊して?)学ぶインターネットのしくみ サイバーエージェントの実験用ASの紹介 / Introduce experimental AS in ...作って(壊して?)学ぶインターネットのしくみ サイバーエージェントの実験用ASの紹介 / Introduce experimental AS in ...
作って(壊して?)学ぶインターネットのしくみ サイバーエージェントの実験用ASの紹介 / Introduce experimental AS in ...whywaita
 
アプリ起動時間高速化 ~推測するな、計測せよ~
アプリ起動時間高速化 ~推測するな、計測せよ~アプリ起動時間高速化 ~推測するな、計測せよ~
アプリ起動時間高速化 ~推測するな、計測せよ~gree_tech
 
Amazon Game Tech Night #20 ゲームバックエンド開発関連セッションのre:cap
Amazon Game Tech Night #20 ゲームバックエンド開発関連セッションのre:capAmazon Game Tech Night #20 ゲームバックエンド開発関連セッションのre:cap
Amazon Game Tech Night #20 ゲームバックエンド開発関連セッションのre:capAmazon Web Services Japan
 
はじめてのアジャイル
はじめてのアジャイルはじめてのアジャイル
はじめてのアジャイルYoshihito Kuranuki
 
リクルート式 自然言語処理技術の適応事例紹介
リクルート式 自然言語処理技術の適応事例紹介リクルート式 自然言語処理技術の適応事例紹介
リクルート式 自然言語処理技術の適応事例紹介Recruit Technologies
 
大企業アジャイルの勘所(ver1.1) #アジャイルマネジメントセミナー
大企業アジャイルの勘所(ver1.1) #アジャイルマネジメントセミナー大企業アジャイルの勘所(ver1.1) #アジャイルマネジメントセミナー
大企業アジャイルの勘所(ver1.1) #アジャイルマネジメントセミナーItsuki Kuroda
 
「スプラトゥーン」リアルタイム画像解析ツール 「IkaLog」の裏側
「スプラトゥーン」リアルタイム画像解析ツール 「IkaLog」の裏側「スプラトゥーン」リアルタイム画像解析ツール 「IkaLog」の裏側
「スプラトゥーン」リアルタイム画像解析ツール 「IkaLog」の裏側Takeshi HASEGAWA
 
ソーシャルゲームのためのデータベース設計
ソーシャルゲームのためのデータベース設計ソーシャルゲームのためのデータベース設計
ソーシャルゲームのためのデータベース設計Yoshinori Matsunobu
 
VPC Reachability Analyzer 使って人生が変わった話
VPC Reachability Analyzer 使って人生が変わった話VPC Reachability Analyzer 使って人生が変わった話
VPC Reachability Analyzer 使って人生が変わった話Noritaka Sekiyama
 
Confluenceショートカットキー表 v1
Confluenceショートカットキー表 v1Confluenceショートカットキー表 v1
Confluenceショートカットキー表 v1Naho Inuyama
 
分散システムについて語らせてくれ
分散システムについて語らせてくれ分散システムについて語らせてくれ
分散システムについて語らせてくれKumazaki Hiroki
 
実装して理解するLINE LoginとOpenID Connect入門
実装して理解するLINE LoginとOpenID Connect入門実装して理解するLINE LoginとOpenID Connect入門
実装して理解するLINE LoginとOpenID Connect入門Naohiro Fujie
 
絶望と最後の希望
絶望と最後の希望絶望と最後の希望
絶望と最後の希望Tatsuya Sato
 
ぱぱっと理解するSpring Cloudの基本
ぱぱっと理解するSpring Cloudの基本ぱぱっと理解するSpring Cloudの基本
ぱぱっと理解するSpring Cloudの基本kazuki kumagai
 
既存RailsアプリをSSO化して、本番環境で活用した話【WESEEK Tech Conf #12】
既存RailsアプリをSSO化して、本番環境で活用した話【WESEEK Tech Conf #12】既存RailsアプリをSSO化して、本番環境で活用した話【WESEEK Tech Conf #12】
既存RailsアプリをSSO化して、本番環境で活用した話【WESEEK Tech Conf #12】WESEEKWESEEK
 

La actualidad más candente (20)

2015-10-31 クラウドネイティヴ時代の運用を考える 〜 ドキュメント駆動運用へ
2015-10-31 クラウドネイティヴ時代の運用を考える  〜 ドキュメント駆動運用へ2015-10-31 クラウドネイティヴ時代の運用を考える  〜 ドキュメント駆動運用へ
2015-10-31 クラウドネイティヴ時代の運用を考える 〜 ドキュメント駆動運用へ
 
クラシフィケーション・ツリー法入門
クラシフィケーション・ツリー法入門クラシフィケーション・ツリー法入門
クラシフィケーション・ツリー法入門
 
【de:code 2020】 React Native で Windows アプリ開発 ~React Native for Windows~
【de:code 2020】 React Native で Windows アプリ開発 ~React Native for Windows~【de:code 2020】 React Native で Windows アプリ開発 ~React Native for Windows~
【de:code 2020】 React Native で Windows アプリ開発 ~React Native for Windows~
 
楽天市場で使われている技術、エンジニアに必要なコアスキルとはTechnology used in Rakuten, core skills neede...
楽天市場で使われている技術、エンジニアに必要なコアスキルとはTechnology used in Rakuten,  core skills  neede...楽天市場で使われている技術、エンジニアに必要なコアスキルとはTechnology used in Rakuten,  core skills  neede...
楽天市場で使われている技術、エンジニアに必要なコアスキルとはTechnology used in Rakuten, core skills neede...
 
Coherenceを利用するときに気をつけること #OracleCoherence
Coherenceを利用するときに気をつけること #OracleCoherenceCoherenceを利用するときに気をつけること #OracleCoherence
Coherenceを利用するときに気をつけること #OracleCoherence
 
作って(壊して?)学ぶインターネットのしくみ サイバーエージェントの実験用ASの紹介 / Introduce experimental AS in ...
作って(壊して?)学ぶインターネットのしくみ サイバーエージェントの実験用ASの紹介 / Introduce experimental AS in ...作って(壊して?)学ぶインターネットのしくみ サイバーエージェントの実験用ASの紹介 / Introduce experimental AS in ...
作って(壊して?)学ぶインターネットのしくみ サイバーエージェントの実験用ASの紹介 / Introduce experimental AS in ...
 
アプリ起動時間高速化 ~推測するな、計測せよ~
アプリ起動時間高速化 ~推測するな、計測せよ~アプリ起動時間高速化 ~推測するな、計測せよ~
アプリ起動時間高速化 ~推測するな、計測せよ~
 
Amazon Game Tech Night #20 ゲームバックエンド開発関連セッションのre:cap
Amazon Game Tech Night #20 ゲームバックエンド開発関連セッションのre:capAmazon Game Tech Night #20 ゲームバックエンド開発関連セッションのre:cap
Amazon Game Tech Night #20 ゲームバックエンド開発関連セッションのre:cap
 
はじめてのアジャイル
はじめてのアジャイルはじめてのアジャイル
はじめてのアジャイル
 
リクルート式 自然言語処理技術の適応事例紹介
リクルート式 自然言語処理技術の適応事例紹介リクルート式 自然言語処理技術の適応事例紹介
リクルート式 自然言語処理技術の適応事例紹介
 
大企業アジャイルの勘所(ver1.1) #アジャイルマネジメントセミナー
大企業アジャイルの勘所(ver1.1) #アジャイルマネジメントセミナー大企業アジャイルの勘所(ver1.1) #アジャイルマネジメントセミナー
大企業アジャイルの勘所(ver1.1) #アジャイルマネジメントセミナー
 
「スプラトゥーン」リアルタイム画像解析ツール 「IkaLog」の裏側
「スプラトゥーン」リアルタイム画像解析ツール 「IkaLog」の裏側「スプラトゥーン」リアルタイム画像解析ツール 「IkaLog」の裏側
「スプラトゥーン」リアルタイム画像解析ツール 「IkaLog」の裏側
 
ソーシャルゲームのためのデータベース設計
ソーシャルゲームのためのデータベース設計ソーシャルゲームのためのデータベース設計
ソーシャルゲームのためのデータベース設計
 
VPC Reachability Analyzer 使って人生が変わった話
VPC Reachability Analyzer 使って人生が変わった話VPC Reachability Analyzer 使って人生が変わった話
VPC Reachability Analyzer 使って人生が変わった話
 
Confluenceショートカットキー表 v1
Confluenceショートカットキー表 v1Confluenceショートカットキー表 v1
Confluenceショートカットキー表 v1
 
分散システムについて語らせてくれ
分散システムについて語らせてくれ分散システムについて語らせてくれ
分散システムについて語らせてくれ
 
実装して理解するLINE LoginとOpenID Connect入門
実装して理解するLINE LoginとOpenID Connect入門実装して理解するLINE LoginとOpenID Connect入門
実装して理解するLINE LoginとOpenID Connect入門
 
絶望と最後の希望
絶望と最後の希望絶望と最後の希望
絶望と最後の希望
 
ぱぱっと理解するSpring Cloudの基本
ぱぱっと理解するSpring Cloudの基本ぱぱっと理解するSpring Cloudの基本
ぱぱっと理解するSpring Cloudの基本
 
既存RailsアプリをSSO化して、本番環境で活用した話【WESEEK Tech Conf #12】
既存RailsアプリをSSO化して、本番環境で活用した話【WESEEK Tech Conf #12】既存RailsアプリをSSO化して、本番環境で活用した話【WESEEK Tech Conf #12】
既存RailsアプリをSSO化して、本番環境で活用した話【WESEEK Tech Conf #12】
 

Destacado

CDNとCDSPビジネスの動向と展望
CDNとCDSPビジネスの動向と展望CDNとCDSPビジネスの動向と展望
CDNとCDSPビジネスの動向と展望Masaaki Nabeshima
 
Skip Graphをベースとした高速な挿入と検索が可能な構造化オーバレイの提案
Skip Graphをベースとした高速な挿入と検索が可能な構造化オーバレイの提案Skip Graphをベースとした高速な挿入と検索が可能な構造化オーバレイの提案
Skip Graphをベースとした高速な挿入と検索が可能な構造化オーバレイの提案Kota Abe
 
CDNのパフォーマンス比較/Cedexis
CDNのパフォーマンス比較/CedexisCDNのパフォーマンス比較/Cedexis
CDNのパフォーマンス比較/CedexisJ-Stream Inc.
 
FiNCとマイクロサービス
FiNCとマイクロサービスFiNCとマイクロサービス
FiNCとマイクロサービスFumiya Shinozuka
 
Ansibleの現在とこれから
Ansibleの現在とこれからAnsibleの現在とこれから
Ansibleの現在とこれからTaira Hajime
 
今どきのアーキテクチャ設計戦略 - QCon Tokyo 2016
今どきのアーキテクチャ設計戦略 - QCon Tokyo 2016今どきのアーキテクチャ設計戦略 - QCon Tokyo 2016
今どきのアーキテクチャ設計戦略 - QCon Tokyo 2016Yusuke Suzuki
 
運用に自動化を求めるのは間違っているだろうか
運用に自動化を求めるのは間違っているだろうか運用に自動化を求めるのは間違っているだろうか
運用に自動化を求めるのは間違っているだろうかMasahito Zembutsu
 
マイクロサービスアーキテクチャの設計 - JUG2015
マイクロサービスアーキテクチャの設計 - JUG2015マイクロサービスアーキテクチャの設計 - JUG2015
マイクロサービスアーキテクチャの設計 - JUG2015Yusuke Suzuki
 
マイクロサービスアーキテクチャ とは何か
マイクロサービスアーキテクチャとは何かマイクロサービスアーキテクチャとは何か
マイクロサービスアーキテクチャ とは何かYusuke Suzuki
 
マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!mosa siru
 

Destacado (12)

CDNとCDSPビジネスの動向と展望
CDNとCDSPビジネスの動向と展望CDNとCDSPビジネスの動向と展望
CDNとCDSPビジネスの動向と展望
 
Skip Graphをベースとした高速な挿入と検索が可能な構造化オーバレイの提案
Skip Graphをベースとした高速な挿入と検索が可能な構造化オーバレイの提案Skip Graphをベースとした高速な挿入と検索が可能な構造化オーバレイの提案
Skip Graphをベースとした高速な挿入と検索が可能な構造化オーバレイの提案
 
P2P型CDN
P2P型CDNP2P型CDN
P2P型CDN
 
CDNのパフォーマンス比較/Cedexis
CDNのパフォーマンス比較/CedexisCDNのパフォーマンス比較/Cedexis
CDNのパフォーマンス比較/Cedexis
 
FiNCとマイクロサービス
FiNCとマイクロサービスFiNCとマイクロサービス
FiNCとマイクロサービス
 
入門Ansible
入門Ansible入門Ansible
入門Ansible
 
Ansibleの現在とこれから
Ansibleの現在とこれからAnsibleの現在とこれから
Ansibleの現在とこれから
 
今どきのアーキテクチャ設計戦略 - QCon Tokyo 2016
今どきのアーキテクチャ設計戦略 - QCon Tokyo 2016今どきのアーキテクチャ設計戦略 - QCon Tokyo 2016
今どきのアーキテクチャ設計戦略 - QCon Tokyo 2016
 
運用に自動化を求めるのは間違っているだろうか
運用に自動化を求めるのは間違っているだろうか運用に自動化を求めるのは間違っているだろうか
運用に自動化を求めるのは間違っているだろうか
 
マイクロサービスアーキテクチャの設計 - JUG2015
マイクロサービスアーキテクチャの設計 - JUG2015マイクロサービスアーキテクチャの設計 - JUG2015
マイクロサービスアーキテクチャの設計 - JUG2015
 
マイクロサービスアーキテクチャ とは何か
マイクロサービスアーキテクチャとは何かマイクロサービスアーキテクチャとは何か
マイクロサービスアーキテクチャ とは何か
 
マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!
 

Más de Kota Abe

構造化オーバーレイネットワークを用いた条件付きマルチキャストの提案と評価
構造化オーバーレイネットワークを用いた条件付きマルチキャストの提案と評価構造化オーバーレイネットワークを用いた条件付きマルチキャストの提案と評価
構造化オーバーレイネットワークを用いた条件付きマルチキャストの提案と評価Kota Abe
 
構造化オーバーレイネットワークを用いた条件付きマルチキャストの提案
構造化オーバーレイネットワークを用いた条件付きマルチキャストの提案構造化オーバーレイネットワークを用いた条件付きマルチキャストの提案
構造化オーバーレイネットワークを用いた条件付きマルチキャストの提案Kota Abe
 
WebRTCを用いたWebブラウザ間構造化P2Pネットワークの実現
WebRTCを用いたWebブラウザ間構造化P2Pネットワークの実現WebRTCを用いたWebブラウザ間構造化P2Pネットワークの実現
WebRTCを用いたWebブラウザ間構造化P2Pネットワークの実現Kota Abe
 
WebRTCを用いた耐故障性の高い
ウェブブラウザ間構造化P2Pネットワークの実現
WebRTCを用いた耐故障性の高い
ウェブブラウザ間構造化P2Pネットワークの実現WebRTCを用いた耐故障性の高い
ウェブブラウザ間構造化P2Pネットワークの実現
WebRTCを用いた耐故障性の高い
ウェブブラウザ間構造化P2Pネットワークの実現Kota Abe
 
高いChurn耐性と検索性能を持つキー順序保存型構造化オーバレイネットワークSuzakuの提案と評価
高いChurn耐性と検索性能を持つキー順序保存型構造化オーバレイネットワークSuzakuの提案と評価高いChurn耐性と検索性能を持つキー順序保存型構造化オーバレイネットワークSuzakuの提案と評価
高いChurn耐性と検索性能を持つキー順序保存型構造化オーバレイネットワークSuzakuの提案と評価Kota Abe
 
Constructing Distributed Doubly Linked Lists without Distributed Locking
Constructing Distributed Doubly Linked Lists without Distributed LockingConstructing Distributed Doubly Linked Lists without Distributed Locking
Constructing Distributed Doubly Linked Lists without Distributed LockingKota Abe
 
P2Pネットワークにおける経路長あるいは経路表サイズの最大値を柔軟に設定可能な経路表構築方式
P2Pネットワークにおける経路長あるいは経路表サイズの最大値を柔軟に設定可能な経路表構築方式P2Pネットワークにおける経路長あるいは経路表サイズの最大値を柔軟に設定可能な経路表構築方式
P2Pネットワークにおける経路長あるいは経路表サイズの最大値を柔軟に設定可能な経路表構築方式Kota Abe
 
構造化P2Pネットワークにおけるコンテンツの人気度を考慮したショートカットリンクの生成方法とその評価
構造化P2Pネットワークにおけるコンテンツの人気度を考慮したショートカットリンクの生成方法とその評価構造化P2Pネットワークにおけるコンテンツの人気度を考慮したショートカットリンクの生成方法とその評価
構造化P2Pネットワークにおけるコンテンツの人気度を考慮したショートカットリンクの生成方法とその評価Kota Abe
 
高速な挿入と検索が可能なSkip Graphの改良
高速な挿入と検索が可能なSkip Graphの改良高速な挿入と検索が可能なSkip Graphの改良
高速な挿入と検索が可能なSkip Graphの改良Kota Abe
 
距離が付加された要素集合をコンパクトに表現できるDistance Bloom Filterの提案とP2Pネットワークにおける最短経路探索への応用
距離が付加された要素集合をコンパクトに表現できるDistance Bloom Filterの提案とP2Pネットワークにおける最短経路探索への応用距離が付加された要素集合をコンパクトに表現できるDistance Bloom Filterの提案とP2Pネットワークにおける最短経路探索への応用
距離が付加された要素集合をコンパクトに表現できるDistance Bloom Filterの提案とP2Pネットワークにおける最短経路探索への応用Kota Abe
 
Chord#における経路表の維持管理コスト削減手法
Chord#における経路表の維持管理コスト削減手法Chord#における経路表の維持管理コスト削減手法
Chord#における経路表の維持管理コスト削減手法Kota Abe
 
区間をキーとして保持する分散KVSの効率的な実現法
区間をキーとして保持する分散KVSの効率的な実現法区間をキーとして保持する分散KVSの効率的な実現法
区間をキーとして保持する分散KVSの効率的な実現法Kota Abe
 
P2PネットワークにおけるSkip GraphとBloom Filterを用いた効率的な複数キーワード検索手法の提案
P2PネットワークにおけるSkip GraphとBloom Filterを用いた効率的な複数キーワード検索手法の提案P2PネットワークにおけるSkip GraphとBloom Filterを用いた効率的な複数キーワード検索手法の提案
P2PネットワークにおけるSkip GraphとBloom Filterを用いた効率的な複数キーワード検索手法の提案Kota Abe
 
P2Pシステム上での安定したサービス提供基盤musasabi
P2Pシステム上での安定したサービス提供基盤musasabiP2Pシステム上での安定したサービス提供基盤musasabi
P2Pシステム上での安定したサービス提供基盤musasabiKota Abe
 
構造化オーバーレイネットワークに適した分散双方向連結リストDDLL
構造化オーバーレイネットワークに適した分散双方向連結リストDDLL構造化オーバーレイネットワークに適した分散双方向連結リストDDLL
構造化オーバーレイネットワークに適した分散双方向連結リストDDLLKota Abe
 

Más de Kota Abe (15)

構造化オーバーレイネットワークを用いた条件付きマルチキャストの提案と評価
構造化オーバーレイネットワークを用いた条件付きマルチキャストの提案と評価構造化オーバーレイネットワークを用いた条件付きマルチキャストの提案と評価
構造化オーバーレイネットワークを用いた条件付きマルチキャストの提案と評価
 
構造化オーバーレイネットワークを用いた条件付きマルチキャストの提案
構造化オーバーレイネットワークを用いた条件付きマルチキャストの提案構造化オーバーレイネットワークを用いた条件付きマルチキャストの提案
構造化オーバーレイネットワークを用いた条件付きマルチキャストの提案
 
WebRTCを用いたWebブラウザ間構造化P2Pネットワークの実現
WebRTCを用いたWebブラウザ間構造化P2Pネットワークの実現WebRTCを用いたWebブラウザ間構造化P2Pネットワークの実現
WebRTCを用いたWebブラウザ間構造化P2Pネットワークの実現
 
WebRTCを用いた耐故障性の高い
ウェブブラウザ間構造化P2Pネットワークの実現
WebRTCを用いた耐故障性の高い
ウェブブラウザ間構造化P2Pネットワークの実現WebRTCを用いた耐故障性の高い
ウェブブラウザ間構造化P2Pネットワークの実現
WebRTCを用いた耐故障性の高い
ウェブブラウザ間構造化P2Pネットワークの実現
 
高いChurn耐性と検索性能を持つキー順序保存型構造化オーバレイネットワークSuzakuの提案と評価
高いChurn耐性と検索性能を持つキー順序保存型構造化オーバレイネットワークSuzakuの提案と評価高いChurn耐性と検索性能を持つキー順序保存型構造化オーバレイネットワークSuzakuの提案と評価
高いChurn耐性と検索性能を持つキー順序保存型構造化オーバレイネットワークSuzakuの提案と評価
 
Constructing Distributed Doubly Linked Lists without Distributed Locking
Constructing Distributed Doubly Linked Lists without Distributed LockingConstructing Distributed Doubly Linked Lists without Distributed Locking
Constructing Distributed Doubly Linked Lists without Distributed Locking
 
P2Pネットワークにおける経路長あるいは経路表サイズの最大値を柔軟に設定可能な経路表構築方式
P2Pネットワークにおける経路長あるいは経路表サイズの最大値を柔軟に設定可能な経路表構築方式P2Pネットワークにおける経路長あるいは経路表サイズの最大値を柔軟に設定可能な経路表構築方式
P2Pネットワークにおける経路長あるいは経路表サイズの最大値を柔軟に設定可能な経路表構築方式
 
構造化P2Pネットワークにおけるコンテンツの人気度を考慮したショートカットリンクの生成方法とその評価
構造化P2Pネットワークにおけるコンテンツの人気度を考慮したショートカットリンクの生成方法とその評価構造化P2Pネットワークにおけるコンテンツの人気度を考慮したショートカットリンクの生成方法とその評価
構造化P2Pネットワークにおけるコンテンツの人気度を考慮したショートカットリンクの生成方法とその評価
 
高速な挿入と検索が可能なSkip Graphの改良
高速な挿入と検索が可能なSkip Graphの改良高速な挿入と検索が可能なSkip Graphの改良
高速な挿入と検索が可能なSkip Graphの改良
 
距離が付加された要素集合をコンパクトに表現できるDistance Bloom Filterの提案とP2Pネットワークにおける最短経路探索への応用
距離が付加された要素集合をコンパクトに表現できるDistance Bloom Filterの提案とP2Pネットワークにおける最短経路探索への応用距離が付加された要素集合をコンパクトに表現できるDistance Bloom Filterの提案とP2Pネットワークにおける最短経路探索への応用
距離が付加された要素集合をコンパクトに表現できるDistance Bloom Filterの提案とP2Pネットワークにおける最短経路探索への応用
 
Chord#における経路表の維持管理コスト削減手法
Chord#における経路表の維持管理コスト削減手法Chord#における経路表の維持管理コスト削減手法
Chord#における経路表の維持管理コスト削減手法
 
区間をキーとして保持する分散KVSの効率的な実現法
区間をキーとして保持する分散KVSの効率的な実現法区間をキーとして保持する分散KVSの効率的な実現法
区間をキーとして保持する分散KVSの効率的な実現法
 
P2PネットワークにおけるSkip GraphとBloom Filterを用いた効率的な複数キーワード検索手法の提案
P2PネットワークにおけるSkip GraphとBloom Filterを用いた効率的な複数キーワード検索手法の提案P2PネットワークにおけるSkip GraphとBloom Filterを用いた効率的な複数キーワード検索手法の提案
P2PネットワークにおけるSkip GraphとBloom Filterを用いた効率的な複数キーワード検索手法の提案
 
P2Pシステム上での安定したサービス提供基盤musasabi
P2Pシステム上での安定したサービス提供基盤musasabiP2Pシステム上での安定したサービス提供基盤musasabi
P2Pシステム上での安定したサービス提供基盤musasabi
 
構造化オーバーレイネットワークに適した分散双方向連結リストDDLL
構造化オーバーレイネットワークに適した分散双方向連結リストDDLL構造化オーバーレイネットワークに適した分散双方向連結リストDDLL
構造化オーバーレイネットワークに適した分散双方向連結リストDDLL
 

Último

スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムsugiuralab
 
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdfTSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdftaisei2219
 
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Danieldanielhu54
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略Ryo Sasaki
 
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNetToru Tamaki
 
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A surveyToru Tamaki
 
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)Hiroki Ichikura
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Yuma Ohgami
 
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものですiPride Co., Ltd.
 
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...Toru Tamaki
 

Último (10)

スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
 
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdfTSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdf
 
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Daniel
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
 
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet
 
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey
 
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
 
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものです
 
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
 

KiZUNA: P2Pネットワークを用いた分散型マイクロブログサービスの実現