SlideShare uma empresa Scribd logo
1 de 52
Baixar para ler offline
Kamonを理解する
CA ProFit-X
塚本 修也 @s_tsuka
2015/11/20 AdTech Scala Meetup
1
目次
• Kamonとは
• Kamonの使い方
• 実際にシステムを監視してみる
• Kamonの内部構造
2
はじめる前に
3
とりあえず動かしたい人向け
• ミニマムなサンプルを用意しました
# DL
git clone https://github.com/tsukaby/kamon-spray-example.git
cd kamon-spray-example
# 実行(errorが出ますがとりあえず無視してください)
sbt run
(またはsbt run | grep uuid-count)
# browser, curl, ab, wrkなどで以下にアクセス
# http://localhost:8080/uuid
# sbt runしたコンソールに監視結果が出ます
4
Kamonとは
5
Kamonとは
• JVM上で動くアプリケーションの監視ツール(ライブラリ)
• 多くの拡張・連携機能

Akka Actor, JDBC, JMX, Play2, Spray, Datadog, NewRelic …
• Web site

http://kamon.io/
• GitHub

https://github.com/kamon-io/Kamon
6
ツールというよりライブラリ
• Scalaのライブラリ

Maven centralから使える
• Scalaアプリケーション内から呼び出す感じ
7
何ができるの?拡張機能って?
• JVMアプリの監視(値の定期取得)
• CPU, Memory, NW I/O, Load average, etc
• Actorの処理時間、溜まっているメッセージ数
• 任意の処理block(method)の処理時間
• 独自に値を収集可能
• Kamonが収集した値の外部出力

Datadog, NewRelic, 標準出力, StatsD, fluentd
8
できないこと
• (GUIによる)可視化

※外部ツールにデータを転送することは可能
• 別途可視化環境を用意しましょう
• kamon-statsd + Graphite
• kamon-spm + SPM
• kamon-datadog + Datadog
• kamon-newrelic + Newrelic
9
Kamonの使い方
10
Get Started
• 公式

http://kamon.io/introduction/get-started/
• AdTech Scala blog

KamonとDatadogを使ってAkka actorのパフォーマンスを可視化
する
• サンプルコード

https://github.com/kamon-io/Kamon/tree/master/kamon-
examples

https://github.com/tsukaby/kamon-spray-example
11
導入4ステップ
1. アプリ作成
2. libraryDependencies追加
3. conf追加
4. Kamon用のコード追加
12
拡張機能による自動データ収集
• libraryDependenciesに追加するだけ
libraryDependencies ++= Seq(
"io.kamon" %% "kamon-core" % "0.5.2",
"io.kamon" %% "kamon-system-metrics" % "0.5.2",
"io.kamon" %% "kamon-scala" % "0.5.2",
"io.kamon" %% "kamon-akka" % "0.5.2",
"io.kamon" %% "kamon-spray" % "0.5.2",
"io.kamon" %% "kamon-datadog" % "0.5.2",
"io.kamon" %% "kamon-log-reporter" % "0.5.2"
)
13
一部aspectjが必要
• http://kamon.io/introduction/overview/
• アプリを動かすときは以下のような感じで
java -javaagent:~/.aspectj/aspectj-weaver.jar your-
app.jar
14
kamon-system-metricsを使う人は
Sigarも必要
• http://kamon.io/integrations/system-metrics/system-
and-jvm-metrics/
• Sigar
• システムの情報(CPU, Memoryなど)を取得するC言語
で書かれたライブラリ
• Java実装もあるっぽい・・けどただのラッパー?実行
時には共有ライブラリ(.so, .dylib)が必要みたい
15
Sigarをどうやって入れれば良
いの?
• http://kamon.io/integrations/system-metrics/
system-and-jvm-metrics/
• sigar-loaderを使う
• カレントdirのnative dir以下に自動でDL
• 後は
java -Djava.library.path=native -jar …
16
独自に値を収集する
• コードを書くだけ
import kamon.Kamon
import kamon.trace.Tracer
val counter = Kamon.metrics.counter("foo")
val histogram = Kamon.metrics.histogram("bar")
counter.increment()
histogram.record(currentMillis % 1000)
Tracer.withNewContext("uuid-generate", autoFinish =
true) {
println("do something")
} 17
動作確認
• まずはlog-reporterで確認
• 以下のサンプルをsbt runすれば確認できます
https://github.com/tsukaby/kamon-spray-
example

