SlideShare a Scribd company logo
1 of 56
Download to read offline
Cloud Next 2018
MicroServices & APIs
自己紹介
twitter
pospome
読み方
ポスポメ
職種
サーバサイドエンジニア
興味
クラス設計全般, DDD
  いわゆるアプリケーションアーキテクチャ
ここら辺の技術に興味ある方は
  フォローしてくださると嬉しいです
今回は
実際に開発で役立ちそうな内容を中心に紹介
GCP成分は比較的少ない
今回は以下の2つのセッションを取り上げる
Microservices - Born and Raised (and Growing) on Gooble Cloud
Designing Quality APIs
Microservices - Born and Raised (and
Growing) on Gooble Cloud
概要
Pizza Hut のマイクロサービス事例
Core Architecture
・Go
・Kubernetes
・GCP
Pizza Hut が考えるマイクロサービスの原則
・サービス間の依存が少ない
・CI/CDを利用した自動デプロイ
・サービスディスカバリを利用したサービス間通信
Pizza Hut が考えるマイクロサービスの原則
・サービス間の依存が少ない
・CI/CDを利用した自動デプロイ
・サービスディスカバリを利用したサービス間通信
↑
マイクロサービスの目的を達成するために必須な原則
Pizza Hut が考えるマイクロサービスの原則
・サービス間の依存が少ない
・CI/CDを利用した自動デプロイ
・サービスディスカバリを利用したサービス間通信
↑
マイクロサービスのサービス境界がとても大事
Pizza Hut が考えるサービス境界の原則
・可能な限り小さい、意味を持つ業務機能を提供する
・データと業務機能をカプセル化し、提供する
サービスがそれ単体で業務上の意味を持つ
最小のサービスにすべき
通信
・REST
  多くの利用者をサポートすることができる
  OpenAPI による通信規約が存在する
・gPRC
  利用者によってはサポートが難しい
  仕様して規約が存在する
  
Pizza Hut では使い分けている
REST … 外部通信
gRPC … 内部通信(サービス間通信)
API管理の課題
・API Key, JWT などのセキュリティ
・使い方とパフォーマンスの可視化
・OpenAPI への統合
Cloud Endpoints
・柔軟なセキュリティオプション
・CloudConsole 内のリッチなダッシュボード
・OpenAPI仕様に沿ってエンドポイントを提供できる
ESP によって REST API へのリクエストを
Rest Server Container にプロキシする。
Rest Server Container はリクエストを
gRPC に変換する。
外部提供する gRPC のエンドポイントを
Rest Server Container 経由で
RestAPI として外部に提供できる
gRPC ↔ REST の変換は CloudEndpoints や gRPC-
Gateway を利用せずに手作業でやっている。
ボイラーテンプレート気味なので改善していく予定。
UseCase: Store Location Service
・Cloud Datastore を採用
・速い
・スケールする
・マルチリージョンによる高い可用性
Datastore に既存データをインポートする必要がある
インポートジョブを実行するコンテナを立てて対応
Kubernetes にも高い可用性をもたせたい
・Cloud Load Balancing(Ingress)
・マルチリージョンによる高い可用性
・地理的に近いクラスターの提供
・動かないサービスを自動的に除外
既存の GEK の Service = LoadBalancer は
そのまま残している
トラフィックが残っている & テストで利用するため
Stackdriver が便利
・分散システムでもリクエストトレーシングが可能
・あらゆるメトリクスが取れる
・どこで何が起こっているのかを把握できる
Designing Quality APIs
概要
API設計の Tips
APIが直面する問題
・変更の難しさ
 既存のレガシーなソフトウェアは複雑である
 変更は困難である
・統合の難しさ
 それぞれのAPIが独自の仕様を持つ
 それらを統合して特定の目的を達成するのは難しい
解決方法
・アプリケーションをまたがって統一されたAPI
・統一されたモデルの関係性
・free of implementation assumptions
 実装仮定からの開放(?)
 
これらを実現できれば
問題を解決することができる
どのように実現する?
APIのスタイル
・Entity Oriented
 いわゆるリソース指向な REST API
 APIはエンティティを持ち、
 それに対する CRUD 操作を提供する
・DBのスキーマを学ぶのに似ている
・扱うEntityは違えど、APIに統一感がある
APIのスタイル
・Procedure Oriented
 いわゆる RPC
 APIは特定の操作を提供し、
 クライアントはその操作を呼び出す
・プログラミングのライブラリを学ぶのに似ている
・REST ほどAPIに統一感がある保証はない
解決方法
・アプリケーションをまたがって統一されたAPI
・統一されたモデルの関係性
・free of implementation assumptions
 実装仮定からの開放(?)