"io.kamon" %% "kamon-log-reporter" % "0.5.2"
18
データの転送
• log-reporterで見てもあまり意味ない

(debug用)
• Datadogに送りたいなら

"io.kamon" %% "kamon-datadog" % "0.5.2"
19
実際にシステムを
監視してみる
20
CA ProFit-X 配信サーバの例
• 運用・監視している配信サーバの例
• 各Metricsなどの割合(体感)
• Counter 60%
• Histogram 10%
• Tracer 30%
• Gauge 0% (どこで使うんだろう・・)
• Counter以外は使いどころが難しい。(どなたか教えて下さい)
21
障害の検知 Actorを見る
• 「リリースしたら何か調子悪いね?」
• 「配信サーバのレスポンスが悪化してな
い?」
22
障害の検知 Actorを見る
(mailboxのたまり具合を可視化)
23
障害の検知 Actorを見る
(mailboxのたまり具合を可視化)
• (良い例がなくてごめんなさい)
• 何かまずいプログラムをリリースすると特定の
Actorが詰まる
• e.g. 非同期を意識してないコード
• e.g. DynamoDBのキャパシティーが不足した
24
接続先サーバ(AdNetwork, DSP)の
APIのレスポンスタイム
• 「X社からImpressionが少ないって問い合わせ
が来てるんだけど?」
25
接続先サーバ(AdNetwork, DSP)の
APIのレスポンスタイム
26
接続先サーバ(AdNetwork, DSP)の
APIのレスポンスタイム
• X社のAPIは117ms

ProFit-X配信サーバでは100msでタイムアウト
• A, B, C, …社は7∼30msで高速
• Z社はスパイクしている・・・

(理由は不明)
• 各接続先のサーバに障害があるとこのグラフも変化する
27
データの消化具合を計測
• 「Impressionとかの値が乖離してるよね」

「Kinesisの値の消化が間に合ってないか
も?」
• 「現在扱ってるKinesisレコードの日付と現在
時刻を比較してみよう」
28
データの消化具合を計測
29
データの消化具合を計測
• 消化が間に合ってない
• 最大86K秒(約24h)前のデータを消化している
30
データの消化具合を計測(その後)
• 同僚がチューニングしてくれて改善
31
Kamonの内部構造
32
Kamonの内部構造
(基本)
33
Kamonの疑問
• どういう仕組みで動いているの?
• libraryDependenciesを追加するだけでどうし
て動くの?
34
構成要素
• Akka Actor
• Akka Extensions
• AspectJ
• Sigar
• 出版-購読型モデル(Publisher, Subscriber)

(Observerパターン)
• LongAdder
• HdrHistogram
35
KamonもActorSystem
• Kamon.start()で専用のActorSystemを作成

https://github.com/kamon-io/Kamon/blob/
master/kamon-core/src/main/scala/kamon/
Kamon.scala#L51
36
拡張機能は自動でONに
• ModuleLoaderがロード(Akka Extensions)

https://github.com/kamon-io/Kamon/blob/
master/kamon-core/src/main/scala/kamon/
ModuleLoader.scala#L92-L111
37
Akka Extensionって?
• http://doc.akka.io/docs/akka/snapshot/scala/
extending-akka.html
• Akka ActorのExtensionを少し調べてみた
• ActorSystem内に1つだけ存在できるActorの拡
張(拡張というよりただのLogic, Stateの集合?)
38
KamonにおけるExtensions
• 複数jarがあるがほぼ全てAkka Extensions
• ModuleLoaderが自動でロード
• 特に有効化など追加のコード必要なし
39
Kamonの内部構造
(データの転送)
40
Kamonの疑問その2
• どうやって値を転送しているの?
41
定期的に値を転送
• SubscriptionsDispatcher
1. processTick
2. dispatch
3. dispatchSelections
4. subscriber ! tickMetrics
• subscriber