↑
Entity Oriented な API が適している
 
Entity Oriented な API の問題
HTTP がベースなので、
HTTP Method による直感的な操作が可能である。
一方で “クエリ”, “バージョン” に関しては定義されてい
ない。
クエリにおける失敗例と解決案
例1
リソースの id = 12345 ということはわかるが、
どのように取得するのかは分からない。
解決案
リソースの id にパスを含めることによって、
“どのように取得するのか?” を伝えることができる
例2
ownerID は id = 12345 のリソースに対する親リソース
である。
しかし、どのように owner リソースを取得するのかが分
からない
解決案
ownerID ではなく、owner リソースに対する URL を指
定することによって解決できる。
懸念
id のみ保存する場合はパスやURLをパースして取
得することになるのかな?
バージョン
バージョンの種類
1. Entity Versioning
  エンティティのデータ構造が変わる
  新エンティティ、旧エンティティが存在する
2. Format Versioning
  フィールド名のリネーム
  レスポンス構造の変更
  エンティティ自体は1種類しかない
3. Historical Versioning
  Entity Version, FormatVersion を統合したバージョン
  特定バージョンへの undo, redo に利用することができる
  *解釈が間違っているかもしれません
Format Version における失敗例と解決案
例
id, owner のパスにバージョンを含めてしまう。
例
レスポンスを受け取るクライアントが v1 を利用すると
は限らない。
owner のみ v2 を利用したいかもしれない。
例
owner には v2 が存在するが、
id のリソースには v2 が存在しないかもしれない。
解決案????
かといって、バージョンを取り除いてしまうと情報が失
われてしまう。
解決案
レスポンスリソースのバージョンのみ含める。
HTTP Header に含めた方が良いが、
プロパティに含めても問題はない。
解決案
・version-free な URI を用意する。
・HTTP Header に “Accept-Version” を指定可能にす
る。
・オプションとして URL 内に version を含められるよ
うにする。
gPRC vs REST
・gRPC
 スループットが高い
 コードを自動生成できるので楽
 結合度の高いコンポーネント同士で利用する
・REST
 将来的な変更に適用しやすい
 システム統合に強い
 顧客に提供するのであれば REST にすべき
おわり

More Related Content

What's hot

Google Container Engine と Kubernetes で 無理をしないコンテナ管理
Google Container Engine と Kubernetes で 無理をしないコンテナ管理Google Container Engine と Kubernetes で 無理をしないコンテナ管理
Google Container Engine と Kubernetes で 無理をしないコンテナ管理Ryosuke Suto
 
Siderご紹介スライド@第2回 GitHub Enterprise ユーザ会
Siderご紹介スライド@第2回 GitHub Enterprise ユーザ会Siderご紹介スライド@第2回 GitHub Enterprise ユーザ会
Siderご紹介スライド@第2回 GitHub Enterprise ユーザ会Koichiro Sumi
 
Azure Cosmos DB Emulator on Docker を GitHub Codespaces で動かす!
Azure Cosmos DB Emulator on Docker を GitHub Codespaces で動かす!Azure Cosmos DB Emulator on Docker を GitHub Codespaces で動かす!
Azure Cosmos DB Emulator on Docker を GitHub Codespaces で動かす!Kazumi IWANAGA
 
[Cloud OnAir] Google Cloud Next '18 in London 最新情報 2018年10月18日 放送
[Cloud OnAir] Google Cloud Next '18 in London 最新情報 2018年10月18日 放送[Cloud OnAir] Google Cloud Next '18 in London 最新情報 2018年10月18日 放送
[Cloud OnAir] Google Cloud Next '18 in London 最新情報 2018年10月18日 放送Google Cloud Platform - Japan
 
6 月 18 日 Next - 基調講演 (Tom Kershaw パート)
6 月 18 日 Next - 基調講演 (Tom Kershaw パート)6 月 18 日 Next - 基調講演 (Tom Kershaw パート)
6 月 18 日 Next - 基調講演 (Tom Kershaw パート)Google Cloud Platform - Japan
 
Firebaseを使ってアプリを作ってみた
Firebaseを使ってアプリを作ってみたFirebaseを使ってアプリを作ってみた
Firebaseを使ってアプリを作ってみたGunma University
 