log-reporterやdatadog-metrics-sender
42
MetricsSenderって?
• その名の通り。いろいろある。
• DatadogMetricsSender
• SimpleStatsDMetricsSender
• FluentdMetricsSender
• etc
43
MetricsSenderって?
• SubscriptionDispatcherが
TickMetricSnapshotを作成し、

各MetricsSenderへ送信
• 各MetricsSenderは転送先に合った形にデータ
を整形・送信
44
Kamonの内部構造
(値のカウント)
45
Kamonの疑問その3
• metricsはどう作られているの?
• tracerはどう作られているの?
• どうしてカウントした値が転送されるの?
46
Metricsの作成
• MetricsModule#registerCounter
• 単にCounterを作成して返しているだけ
• Counter = 内部的にはLongAdder
• _trackedEntitiesに既にあればそれを返す
val counter = Kamon.metrics.counter("foo")
47
Snapshotを作成
• MetricsModule#collectSnapshots
• _trackedEntitiesを全てなめる
• 現時点の値を取得し、Snapshotを作成
48
Tracer
• tracer = 内部的にはhistogram
• metricsとほぼ同じ仕組み
• histogram = 内部的にはHdrHistogram
49
Tracerの作成
• TraceModule#withNewContext
• 内部的にMetricsOnlyContextなどが作られる
• 自動または手動で#finishを実行
• finishするとhistogramのデータ作成(後はmetricsと同じ)
Tracer.withNewContext("foo", autoFinish = true) {
println("Hello")
}
50
まとめ
51
まとめ
• Kamonの概要
• Kamonの使い方、サンプルコード
• ProFitXの例
• Kamonの内部構造について
52

Mais conteúdo relacionado

Mais procurados

マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!mosa siru
 
ScrapyとPhantomJSを用いたスクレイピングDSL
ScrapyとPhantomJSを用いたスクレイピングDSLScrapyとPhantomJSを用いたスクレイピングDSL
ScrapyとPhantomJSを用いたスクレイピングDSLMasayuki Isobe
 
golang.tokyo #6 (in Japanese)
golang.tokyo #6 (in Japanese)golang.tokyo #6 (in Japanese)
golang.tokyo #6 (in Japanese)Yuichi Murata
 
SageMakerを使った異常検知
SageMakerを使った異常検知SageMakerを使った異常検知
SageMakerを使った異常検知Ryohei Yamaguchi
 
実践!Elasticsearch + Sudachi を用いた全文検索エンジン
実践!Elasticsearch + Sudachi を用いた全文検索エンジン実践!Elasticsearch + Sudachi を用いた全文検索エンジン
実践!Elasticsearch + Sudachi を用いた全文検索エンジンS. T.
 
概念モデリング再入門 + DDD
概念モデリング再入門 + DDD概念モデリング再入門 + DDD
概念モデリング再入門 + DDDHiroshima JUG
 
雑なMySQLパフォーマンスチューニング
雑なMySQLパフォーマンスチューニング雑なMySQLパフォーマンスチューニング
雑なMySQLパフォーマンスチューニングyoku0825
 
Rails上でのpub/sub イベントハンドラの扱い
Rails上でのpub/sub イベントハンドラの扱いRails上でのpub/sub イベントハンドラの扱い
Rails上でのpub/sub イベントハンドラの扱いota42y
 
マスターデータの キャッシュシステムの改善の話
マスターデータの キャッシュシステムの改善の話マスターデータの キャッシュシステムの改善の話
マスターデータの キャッシュシステムの改善の話natsumi_ishizaka
 
勉強か?趣味か?人生か?―プログラミングコンテストとは
勉強か?趣味か?人生か?―プログラミングコンテストとは勉強か?趣味か?人生か?―プログラミングコンテストとは
勉強か?趣味か?人生か?―プログラミングコンテストとはTakuya Akiba
 
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」SQLアンチパターン 幻の第26章「とりあえず削除フラグ」
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」Takuto Wada
 
2023-03-23_Spiral.AI
2023-03-23_Spiral.AI2023-03-23_Spiral.AI
2023-03-23_Spiral.AISasakiYuichi1
 
ビットバンクにおける少人数で支えるインフラチームの戦略
ビットバンクにおける少人数で支えるインフラチームの戦略ビットバンクにおける少人数で支えるインフラチームの戦略
ビットバンクにおける少人数で支えるインフラチームの戦略bitbank, Inc. Tokyo, Japan
 
例外設計における大罪
例外設計における大罪例外設計における大罪
例外設計における大罪Takuto Wada
 
低レイヤー入門
低レイヤー入門低レイヤー入門
低レイヤー入門demuyan
 
オブジェクト指向プログラミングの現在・過去・未来
オブジェクト指向プログラミングの現在・過去・未来オブジェクト指向プログラミングの現在・過去・未来
オブジェクト指向プログラミングの現在・過去・未来増田 亨
 
最近のKaggleに学ぶテーブルデータの特徴量エンジニアリング
最近のKaggleに学ぶテーブルデータの特徴量エンジニアリング最近のKaggleに学ぶテーブルデータの特徴量エンジニアリング
最近のKaggleに学ぶテーブルデータの特徴量エンジニアリングmlm_kansai
 

Mais procurados (20)

マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!
 
ScrapyとPhantomJSを用いたスクレイピングDSL
ScrapyとPhantomJSを用いたスクレイピングDSLScrapyとPhantomJSを用いたスクレイピングDSL
ScrapyとPhantomJSを用いたスクレイピングDSL
 
TLS, HTTP/2演習
TLS, HTTP/2演習TLS, HTTP/2演習
TLS, HTTP/2演習
 
golang.tokyo #6 (in Japanese)
golang.tokyo #6 (in Japanese)golang.tokyo #6 (in Japanese)
golang.tokyo #6 (in Japanese)
 
ヤフー社内でやってるMySQLチューニングセミナー大公開
ヤフー社内でやってるMySQLチューニングセミナー大公開ヤフー社内でやってるMySQLチューニングセミナー大公開
ヤフー社内でやってるMySQLチューニングセミナー大公開
 
SageMakerを使った異常検知
SageMakerを使った異常検知SageMakerを使った異常検知
SageMakerを使った異常検知
 
実践!Elasticsearch + Sudachi を用いた全文検索エンジン
実践!Elasticsearch + Sudachi を用いた全文検索エンジン実践!Elasticsearch + Sudachi を用いた全文検索エンジン
実践!Elasticsearch + Sudachi を用いた全文検索エンジン
 
概念モデリング再入門 + DDD
概念モデリング再入門 + DDD概念モデリング再入門 + DDD
概念モデリング再入門 + DDD
 
雑なMySQLパフォーマンスチューニング
雑なMySQLパフォーマンスチューニング雑なMySQLパフォーマンスチューニング
雑なMySQLパフォーマンスチューニング
 
Rails上でのpub/sub イベントハンドラの扱い
Rails上でのpub/sub イベントハンドラの扱いRails上でのpub/sub イベントハンドラの扱い
Rails上でのpub/sub イベントハンドラの扱い
 
マスターデータの キャッシュシステムの改善の話
マスターデータの キャッシュシステムの改善の話マスターデータの キャッシュシステムの改善の話
マスターデータの キャッシュシステムの改善の話
 