Google for モバイル アプリ 15-00- maps apiで、かしこく地図アプリを開発しよう
Google for モバイル アプリ   15-00- maps apiで、かしこく地図アプリを開発しようGoogle for モバイル アプリ   15-00- maps apiで、かしこく地図アプリを開発しよう
Google for モバイル アプリ 15-00- maps apiで、かしこく地図アプリを開発しようGoogle Cloud Platform - Japan
 
BigQueryを活用したPrivate DMPを作って使ってるお話
BigQueryを活用したPrivate DMPを作って使ってるお話BigQueryを活用したPrivate DMPを作って使ってるお話
BigQueryを活用したPrivate DMPを作って使ってるお話Masato Kawada
 
[Cloud OnAir] Next ’19 サンフランシスコ最新情報 GCP 特集 2019年4月11日 放送
[Cloud OnAir] Next ’19 サンフランシスコ最新情報 GCP 特集 2019年4月11日 放送[Cloud OnAir] Next ’19 サンフランシスコ最新情報 GCP 特集 2019年4月11日 放送
[Cloud OnAir] Next ’19 サンフランシスコ最新情報 GCP 特集 2019年4月11日 放送Google Cloud Platform - Japan
 
今だからデザインできるMTの未来
今だからデザインできるMTの未来今だからデザインできるMTの未来
今だからデザインできるMTの未来Yasuhisa Hasegawa
 
Vision AI on Azure IoT Edge
Vision AI on Azure IoT EdgeVision AI on Azure IoT Edge
Vision AI on Azure IoT EdgeJingun Jung
 
Google for Mobile: Google スケールで構築する! ゲームインフラと分析環境 - 橋口 剛
Google for Mobile:  Google スケールで構築する! ゲームインフラと分析環境 - 橋口 剛Google for Mobile:  Google スケールで構築する! ゲームインフラと分析環境 - 橋口 剛
Google for Mobile: Google スケールで構築する! ゲームインフラと分析環境 - 橋口 剛Google Cloud Platform - Japan
 
Ml.NET
Ml.NETMl.NET
Ml.NETru pic
 
コンテンツとCMSの上手な付き合い方
コンテンツとCMSの上手な付き合い方コンテンツとCMSの上手な付き合い方
コンテンツとCMSの上手な付き合い方Yasuhisa Hasegawa
 
Google for モバイル アプリ - コンテナ技術と Google Compute Engine で実現するクラウド時代のアプリ実行環境
Google for モバイル アプリ - コンテナ技術と Google Compute Engine で実現するクラウド時代のアプリ実行環境Google for モバイル アプリ - コンテナ技術と Google Compute Engine で実現するクラウド時代のアプリ実行環境
Google for モバイル アプリ - コンテナ技術と Google Compute Engine で実現するクラウド時代のアプリ実行環境Google Cloud Platform - Japan
 
Firebaseを利用するためにGCPとCloud IAMの 基本を理解しよう
Firebaseを利用するためにGCPとCloud IAMの 基本を理解しようFirebaseを利用するためにGCPとCloud IAMの 基本を理解しよう
Firebaseを利用するためにGCPとCloud IAMの 基本を理解しようkbigwheel
 
MagicOnion入門
MagicOnion入門MagicOnion入門
MagicOnion入門torisoup
 
札幌Ibmクラウド勉強会 blockchain
札幌Ibmクラウド勉強会 blockchain札幌Ibmクラウド勉強会 blockchain
札幌Ibmクラウド勉強会 blockchainsoftlayerjp
 
[Cloud OnAir] Apigee でかんたん API 管理 2019年12月12日 放送
[Cloud OnAir] Apigee でかんたん API 管理 2019年12月12日 放送[Cloud OnAir] Apigee でかんたん API 管理 2019年12月12日 放送
[Cloud OnAir] Apigee でかんたん API 管理 2019年12月12日 放送Google Cloud Platform - Japan
 

What's hot (19)

Google Container Engine と Kubernetes で 無理をしないコンテナ管理
Google Container Engine と Kubernetes で 無理をしないコンテナ管理Google Container Engine と Kubernetes で 無理をしないコンテナ管理
Google Container Engine と Kubernetes で 無理をしないコンテナ管理
 
Siderご紹介スライド@第2回 GitHub Enterprise ユーザ会
Siderご紹介スライド@第2回 GitHub Enterprise ユーザ会Siderご紹介スライド@第2回 GitHub Enterprise ユーザ会
Siderご紹介スライド@第2回 GitHub Enterprise ユーザ会
 
Azure Cosmos DB Emulator on Docker を GitHub Codespaces で動かす!
Azure Cosmos DB Emulator on Docker を GitHub Codespaces で動かす!Azure Cosmos DB Emulator on Docker を GitHub Codespaces で動かす!
Azure Cosmos DB Emulator on Docker を GitHub Codespaces で動かす!
 