勉強か?趣味か?人生か?―プログラミングコンテストとは
勉強か?趣味か?人生か?―プログラミングコンテストとは勉強か?趣味か?人生か?―プログラミングコンテストとは
勉強か?趣味か?人生か?―プログラミングコンテストとは
 
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」SQLアンチパターン 幻の第26章「とりあえず削除フラグ」
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」
 
2023-03-23_Spiral.AI
2023-03-23_Spiral.AI2023-03-23_Spiral.AI
2023-03-23_Spiral.AI
 
ビットバンクにおける少人数で支えるインフラチームの戦略
ビットバンクにおける少人数で支えるインフラチームの戦略ビットバンクにおける少人数で支えるインフラチームの戦略
ビットバンクにおける少人数で支えるインフラチームの戦略
 
例外設計における大罪
例外設計における大罪例外設計における大罪
例外設計における大罪
 
低レイヤー入門
低レイヤー入門低レイヤー入門
低レイヤー入門
 
オブジェクト指向プログラミングの現在・過去・未来
オブジェクト指向プログラミングの現在・過去・未来オブジェクト指向プログラミングの現在・過去・未来
オブジェクト指向プログラミングの現在・過去・未来
 
SIGMOD 2019 参加報告
SIGMOD 2019 参加報告SIGMOD 2019 参加報告
SIGMOD 2019 参加報告
 
最近のKaggleに学ぶテーブルデータの特徴量エンジニアリング
最近のKaggleに学ぶテーブルデータの特徴量エンジニアリング最近のKaggleに学ぶテーブルデータの特徴量エンジニアリング
最近のKaggleに学ぶテーブルデータの特徴量エンジニアリング
 

Destaque

Assist software awesome scala
Assist software   awesome scalaAssist software   awesome scala
Assist software awesome scalaAssistSoftware
 
DockerとKubernetesが作る未来
DockerとKubernetesが作る未来DockerとKubernetesが作る未来
DockerとKubernetesが作る未来Kazuto Kusama
 
KamonとDatadogによるリアクティブアプリケーションの監視の事例
KamonとDatadogによるリアクティブアプリケーションの監視の事例KamonとDatadogによるリアクティブアプリケーションの監視の事例
KamonとDatadogによるリアクティブアプリケーションの監視の事例Ikuo Matsumura
 
Kubernetesを触ってみた
Kubernetesを触ってみたKubernetesを触ってみた
Kubernetesを触ってみたKazuto Kusama
 
Akka-chan's Survival Guide for the Streaming World
Akka-chan's Survival Guide for the Streaming WorldAkka-chan's Survival Guide for the Streaming World
Akka-chan's Survival Guide for the Streaming WorldKonrad Malawski
 
Kubernetesにまつわるエトセトラ(主に苦労話)
Kubernetesにまつわるエトセトラ(主に苦労話)Kubernetesにまつわるエトセトラ(主に苦労話)
Kubernetesにまつわるエトセトラ(主に苦労話)Works Applications
 

Destaque (6)

Assist software awesome scala
Assist software   awesome scalaAssist software   awesome scala
Assist software awesome scala
 
DockerとKubernetesが作る未来
DockerとKubernetesが作る未来DockerとKubernetesが作る未来
DockerとKubernetesが作る未来
 
KamonとDatadogによるリアクティブアプリケーションの監視の事例
KamonとDatadogによるリアクティブアプリケーションの監視の事例KamonとDatadogによるリアクティブアプリケーションの監視の事例
KamonとDatadogによるリアクティブアプリケーションの監視の事例
 
Kubernetesを触ってみた
Kubernetesを触ってみたKubernetesを触ってみた
Kubernetesを触ってみた
 
Akka-chan's Survival Guide for the Streaming World
Akka-chan's Survival Guide for the Streaming WorldAkka-chan's Survival Guide for the Streaming World
Akka-chan's Survival Guide for the Streaming World
 
Kubernetesにまつわるエトセトラ(主に苦労話)
Kubernetesにまつわるエトセトラ(主に苦労話)Kubernetesにまつわるエトセトラ(主に苦労話)
Kubernetesにまつわるエトセトラ(主に苦労話)
 