[Cloud OnAir] Google Cloud Next '18 in London 最新情報 2018年10月18日 放送
[Cloud OnAir] Google Cloud Next '18 in London 最新情報 2018年10月18日 放送[Cloud OnAir] Google Cloud Next '18 in London 最新情報 2018年10月18日 放送
[Cloud OnAir] Google Cloud Next '18 in London 最新情報 2018年10月18日 放送
 
6 月 18 日 Next - 基調講演 (Tom Kershaw パート)
6 月 18 日 Next - 基調講演 (Tom Kershaw パート)6 月 18 日 Next - 基調講演 (Tom Kershaw パート)
6 月 18 日 Next - 基調講演 (Tom Kershaw パート)
 
Firebaseを使ってアプリを作ってみた
Firebaseを使ってアプリを作ってみたFirebaseを使ってアプリを作ってみた
Firebaseを使ってアプリを作ってみた
 
Google for モバイル アプリ 15-00- maps apiで、かしこく地図アプリを開発しよう
Google for モバイル アプリ   15-00- maps apiで、かしこく地図アプリを開発しようGoogle for モバイル アプリ   15-00- maps apiで、かしこく地図アプリを開発しよう
Google for モバイル アプリ 15-00- maps apiで、かしこく地図アプリを開発しよう
 
BigQueryを活用したPrivate DMPを作って使ってるお話
BigQueryを活用したPrivate DMPを作って使ってるお話BigQueryを活用したPrivate DMPを作って使ってるお話
BigQueryを活用したPrivate DMPを作って使ってるお話
 
[Cloud OnAir] Next ’19 サンフランシスコ最新情報 GCP 特集 2019年4月11日 放送
[Cloud OnAir] Next ’19 サンフランシスコ最新情報 GCP 特集 2019年4月11日 放送[Cloud OnAir] Next ’19 サンフランシスコ最新情報 GCP 特集 2019年4月11日 放送
[Cloud OnAir] Next ’19 サンフランシスコ最新情報 GCP 特集 2019年4月11日 放送
 
今だからデザインできるMTの未来
今だからデザインできるMTの未来今だからデザインできるMTの未来
今だからデザインできるMTの未来
 
Vision AI on Azure IoT Edge
Vision AI on Azure IoT EdgeVision AI on Azure IoT Edge
Vision AI on Azure IoT Edge
 
Google for Mobile: Google スケールで構築する! ゲームインフラと分析環境 - 橋口 剛
Google for Mobile:  Google スケールで構築する! ゲームインフラと分析環境 - 橋口 剛Google for Mobile:  Google スケールで構築する! ゲームインフラと分析環境 - 橋口 剛
Google for Mobile: Google スケールで構築する! ゲームインフラと分析環境 - 橋口 剛
 
Ml.NET
Ml.NETMl.NET
Ml.NET
 
コンテンツとCMSの上手な付き合い方
コンテンツとCMSの上手な付き合い方コンテンツとCMSの上手な付き合い方
コンテンツとCMSの上手な付き合い方
 
Google for モバイル アプリ - コンテナ技術と Google Compute Engine で実現するクラウド時代のアプリ実行環境
Google for モバイル アプリ - コンテナ技術と Google Compute Engine で実現するクラウド時代のアプリ実行環境Google for モバイル アプリ - コンテナ技術と Google Compute Engine で実現するクラウド時代のアプリ実行環境
Google for モバイル アプリ - コンテナ技術と Google Compute Engine で実現するクラウド時代のアプリ実行環境
 
Firebaseを利用するためにGCPとCloud IAMの 基本を理解しよう
Firebaseを利用するためにGCPとCloud IAMの 基本を理解しようFirebaseを利用するためにGCPとCloud IAMの 基本を理解しよう
Firebaseを利用するためにGCPとCloud IAMの 基本を理解しよう
 
MagicOnion入門
MagicOnion入門MagicOnion入門
MagicOnion入門
 
札幌Ibmクラウド勉強会 blockchain
札幌Ibmクラウド勉強会 blockchain札幌Ibmクラウド勉強会 blockchain
札幌Ibmクラウド勉強会 blockchain
 
[Cloud OnAir] Apigee でかんたん API 管理 2019年12月12日 放送
[Cloud OnAir] Apigee でかんたん API 管理 2019年12月12日 放送[Cloud OnAir] Apigee でかんたん API 管理 2019年12月12日 放送
[Cloud OnAir] Apigee でかんたん API 管理 2019年12月12日 放送
 