Semelhante a Kamonを理解する

Cython ことはじめ
Cython ことはじめCython ことはじめ
Cython ことはじめgion_XY
 
JAZUG クラウドデザインパターンのコードを覗く
JAZUG クラウドデザインパターンのコードを覗くJAZUG クラウドデザインパターンのコードを覗く
JAZUG クラウドデザインパターンのコードを覗くTakekazu Omi
 
アプリケーション開発と分析のための Log Analytics
アプリケーション開発と分析のための Log Analytics アプリケーション開発と分析のための Log Analytics
アプリケーション開発と分析のための Log Analytics kekekekenta
 
DeClang 誕生!Clang ベースのハッキング対策コンパイラ【DeNA TechCon 2020 ライブ配信】
DeClang 誕生!Clang ベースのハッキング対策コンパイラ【DeNA TechCon 2020 ライブ配信】DeClang 誕生!Clang ベースのハッキング対策コンパイラ【DeNA TechCon 2020 ライブ配信】
DeClang 誕生!Clang ベースのハッキング対策コンパイラ【DeNA TechCon 2020 ライブ配信】DeNA
 
kompass_GreacとLLM_20230728.pdf
kompass_GreacとLLM_20230728.pdfkompass_GreacとLLM_20230728.pdf
kompass_GreacとLLM_20230728.pdfManamiMaeda
 
Chrome DevTools.next
Chrome DevTools.nextChrome DevTools.next
Chrome DevTools.nextyoshikawa_t
 
IoT時代におけるストリームデータ処理と急成長の Apache Flink
IoT時代におけるストリームデータ処理と急成長の Apache FlinkIoT時代におけるストリームデータ処理と急成長の Apache Flink
IoT時代におけるストリームデータ処理と急成長の Apache FlinkTakanori Suzuki
 
Modern stream processing by Spark Structured Streaming
Modern stream processing by Spark Structured StreamingModern stream processing by Spark Structured Streaming
Modern stream processing by Spark Structured StreamingSotaro Kimura
 
AWS Blackbelt 2015シリーズ Amazon CloudWatch & Amazon CloudWatch Logs
AWS Blackbelt 2015シリーズ Amazon CloudWatch & Amazon CloudWatch LogsAWS Blackbelt 2015シリーズ Amazon CloudWatch & Amazon CloudWatch Logs
AWS Blackbelt 2015シリーズ Amazon CloudWatch & Amazon CloudWatch LogsAmazon Web Services Japan
 
Pythonを使った簡易診断スクリプトの作り方
Pythonを使った簡易診断スクリプトの作り方Pythonを使った簡易診断スクリプトの作り方
Pythonを使った簡易診断スクリプトの作り方Yuichi Hattori
 
ServerlessConf Tokyo2018 サーバーレスなシステムのがんばらない運用監視
ServerlessConf Tokyo2018 サーバーレスなシステムのがんばらない運用監視ServerlessConf Tokyo2018 サーバーレスなシステムのがんばらない運用監視
ServerlessConf Tokyo2018 サーバーレスなシステムのがんばらない運用監視Takanori Suzuki
 
作られては消えていく泡のように儚いクラスタの運用話
作られては消えていく泡のように儚いクラスタの運用話作られては消えていく泡のように儚いクラスタの運用話
作られては消えていく泡のように儚いクラスタの運用話Tsuyoshi Torii
 
企業におけるSpring@日本springユーザー会20090624
企業におけるSpring@日本springユーザー会20090624企業におけるSpring@日本springユーザー会20090624
企業におけるSpring@日本springユーザー会20090624Yusuke Suzuki
 
Rancher と GitLab を使う3つの理由
Rancher と GitLab を使う3つの理由Rancher と GitLab を使う3つの理由
Rancher と GitLab を使う3つの理由Tetsurou Yano
 
System Center Operations Managerによる仮想環境の高度な管理
System Center Operations Managerによる仮想環境の高度な管理System Center Operations Managerによる仮想環境の高度な管理
System Center Operations Managerによる仮想環境の高度な管理junichi anno
 
第11回 配信講義 計算科学技術特論B(2022)
第11回 配信講義 計算科学技術特論B(2022)第11回 配信講義 計算科学技術特論B(2022)
第11回 配信講義 計算科学技術特論B(2022)RCCSRENKEI
 
RTミドルウエア講習会2015
RTミドルウエア講習会2015RTミドルウエア講習会2015
RTミドルウエア講習会2015Yuki Suga
 
アドテク×Scala×パフォーマンスチューニング
アドテク×Scala×パフォーマンスチューニングアドテク×Scala×パフォーマンスチューニング
アドテク×Scala×パフォーマンスチューニングYosuke Mizutani
 

Semelhante a Kamonを理解する (20)

Cython ことはじめ
Cython ことはじめCython ことはじめ
Cython ことはじめ
 
JAZUG クラウドデザインパターンのコードを覗く
JAZUG クラウドデザインパターンのコードを覗くJAZUG クラウドデザインパターンのコードを覗く
JAZUG クラウドデザインパターンのコードを覗く
 
アプリケーション開発と分析のための Log Analytics
アプリケーション開発と分析のための Log Analytics アプリケーション開発と分析のための Log Analytics
アプリケーション開発と分析のための Log Analytics
 
Haikara
HaikaraHaikara
Haikara
 
DeClang 誕生!Clang ベースのハッキング対策コンパイラ【DeNA TechCon 2020 ライブ配信】
DeClang 誕生!Clang ベースのハッキング対策コンパイラ【DeNA TechCon 2020 ライブ配信】DeClang 誕生!Clang ベースのハッキング対策コンパイラ【DeNA TechCon 2020 ライブ配信】
DeClang 誕生!Clang ベースのハッキング対策コンパイラ【DeNA TechCon 2020 ライブ配信】
 
ji-2. 計算
ji-2. 計算ji-2. 計算
ji-2. 計算
 
kompass_GreacとLLM_20230728.pdf
kompass_GreacとLLM_20230728.pdfkompass_GreacとLLM_20230728.pdf
kompass_GreacとLLM_20230728.pdf
 
Chrome DevTools.next
Chrome DevTools.nextChrome DevTools.next
Chrome DevTools.next
 
IoT時代におけるストリームデータ処理と急成長の Apache Flink
IoT時代におけるストリームデータ処理と急成長の Apache FlinkIoT時代におけるストリームデータ処理と急成長の Apache Flink
IoT時代におけるストリームデータ処理と急成長の Apache Flink
 
Modern stream processing by Spark Structured Streaming
Modern stream processing by Spark Structured StreamingModern stream processing by Spark Structured Streaming
Modern stream processing by Spark Structured Streaming
 
AWS Blackbelt 2015シリーズ Amazon CloudWatch & Amazon CloudWatch Logs
AWS Blackbelt 2015シリーズ Amazon CloudWatch & Amazon CloudWatch LogsAWS Blackbelt 2015シリーズ Amazon CloudWatch & Amazon CloudWatch Logs
AWS Blackbelt 2015シリーズ Amazon CloudWatch & Amazon CloudWatch Logs
 
Pythonを使った簡易診断スクリプトの作り方
Pythonを使った簡易診断スクリプトの作り方Pythonを使った簡易診断スクリプトの作り方
Pythonを使った簡易診断スクリプトの作り方
 
ServerlessConf Tokyo2018 サーバーレスなシステムのがんばらない運用監視
ServerlessConf Tokyo2018 サーバーレスなシステムのがんばらない運用監視ServerlessConf Tokyo2018 サーバーレスなシステムのがんばらない運用監視
ServerlessConf Tokyo2018 サーバーレスなシステムのがんばらない運用監視
 