Similar to MicroServices & APIs

20141003 webマーケティングエンジニアリング
20141003 webマーケティングエンジニアリング20141003 webマーケティングエンジニアリング
20141003 webマーケティングエンジニアリングInnova Inc.
 
マイクロソフトの AI プラットフォーム & Cognitive Services 概要 ~ Ignite 2020 Recap
マイクロソフトの AI プラットフォーム & Cognitive Services 概要 ~ Ignite 2020 Recapマイクロソフトの AI プラットフォーム & Cognitive Services 概要 ~ Ignite 2020 Recap
マイクロソフトの AI プラットフォーム & Cognitive Services 概要 ~ Ignite 2020 RecapAyako Omori
 
[Cloud OnAir] エンタープライズでのマイグレーション 方法論やクラウド ジャーニー 2019年7月18日 放送
[Cloud OnAir] エンタープライズでのマイグレーション 方法論やクラウド ジャーニー 2019年7月18日 放送[Cloud OnAir] エンタープライズでのマイグレーション 方法論やクラウド ジャーニー 2019年7月18日 放送
[Cloud OnAir] エンタープライズでのマイグレーション 方法論やクラウド ジャーニー 2019年7月18日 放送Google Cloud Platform - Japan
 
AIビジネス推進人材育成プログラムのご紹介
AIビジネス推進人材育成プログラムのご紹介AIビジネス推進人材育成プログラムのご紹介
AIビジネス推進人材育成プログラムのご紹介munjapan
 
[Cloud OnAir] お客様事例紹介 -リクルートライフスタイルにおける デジタルトランスフォーメーションとクラウド活用- 2018年7月12日 放送
[Cloud OnAir] お客様事例紹介 -リクルートライフスタイルにおける デジタルトランスフォーメーションとクラウド活用- 2018年7月12日 放送[Cloud OnAir] お客様事例紹介 -リクルートライフスタイルにおける デジタルトランスフォーメーションとクラウド活用- 2018年7月12日 放送
[Cloud OnAir] お客様事例紹介 -リクルートライフスタイルにおける デジタルトランスフォーメーションとクラウド活用- 2018年7月12日 放送Google Cloud Platform - Japan
 
JSUG SpringOnePlatform 2016報告会 Case study2 - feed back - springoneplatform
JSUG SpringOnePlatform 2016報告会 Case study2 - feed back - springoneplatformJSUG SpringOnePlatform 2016報告会 Case study2 - feed back - springoneplatform
JSUG SpringOnePlatform 2016報告会 Case study2 - feed back - springoneplatformTakahiro Fujii
 
Open Hybrid Cloudを検討すべき理由.pdf
Open Hybrid Cloudを検討すべき理由.pdfOpen Hybrid Cloudを検討すべき理由.pdf
Open Hybrid Cloudを検討すべき理由.pdfMasahiko Umeno
 
JPC2018[A4]Reimagine your business ~Microsoft Cloud/AI でビジネスを再構築
JPC2018[A4]Reimagine your business ~Microsoft Cloud/AI でビジネスを再構築JPC2018[A4]Reimagine your business ~Microsoft Cloud/AI でビジネスを再構築
JPC2018[A4]Reimagine your business ~Microsoft Cloud/AI でビジネスを再構築MPN Japan
 
IBM cloud 冬の勉強会 google の視点も織り交ぜ理解するkubernetes , istio , grafeas とibm cloud pr...
IBM cloud 冬の勉強会 google の視点も織り交ぜ理解するkubernetes , istio , grafeas とibm cloud pr...IBM cloud 冬の勉強会 google の視点も織り交ぜ理解するkubernetes , istio , grafeas とibm cloud pr...
IBM cloud 冬の勉強会 google の視点も織り交ぜ理解するkubernetes , istio , grafeas とibm cloud pr...Tsuyoshi Hirayama
 
Microsoft Azure で実現するAIとIoT最新情報
Microsoft Azure で実現するAIとIoT最新情報Microsoft Azure で実現するAIとIoT最新情報
Microsoft Azure で実現するAIとIoT最新情報Yasuhiro Kobayashi
 
Microsoft MVP から見たクラウド サービスの現状と今後について
Microsoft MVP から見たクラウド サービスの現状と今後についてMicrosoft MVP から見たクラウド サービスの現状と今後について
Microsoft MVP から見たクラウド サービスの現状と今後についてIIJ
 
マイクロサービスのためのフレームワークGoaのご紹介
マイクロサービスのためのフレームワークGoaのご紹介マイクロサービスのためのフレームワークGoaのご紹介
マイクロサービスのためのフレームワークGoaのご紹介Kazuaki Shibue
 
Part 5: "製品の変革" を支える基盤サービス (製造リファレンス・アーキテクチャ勉強会)
Part 5: "製品の変革" を支える基盤サービス (製造リファレンス・アーキテクチャ勉強会)Part 5: "製品の変革" を支える基盤サービス (製造リファレンス・アーキテクチャ勉強会)
Part 5: "製品の変革" を支える基盤サービス (製造リファレンス・アーキテクチャ勉強会)Takeshi Fukuhara
 
[CTO Night & Day 2019] CTO のための一歩進んだコンテナ入門 #ctonight
[CTO Night & Day 2019] CTO のための一歩進んだコンテナ入門 #ctonight[CTO Night & Day 2019] CTO のための一歩進んだコンテナ入門 #ctonight
[CTO Night & Day 2019] CTO のための一歩進んだコンテナ入門 #ctonightAmazon Web Services Japan
 
Circle of Code with Cloud Foundry
Circle of Code with Cloud FoundryCircle of Code with Cloud Foundry
Circle of Code with Cloud FoundryTomohiro Ichimura
 
[Cloud OnAir] アプリケーションにフォーカス!ビジネスに直結する開発の極意をご紹介します。(LIVE) 2018年3月8日 放送
[Cloud OnAir] アプリケーションにフォーカス!ビジネスに直結する開発の極意をご紹介します。(LIVE) 2018年3月8日 放送[Cloud OnAir] アプリケーションにフォーカス!ビジネスに直結する開発の極意をご紹介します。(LIVE) 2018年3月8日 放送
[Cloud OnAir] アプリケーションにフォーカス!ビジネスに直結する開発の極意をご紹介します。(LIVE) 2018年3月8日 放送Google Cloud Platform - Japan
 
リクルートにおけるPaaS活用事例
リクルートにおけるPaaS活用事例リクルートにおけるPaaS活用事例
リクルートにおけるPaaS活用事例Recruit Technologies
 
IoTと業務システムをつなぐgRPC/RESTサービスの開発と運用
IoTと業務システムをつなぐgRPC/RESTサービスの開発と運用IoTと業務システムをつなぐgRPC/RESTサービスの開発と運用
IoTと業務システムをつなぐgRPC/RESTサービスの開発と運用DeNA
 
Google Cloud AI の紹介 @ GCPUG Nara #03
Google Cloud AI の紹介 @ GCPUG Nara #03Google Cloud AI の紹介 @ GCPUG Nara #03
Google Cloud AI の紹介 @ GCPUG Nara #03Yaboo Oyabu
 
It業界の優良企業の見つけ方 20140502 黒田
It業界の優良企業の見つけ方 20140502 黒田It業界の優良企業の見つけ方 20140502 黒田
It業界の優良企業の見つけ方 20140502 黒田Yusuke Kuroda
 

Similar to MicroServices & APIs (20)

20141003 webマーケティングエンジニアリング
20141003 webマーケティングエンジニアリング20141003 webマーケティングエンジニアリング
20141003 webマーケティングエンジニアリング
 
マイクロソフトの AI プラットフォーム & Cognitive Services 概要 ~ Ignite 2020 Recap
マイクロソフトの AI プラットフォーム & Cognitive Services 概要 ~ Ignite 2020 Recapマイクロソフトの AI プラットフォーム & Cognitive Services 概要 ~ Ignite 2020 Recap
マイクロソフトの AI プラットフォーム & Cognitive Services 概要 ~ Ignite 2020 Recap
 
[Cloud OnAir] エンタープライズでのマイグレーション 方法論やクラウド ジャーニー 2019年7月18日 放送
[Cloud OnAir] エンタープライズでのマイグレーション 方法論やクラウド ジャーニー 2019年7月18日 放送[Cloud OnAir] エンタープライズでのマイグレーション 方法論やクラウド ジャーニー 2019年7月18日 放送
[Cloud OnAir] エンタープライズでのマイグレーション 方法論やクラウド ジャーニー 2019年7月18日 放送
 
AIビジネス推進人材育成プログラムのご紹介
AIビジネス推進人材育成プログラムのご紹介AIビジネス推進人材育成プログラムのご紹介
AIビジネス推進人材育成プログラムのご紹介
 