作られては消えていく泡のように儚いクラスタの運用話
作られては消えていく泡のように儚いクラスタの運用話作られては消えていく泡のように儚いクラスタの運用話
作られては消えていく泡のように儚いクラスタの運用話
 
企業におけるSpring@日本springユーザー会20090624
企業におけるSpring@日本springユーザー会20090624企業におけるSpring@日本springユーザー会20090624
企業におけるSpring@日本springユーザー会20090624
 
Rancher と GitLab を使う3つの理由
Rancher と GitLab を使う3つの理由Rancher と GitLab を使う3つの理由
Rancher と GitLab を使う3つの理由
 
System Center Operations Managerによる仮想環境の高度な管理
System Center Operations Managerによる仮想環境の高度な管理System Center Operations Managerによる仮想環境の高度な管理
System Center Operations Managerによる仮想環境の高度な管理
 
第11回 配信講義 計算科学技術特論B(2022)
第11回 配信講義 計算科学技術特論B(2022)第11回 配信講義 計算科学技術特論B(2022)
第11回 配信講義 計算科学技術特論B(2022)
 
RTミドルウエア講習会2015
RTミドルウエア講習会2015RTミドルウエア講習会2015
RTミドルウエア講習会2015
 
アドテク×Scala×パフォーマンスチューニング
アドテク×Scala×パフォーマンスチューニングアドテク×Scala×パフォーマンスチューニング
アドテク×Scala×パフォーマンスチューニング
 

Mais de Shuya Tsukamoto

Apache hadoop yarn 勉強会 8. capacity scheduler in yarn
Apache hadoop yarn 勉強会 8. capacity scheduler in yarnApache hadoop yarn 勉強会 8. capacity scheduler in yarn
Apache hadoop yarn 勉強会 8. capacity scheduler in yarnShuya Tsukamoto
 
AdTech Scala Meetup 7 spray-can
AdTech Scala Meetup 7 spray-canAdTech Scala Meetup 7 spray-can
AdTech Scala Meetup 7 spray-canShuya Tsukamoto
 
Scala勉強会 2015 02_03
Scala勉強会 2015 02_03Scala勉強会 2015 02_03
Scala勉強会 2015 02_03Shuya Tsukamoto
 
とりあえず使うScalaz
とりあえず使うScalazとりあえず使うScalaz
とりあえず使うScalazShuya Tsukamoto
 
Scala勉強会_2014_11_18
Scala勉強会_2014_11_18Scala勉強会_2014_11_18
Scala勉強会_2014_11_18Shuya Tsukamoto
 

Mais de Shuya Tsukamoto (6)

Apache hadoop yarn 勉強会 8. capacity scheduler in yarn
Apache hadoop yarn 勉強会 8. capacity scheduler in yarnApache hadoop yarn 勉強会 8. capacity scheduler in yarn
Apache hadoop yarn 勉強会 8. capacity scheduler in yarn
 
AdTech Scala Meetup 7 spray-can
AdTech Scala Meetup 7 spray-canAdTech Scala Meetup 7 spray-can
AdTech Scala Meetup 7 spray-can
 
bean-validation-scala
bean-validation-scalabean-validation-scala
bean-validation-scala
 
Scala勉強会 2015 02_03
Scala勉強会 2015 02_03Scala勉強会 2015 02_03
Scala勉強会 2015 02_03
 
とりあえず使うScalaz
とりあえず使うScalazとりあえず使うScalaz
とりあえず使うScalaz
 
Scala勉強会_2014_11_18
Scala勉強会_2014_11_18Scala勉強会_2014_11_18
Scala勉強会_2014_11_18
 

Último

LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイスCRI Japan, Inc.
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルCRI Japan, Inc.
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...Toru Tamaki
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video UnderstandingToru Tamaki
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。iPride Co., Ltd.
 
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptxsn679259
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。iPride Co., Ltd.
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Gamesatsushi061452
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。iPride Co., Ltd.
 
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsUtilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsWSO2
 

Último (10)

LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsUtilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
 

Kamonを理解する