[Cloud OnAir] お客様事例紹介 -リクルートライフスタイルにおける デジタルトランスフォーメーションとクラウド活用- 2018年7月12日 放送
[Cloud OnAir] お客様事例紹介 -リクルートライフスタイルにおける デジタルトランスフォーメーションとクラウド活用- 2018年7月12日 放送[Cloud OnAir] お客様事例紹介 -リクルートライフスタイルにおける デジタルトランスフォーメーションとクラウド活用- 2018年7月12日 放送
[Cloud OnAir] お客様事例紹介 -リクルートライフスタイルにおける デジタルトランスフォーメーションとクラウド活用- 2018年7月12日 放送
 
JSUG SpringOnePlatform 2016報告会 Case study2 - feed back - springoneplatform
JSUG SpringOnePlatform 2016報告会 Case study2 - feed back - springoneplatformJSUG SpringOnePlatform 2016報告会 Case study2 - feed back - springoneplatform
JSUG SpringOnePlatform 2016報告会 Case study2 - feed back - springoneplatform
 
Open Hybrid Cloudを検討すべき理由.pdf
Open Hybrid Cloudを検討すべき理由.pdfOpen Hybrid Cloudを検討すべき理由.pdf
Open Hybrid Cloudを検討すべき理由.pdf
 
JPC2018[A4]Reimagine your business ~Microsoft Cloud/AI でビジネスを再構築
JPC2018[A4]Reimagine your business ~Microsoft Cloud/AI でビジネスを再構築JPC2018[A4]Reimagine your business ~Microsoft Cloud/AI でビジネスを再構築
JPC2018[A4]Reimagine your business ~Microsoft Cloud/AI でビジネスを再構築
 
IBM cloud 冬の勉強会 google の視点も織り交ぜ理解するkubernetes , istio , grafeas とibm cloud pr...
IBM cloud 冬の勉強会 google の視点も織り交ぜ理解するkubernetes , istio , grafeas とibm cloud pr...IBM cloud 冬の勉強会 google の視点も織り交ぜ理解するkubernetes , istio , grafeas とibm cloud pr...
IBM cloud 冬の勉強会 google の視点も織り交ぜ理解するkubernetes , istio , grafeas とibm cloud pr...
 
Microsoft Azure で実現するAIとIoT最新情報
Microsoft Azure で実現するAIとIoT最新情報Microsoft Azure で実現するAIとIoT最新情報
Microsoft Azure で実現するAIとIoT最新情報
 
Microsoft MVP から見たクラウド サービスの現状と今後について
Microsoft MVP から見たクラウド サービスの現状と今後についてMicrosoft MVP から見たクラウド サービスの現状と今後について
Microsoft MVP から見たクラウド サービスの現状と今後について
 
マイクロサービスのためのフレームワークGoaのご紹介
マイクロサービスのためのフレームワークGoaのご紹介マイクロサービスのためのフレームワークGoaのご紹介
マイクロサービスのためのフレームワークGoaのご紹介
 
Part 5: "製品の変革" を支える基盤サービス (製造リファレンス・アーキテクチャ勉強会)
Part 5: "製品の変革" を支える基盤サービス (製造リファレンス・アーキテクチャ勉強会)Part 5: "製品の変革" を支える基盤サービス (製造リファレンス・アーキテクチャ勉強会)
Part 5: "製品の変革" を支える基盤サービス (製造リファレンス・アーキテクチャ勉強会)
 
[CTO Night & Day 2019] CTO のための一歩進んだコンテナ入門 #ctonight
[CTO Night & Day 2019] CTO のための一歩進んだコンテナ入門 #ctonight[CTO Night & Day 2019] CTO のための一歩進んだコンテナ入門 #ctonight
[CTO Night & Day 2019] CTO のための一歩進んだコンテナ入門 #ctonight
 
Circle of Code with Cloud Foundry
Circle of Code with Cloud FoundryCircle of Code with Cloud Foundry
Circle of Code with Cloud Foundry
 
[Cloud OnAir] アプリケーションにフォーカス!ビジネスに直結する開発の極意をご紹介します。(LIVE) 2018年3月8日 放送
[Cloud OnAir] アプリケーションにフォーカス!ビジネスに直結する開発の極意をご紹介します。(LIVE) 2018年3月8日 放送[Cloud OnAir] アプリケーションにフォーカス!ビジネスに直結する開発の極意をご紹介します。(LIVE) 2018年3月8日 放送
[Cloud OnAir] アプリケーションにフォーカス!ビジネスに直結する開発の極意をご紹介します。(LIVE) 2018年3月8日 放送
 
リクルートにおけるPaaS活用事例
リクルートにおけるPaaS活用事例リクルートにおけるPaaS活用事例
リクルートにおけるPaaS活用事例
 
IoTと業務システムをつなぐgRPC/RESTサービスの開発と運用
IoTと業務システムをつなぐgRPC/RESTサービスの開発と運用IoTと業務システムをつなぐgRPC/RESTサービスの開発と運用
IoTと業務システムをつなぐgRPC/RESTサービスの開発と運用
 
Google Cloud AI の紹介 @ GCPUG Nara #03
Google Cloud AI の紹介 @ GCPUG Nara #03Google Cloud AI の紹介 @ GCPUG Nara #03
Google Cloud AI の紹介 @ GCPUG Nara #03
 
It業界の優良企業の見つけ方 20140502 黒田
It業界の優良企業の見つけ方 20140502 黒田It業界の優良企業の見つけ方 20140502 黒田
It業界の優良企業の見つけ方 20140502 黒田
 

More from pospome

トランザクションスクリプトのすすめ
トランザクションスクリプトのすすめトランザクションスクリプトのすすめ
トランザクションスクリプトのすすめpospome
 
Goのサーバサイド実装におけるレイヤ設計とレイヤ内実装について考える
Goのサーバサイド実装におけるレイヤ設計とレイヤ内実装について考えるGoのサーバサイド実装におけるレイヤ設計とレイヤ内実装について考える
Goのサーバサイド実装におけるレイヤ設計とレイヤ内実装について考えるpospome
 
どこに何を書くのか?
どこに何を書くのか?どこに何を書くのか?
どこに何を書くのか?pospome
 
アプリケーションコードにおける技術的負債について考える
アプリケーションコードにおける技術的負債について考えるアプリケーションコードにおける技術的負債について考える
アプリケーションコードにおける技術的負債について考えるpospome
 
Datastore/Go のデータ設計と struct の振る舞いについて
Datastore/Go のデータ設計と struct の振る舞いについてDatastore/Go のデータ設計と struct の振る舞いについて
Datastore/Go のデータ設計と struct の振る舞いについてpospome
 
Goのシンプルさについて
GoのシンプルさについてGoのシンプルさについて
Goのシンプルさについてpospome
 
パッケージの循環参照
パッケージの循環参照パッケージの循環参照
パッケージの循環参照pospome
 
Controllerのbefore_actionにおける インスタンス変数セットについて
Controllerのbefore_actionにおける インスタンス変数セットについてControllerのbefore_actionにおける インスタンス変数セットについて
Controllerのbefore_actionにおける インスタンス変数セットについてpospome
 
REST API のコツ
REST API のコツREST API のコツ
REST API のコツpospome
 
サーバサイドNodeの使い道
サーバサイドNodeの使い道サーバサイドNodeの使い道
サーバサイドNodeの使い道pospome
 

More from pospome (10)

トランザクションスクリプトのすすめ
トランザクションスクリプトのすすめトランザクションスクリプトのすすめ
トランザクションスクリプトのすすめ
 
Goのサーバサイド実装におけるレイヤ設計とレイヤ内実装について考える
Goのサーバサイド実装におけるレイヤ設計とレイヤ内実装について考えるGoのサーバサイド実装におけるレイヤ設計とレイヤ内実装について考える
Goのサーバサイド実装におけるレイヤ設計とレイヤ内実装について考える
 
どこに何を書くのか?
どこに何を書くのか?どこに何を書くのか?
どこに何を書くのか?
 
アプリケーションコードにおける技術的負債について考える
アプリケーションコードにおける技術的負債について考えるアプリケーションコードにおける技術的負債について考える
アプリケーションコードにおける技術的負債について考える
 
Datastore/Go のデータ設計と struct の振る舞いについて
Datastore/Go のデータ設計と struct の振る舞いについてDatastore/Go のデータ設計と struct の振る舞いについて
Datastore/Go のデータ設計と struct の振る舞いについて
 
Goのシンプルさについて
GoのシンプルさについてGoのシンプルさについて
Goのシンプルさについて
 
パッケージの循環参照
パッケージの循環参照パッケージの循環参照
パッケージの循環参照
 
Controllerのbefore_actionにおける インスタンス変数セットについて
Controllerのbefore_actionにおける インスタンス変数セットについてControllerのbefore_actionにおける インスタンス変数セットについて
Controllerのbefore_actionにおける インスタンス変数セットについて
 
REST API のコツ
REST API のコツREST API のコツ
REST API のコツ
 
サーバサイドNodeの使い道
サーバサイドNodeの使い道サーバサイドNodeの使い道
サーバサイドNodeの使い道
 

MicroServices & APIs