SlideShare a Scribd company logo
1 of 41
Download to read offline
Scala が支える
医療系ウェブサービス
Kazuhiro Sera @seratch
2015/02/21 #jissenscala
アジェンダ
•サービス要件・チームの現状を紹介
•Web 開発における技術変遷
•Play Framework 導入事例
•実戦での OSS Octoparts 紹介
•Skinny Framework 導入事例
•その他の事例、実践内容
•所感、まとめ
自己紹介
•2009 年から現職、ソフトウェアエンジニア
•主に Java/Ruby/Scala でコードを書く仕事
•基盤開発チーム:全社共通サービス・ライブラ
リの開発・保守、AWS 管理等を担当
•ScalikeJDBC プロジェクトリード
•Skinny Framework プロジェクトリード
•Scalatra, json4s メンテナ(PR 待ってます)
何をやっている会社?
提供サービス(抜粋)
提供サービス(抜粋)
サービス要件の特徴
•m3.com は医療従事者向け会員制サービス
•AskDoctors など一般の方向けサービス
•サービスは小規模を含めると 50 以上
•システム障害に非常にシビアなサービス
•医療現場に近いシステムの場合、安定性が第一
•創業時 (2000 年) から続くサービス、DB
•既存のレポート向けデータ集計も考慮した設計
チームの特徴
•事業別で約 10 (変動) のチームに分かれる
•オンプレミスが中心、インフラチームは全チー
ムを横断で対応する体制
•新卒はほとんどいない(今年度は 1 名入社)
•内製比率を高く保つことにこだわっている
•Java が得意なエンジニアが多いが Java/Ruby/
Scala 全てこなすケースも増えている
外国人採用への取り組み
http://itpro.nikkeibp.co.jp/article/COLUMN/
20140411/550091/
正確には ”ネイティブレベルの
日本語能力を必須としない” という意図
Web 開発の歴史
•創業期: シンプルな Servlet、XML 中心な
Java フレームワーク、Zope の活用
•2000 年代中盤: SAStruts、Spring MVC、
Play1が主流、ほぼ Java のみ
•2010 年代: 既存 Java システムに JSON API
を提供させて段階的にフロントエンドを刷新、
Rails、Play2、Skinny など Java 以外の言語
での開発が活発に
アプリ開発技術の変遷
創業期 2008 - 2012 2013 - 2015
開発言語
Java
Python
Java
Java
Ruby
Scala
Web フレーム
ワーク
独自 MVC
Servlet / JSP
Zope
SAStruts
Spring MVC
Jersey (JAX-RS)
Play Framework 1
etc..
Ruby on Rails
Play Framework 2
Skinny Framework
Spring MVC
ORM
JDBC そのまま
独自 JDBC
S2JDBC
Doma
Spring JDBC
Hibernate
ActiveRecord
ScalikeJDBC
Skinny ORM
Doma
今週リニューアル
m3.com を支える技術
2015 年からの新しい m3.com は
多くの Scala OSS に支えられています
(Play、ScalikeJDBC、Skinny・・・)
新 m3.com 構成
JSON
JSON
JSON
JSON
JSON
Octoparts 等の詳細は後ほど紹介
トップページ等の
レンダリング
導入事例の紹介
Play Framework
https://playframework.com/
Play 導入状況
•2.0 リリース時 (2012 年) から一部で導入、
当時から稼働し続けるシステムもある
•2014 年∼ Scala がメインの開発チームのリー
ドにより Play の導入が増えた
•現在、ロンチ前のものも含め 6 件の実績
•必要に応じて Scala/Play にキャッチアップす
るエンジニアが増加中
Play 事例(一部)
既存 Java システム
のリニューアル 2 件
長年運用していた Servlet、JSP ベースのシステムを
REST API に置き換え。データモデル class の共有、
Swagger 連携、ScalikeJDBC (複雑なクエリ対応、
commons-dbcp2)、Elasticseach (elastic4s)、Sentry
(raven-logback)、metrics-play、scaldi-play。
Octoparts (OSS)
https://github.com/
m3dev/octoparts
複数のバックエンド API コールを並列実行してまとめ
て返すミドルウェア。Netflix が公開している Hystrix を
使ったバックエンド障害検知・切り離し・自動復旧。
キャッシュの設定・キャッシュ削除 API。
Elasticsearch + Kibana 連携でバックエンド API のパ
フォーマンスを視覚化。
ライブラリ・運用
•定番で連携しているのは Scaldi、Swagger、
Dropwizard Metrics, Sentry あたり
•基本的には Play が提供する API を使う
•DB アクセスは ScalikeJDBC のみ
•Octoparts を挟んだシステム間 API 連携
•Jenkins ジョブで sbt universal:package-zip-
tarball 実行 & アプリサーバに配布
•Play の daemon は upstart で起動停止
Octoparts
http://m3dev.github.io/octoparts/
character design by @yancharica
Octoparts とは
バックエンド API 呼び出しを並列化するだけでなく
キャッシュ・障害検知・切り離し・自動復旧まで
賢くやってくれるシステム間連携の仲介役
 Hystrix
・Netflix が公開している Java で実装された OSS
・Octoparts は内部的に Hystrix の Command として
バックエンド呼び出しを行う(#run() で)
swagger-ui
http://octoparts.herokuapp.com/swagger-ui/
キャッシュの破棄
Part の収集を API に依頼
API リクエスト例
https://github.com/m3dev/octoparts/blob/develop/models/src/main/
scala/com/m3/octoparts/model/
{
"requestMeta": {"id": “req-12345", "userId": “sera"},
"requests": [{"partId": “beer", "params": [{"key": “beerId”, "value": "1"}]}]
}
{
"responseMeta": {"id": “req-12345", "processTime": 26},
"responses": [{"partId": “beer", "id": “beer”, “contents”: “{”name”: “yonayona”}”,
“statusCode”: 200, “mimeType”: “application/json”, ”cookies”: [], "cacheControl":
{"noStore": false, "noCache": false}, "warnings": [], "errors": [], "retrievedFromCache":
false}]
}
リクエスト例
レスポンス例
設定の変更
・Part 単位の各種設定
・スレッドプールの設定値変更
・キャッシュグループの設定変更
・JSON で設定をインポート
・JSON で設定をエクスポート
Hystrix ダッシュボード
・Hystrix が元々持つ機能
・Circuit と Thread Pool の状態を可視化
・どの Part がどの程度スローダウンして
いるか現状がリアルタイムで分かる
ES + Kibana
・Fluentd 経由で Elasticsearch + Kibana で Part 単位の
応答状況を可視化(success/timeout/failure/cached
success、応答時間)
・本番環境のリアルタイムな状況把握に利用
Skinny Framework
http://skinny-framework.org/
Skinny 導入状況
•Rails、Play2 に次いで採用事例が増えている
•Play1 メインだったチームが Skinny に移行
•Scala フリークではなかったチームが選択
•本番稼動 5 件、開発中含め計 6 件の実績
•2014/03 ∼ まだ若いフレームワークだが、特
にトラブルなく本番稼働中
ライブラリ・運用
•普通の Web アプリ要件は標準機能で間に合う
•既存の社内 Java ライブラリ(Servlet 関連も
含む)をそのまま組み込む
•本番運用は Jenkins で war を社内 Maven リ
ポジトリに publish、Tomcat に配る
•運用側から見ると従来の Java と全く同じ
Skinny 事例(一部)
アンケートサービス
Angular.js サーバサイド、Grunt で JS ビルド。既存の
ServletFilter 組み込み。Skinny ORM の複数データソー
ス・スキーマ対応。管理 UI は scaffold ベース。
トラッキングデータ
集計基盤
データ分析の ETL(複数 DB・ログファイル)を crond
でキックした skinny-task で実行。社内の担当者向け
Web UI(設定入力、結果データダウンロード)。各種
メール通知(入力催促・結果通知)。
リアルタイム判定
API サービス
履歴データを元にリアルタイムで判定して結果を返す
API サーバ。複数の条件判定を Servlet 上の Future 待
ち合わせで並列化。98 %tile 50ms 応答。管理 UI は
i18n 機能で日英対応。
Play と Skinny
•事実、Play は Scala 界隈でのデファクト
•後発の動機 = 違う方向性のものを求めた
•Skinny MVC は Future 前提の実装を求めな
いアプリ要件・開発チームと相性がよい
•会社としては常にすべての技術選択に開発チー
ムによる主体的な判断を尊重する
Jenkins CI
•sbt-scoverage でカバレッジ計測
•scct の頃に比べればかなり安定している
•テスト結果が変わってしまうことがある対策と
して、テスト実行とカバレッジ計測のジョブを
分けて、カバレッジ計測のジョブではテスト失
敗を無視…
Zipkin
•Twitter 社の OSS 分散トレーシングシステム
•2013/10 から本番ボトルネック調査に活用
•自前の ServletFilter を仕込んでデータ取得
•運用が重くならないようにデータは Thrift で
受けて Redis に保存
http://twitter.github.io/zipkin/
画面イメージ
ここからドリルダウンして
どのメソッドが遅いかまで追える
Typesafe Subscription
•Typesafe Subscription を契約
•Play、Scala、sbt に関する Q&A サービス
•Q&A は英語のみ、24 時間以内の回答保証
•何度か利用実績がある
Apache Spark
•オンラインでの Apache Spark Workshop に
参加(Typesafe 社、2 日間)
•社内 Tech Talk 等での情報共有
•一部で既存のログ集計・データ分析への応用を
始めている
現場を見て私の所感
•レビューで議論に時間をかけすぎない
•定番のコードスタイルは徐々に見えてくる
•動作検証のためのテストコードは当然必要
•不要に Scala のハードルを上げないコード
•Future を扱うセンスに長けたメンバの需要
•同期処理が十分速ければよい場合もある
•未来のアップデート対応コストへの意識
まとめ
•Scala が支える医療系ウェブサービスの話
•3 - 4 年前は一部のメンバだけのもの
•今は機が熟して 普通に 使われるものに
•Java の会社→Java/Ruby/Scala の会社
•Web 開発に Rails、Play2、Skinny
•適材適所で Scala をうまく使おう
一緒にやりましょう
at.m3.com/job
Scala が支える医療系ウェブサービス #jissenscala

More Related Content

What's hot

ScalaにまつわるNewsな話
ScalaにまつわるNewsな話ScalaにまつわるNewsな話
ScalaにまつわるNewsな話Yosuke Mizutani
 
The state of sbt 0.13, sbt server, and sbt 1.0 (ScalaMatsuri ver)
The state of sbt 0.13, sbt server, and sbt 1.0 (ScalaMatsuri ver)The state of sbt 0.13, sbt server, and sbt 1.0 (ScalaMatsuri ver)
The state of sbt 0.13, sbt server, and sbt 1.0 (ScalaMatsuri ver)Eugene Yokota
 
Isomorphic web development with scala and scala.js
Isomorphic web development  with scala and scala.jsIsomorphic web development  with scala and scala.js
Isomorphic web development with scala and scala.jsTanUkkii
 
sbt, past and future / sbt, 傾向と対策
sbt, past and future / sbt, 傾向と対策sbt, past and future / sbt, 傾向と対策
sbt, past and future / sbt, 傾向と対策scalaconfjp
 
サーバーレスで ガチ本番運用までやってるお話し
サーバーレスで ガチ本番運用までやってるお話しサーバーレスで ガチ本番運用までやってるお話し
サーバーレスで ガチ本番運用までやってるお話しAkira Nagata
 
Scalaのコンパイル速度の話が聞きたいだろうし、するつもりだ
Scalaのコンパイル速度の話が聞きたいだろうし、するつもりだScalaのコンパイル速度の話が聞きたいだろうし、するつもりだ
Scalaのコンパイル速度の話が聞きたいだろうし、するつもりだyoshiaki iwanaga
 
Skinny Controllers, Skinny Models
Skinny Controllers, Skinny ModelsSkinny Controllers, Skinny Models
Skinny Controllers, Skinny ModelsKazuhiro Sera
 
Sbtのマルチプロジェクトはいいぞ
SbtのマルチプロジェクトはいいぞSbtのマルチプロジェクトはいいぞ
SbtのマルチプロジェクトはいいぞYoshitaka Fujii
 
Single Command Deployのための gradle-aws-plugin講座
Single Command Deployのための gradle-aws-plugin講座Single Command Deployのための gradle-aws-plugin講座
Single Command Deployのための gradle-aws-plugin講座都元ダイスケ Miyamoto
 
One ASP.NET, OWIN & Katana
One ASP.NET, OWIN & KatanaOne ASP.NET, OWIN & Katana
One ASP.NET, OWIN & Katanamiso- soup3
 
Servlet と Future の関わり方 #scala_ks
Servlet と Future の関わり方 #scala_ksServlet と Future の関わり方 #scala_ks
Servlet と Future の関わり方 #scala_ksKazuhiro Sera
 
おれおれブログシステムにServiceWorkerを導入してみた #serviceworker
おれおれブログシステムにServiceWorkerを導入してみた #serviceworkerおれおれブログシステムにServiceWorkerを導入してみた #serviceworker
おれおれブログシステムにServiceWorkerを導入してみた #serviceworkerToshiaki Maki
 
Service worker が拓く mobile web の新しいかたち
Service worker が拓く mobile web の新しいかたちService worker が拓く mobile web の新しいかたち
Service worker が拓く mobile web の新しいかたちKinuko Yasuda
 
20140518 JJUG MySQL Clsuter as NoSQL
20140518 JJUG MySQL Clsuter as NoSQL20140518 JJUG MySQL Clsuter as NoSQL
20140518 JJUG MySQL Clsuter as NoSQLRyusuke Kajiyama
 
Jawsug chiba API Gateway
Jawsug chiba API GatewayJawsug chiba API Gateway
Jawsug chiba API GatewayTakuro Sasaki
 
React.js + Reduxで作るSPA
React.js + Reduxで作るSPAReact.js + Reduxで作るSPA
React.js + Reduxで作るSPAShohei Saeki
 
OWIN って何?
OWIN って何?OWIN って何?
OWIN って何?miso- soup3
 
2016/05/01 Visual Studio with Cordova
2016/05/01 Visual Studio with Cordova2016/05/01 Visual Studio with Cordova
2016/05/01 Visual Studio with Cordovamiso- soup3
 

What's hot (20)

ScalaにまつわるNewsな話
ScalaにまつわるNewsな話ScalaにまつわるNewsな話
ScalaにまつわるNewsな話
 
The state of sbt 0.13, sbt server, and sbt 1.0 (ScalaMatsuri ver)
The state of sbt 0.13, sbt server, and sbt 1.0 (ScalaMatsuri ver)The state of sbt 0.13, sbt server, and sbt 1.0 (ScalaMatsuri ver)
The state of sbt 0.13, sbt server, and sbt 1.0 (ScalaMatsuri ver)
 
Isomorphic web development with scala and scala.js
Isomorphic web development  with scala and scala.jsIsomorphic web development  with scala and scala.js
Isomorphic web development with scala and scala.js
 
sbt, past and future / sbt, 傾向と対策
sbt, past and future / sbt, 傾向と対策sbt, past and future / sbt, 傾向と対策
sbt, past and future / sbt, 傾向と対策
 
サーバーレスで ガチ本番運用までやってるお話し
サーバーレスで ガチ本番運用までやってるお話しサーバーレスで ガチ本番運用までやってるお話し
サーバーレスで ガチ本番運用までやってるお話し
 
Swagger 入門
Swagger 入門Swagger 入門
Swagger 入門
 
Scalaのコンパイル速度の話が聞きたいだろうし、するつもりだ
Scalaのコンパイル速度の話が聞きたいだろうし、するつもりだScalaのコンパイル速度の話が聞きたいだろうし、するつもりだ
Scalaのコンパイル速度の話が聞きたいだろうし、するつもりだ
 
Skinny Controllers, Skinny Models
Skinny Controllers, Skinny ModelsSkinny Controllers, Skinny Models
Skinny Controllers, Skinny Models
 
Sbtのマルチプロジェクトはいいぞ
SbtのマルチプロジェクトはいいぞSbtのマルチプロジェクトはいいぞ
Sbtのマルチプロジェクトはいいぞ
 
Single Command Deployのための gradle-aws-plugin講座
Single Command Deployのための gradle-aws-plugin講座Single Command Deployのための gradle-aws-plugin講座
Single Command Deployのための gradle-aws-plugin講座
 
One ASP.NET, OWIN & Katana
One ASP.NET, OWIN & KatanaOne ASP.NET, OWIN & Katana
One ASP.NET, OWIN & Katana
 
Servlet と Future の関わり方 #scala_ks
Servlet と Future の関わり方 #scala_ksServlet と Future の関わり方 #scala_ks
Servlet と Future の関わり方 #scala_ks
 
おれおれブログシステムにServiceWorkerを導入してみた #serviceworker
おれおれブログシステムにServiceWorkerを導入してみた #serviceworkerおれおれブログシステムにServiceWorkerを導入してみた #serviceworker
おれおれブログシステムにServiceWorkerを導入してみた #serviceworker
 
Service worker が拓く mobile web の新しいかたち
Service worker が拓く mobile web の新しいかたちService worker が拓く mobile web の新しいかたち
Service worker が拓く mobile web の新しいかたち
 
20140518 JJUG MySQL Clsuter as NoSQL
20140518 JJUG MySQL Clsuter as NoSQL20140518 JJUG MySQL Clsuter as NoSQL
20140518 JJUG MySQL Clsuter as NoSQL
 
Jawsug chiba API Gateway
Jawsug chiba API GatewayJawsug chiba API Gateway
Jawsug chiba API Gateway
 
React.js + Reduxで作るSPA
React.js + Reduxで作るSPAReact.js + Reduxで作るSPA
React.js + Reduxで作るSPA
 
OWIN って何?
OWIN って何?OWIN って何?
OWIN って何?
 
2016/05/01 Visual Studio with Cordova
2016/05/01 Visual Studio with Cordova2016/05/01 Visual Studio with Cordova
2016/05/01 Visual Studio with Cordova
 
serverless
serverlessserverless
serverless
 

Similar to Scala が支える医療系ウェブサービス #jissenscala

ASP.NET シングル ページ アプリケーション (SPA) 詳説
ASP.NET シングル ページ アプリケーション (SPA) 詳説ASP.NET シングル ページ アプリケーション (SPA) 詳説
ASP.NET シングル ページ アプリケーション (SPA) 詳説Akira Inoue
 
Azure でサーバーレス、 Infrastructure as Code どうしてますか?
Azure でサーバーレス、 Infrastructure as Code どうしてますか?Azure でサーバーレス、 Infrastructure as Code どうしてますか?
Azure でサーバーレス、 Infrastructure as Code どうしてますか?Kazumi IWANAGA
 
TypeScript ファースト ステップ (v.0.9 対応版) ~ Any browser. Any host. Any OS. Open Sourc...
TypeScript ファースト ステップ (v.0.9 対応版) ~ Any browser. Any host. Any OS. Open Sourc...TypeScript ファースト ステップ (v.0.9 対応版) ~ Any browser. Any host. Any OS. Open Sourc...
TypeScript ファースト ステップ (v.0.9 対応版) ~ Any browser. Any host. Any OS. Open Sourc...Akira Inoue
 
SQL Beginners Day #1 - SQL Server および Azure SQL のインストールと管理
SQL Beginners Day #1 - SQL Server および Azure SQL のインストールと管理SQL Beginners Day #1 - SQL Server および Azure SQL のインストールと管理
SQL Beginners Day #1 - SQL Server および Azure SQL のインストールと管理Oshitari_kochi
 
クラウドネイティブ化する未来
クラウドネイティブ化する未来クラウドネイティブ化する未来
クラウドネイティブ化する未来Keisuke Nishitani
 
Spring data-rest-and-spring-cloud-contract
Spring data-rest-and-spring-cloud-contractSpring data-rest-and-spring-cloud-contract
Spring data-rest-and-spring-cloud-contractTakeshi Ogawa
 
WordPress APIで作るモバイルアプリ
WordPress APIで作るモバイルアプリWordPress APIで作るモバイルアプリ
WordPress APIで作るモバイルアプリアシアル株式会社
 
エンタープライズ分野での実践AngularJS
エンタープライズ分野での実践AngularJSエンタープライズ分野での実践AngularJS
エンタープライズ分野での実践AngularJSAyumi Goto
 
サーバーレスの今とこれから
サーバーレスの今とこれからサーバーレスの今とこれから
サーバーレスの今とこれから真吾 吉田
 
ARC-003_モダン Web: たった今と、ほんの少し未来の話
ARC-003_モダン Web: たった今と、ほんの少し未来の話ARC-003_モダン Web: たった今と、ほんの少し未来の話
ARC-003_モダン Web: たった今と、ほんの少し未来の話decode2016
 
ソーシャルアプリ勉強会(第一回資料)配布用
ソーシャルアプリ勉強会(第一回資料)配布用ソーシャルアプリ勉強会(第一回資料)配布用
ソーシャルアプリ勉強会(第一回資料)配布用Yatabe Terumasa
 
JAWSDAYS2016 Technical Deep DIVE
JAWSDAYS2016 Technical Deep DIVE JAWSDAYS2016 Technical Deep DIVE
JAWSDAYS2016 Technical Deep DIVE 陽平 山口
 
サーバーレスのアーキテクチャパターンとそれぞれの実装・テストの勘所
サーバーレスのアーキテクチャパターンとそれぞれの実装・テストの勘所サーバーレスのアーキテクチャパターンとそれぞれの実装・テストの勘所
サーバーレスのアーキテクチャパターンとそれぞれの実装・テストの勘所真吾 吉田
 
Web App for Containers + MySQLでコンテナ対応したRailsアプリを作ろう!
Web App for Containers + MySQLでコンテナ対応したRailsアプリを作ろう!Web App for Containers + MySQLでコンテナ対応したRailsアプリを作ろう!
Web App for Containers + MySQLでコンテナ対応したRailsアプリを作ろう!Yoichi Kawasaki
 
OSS on Azure で構築するウェブアプリケーション
OSS on Azure で構築するウェブアプリケーションOSS on Azure で構築するウェブアプリケーション
OSS on Azure で構築するウェブアプリケーションDaisuke Masubuchi
 
Webアプリに低レイテンシ・高可用性を求めるのは間違っているのだろうか
Webアプリに低レイテンシ・高可用性を求めるのは間違っているのだろうかWebアプリに低レイテンシ・高可用性を求めるのは間違っているのだろうか
Webアプリに低レイテンシ・高可用性を求めるのは間違っているのだろうかChihiro Ito
 
AWSとGCPを使用したインフラ環境
AWSとGCPを使用したインフラ環境AWSとGCPを使用したインフラ環境
AWSとGCPを使用したインフラ環境Katsutoshi Nagaoka
 

Similar to Scala が支える医療系ウェブサービス #jissenscala (20)

ASP.NET シングル ページ アプリケーション (SPA) 詳説
ASP.NET シングル ページ アプリケーション (SPA) 詳説ASP.NET シングル ページ アプリケーション (SPA) 詳説
ASP.NET シングル ページ アプリケーション (SPA) 詳説
 
Azure でサーバーレス、 Infrastructure as Code どうしてますか?
Azure でサーバーレス、 Infrastructure as Code どうしてますか?Azure でサーバーレス、 Infrastructure as Code どうしてますか?
Azure でサーバーレス、 Infrastructure as Code どうしてますか?
 
TypeScript ファースト ステップ (v.0.9 対応版) ~ Any browser. Any host. Any OS. Open Sourc...
TypeScript ファースト ステップ (v.0.9 対応版) ~ Any browser. Any host. Any OS. Open Sourc...TypeScript ファースト ステップ (v.0.9 対応版) ~ Any browser. Any host. Any OS. Open Sourc...
TypeScript ファースト ステップ (v.0.9 対応版) ~ Any browser. Any host. Any OS. Open Sourc...
 
SQL Beginners Day #1 - SQL Server および Azure SQL のインストールと管理
SQL Beginners Day #1 - SQL Server および Azure SQL のインストールと管理SQL Beginners Day #1 - SQL Server および Azure SQL のインストールと管理
SQL Beginners Day #1 - SQL Server および Azure SQL のインストールと管理
 
クラウドネイティブ化する未来
クラウドネイティブ化する未来クラウドネイティブ化する未来
クラウドネイティブ化する未来
 
BPStudy20121221
BPStudy20121221BPStudy20121221
BPStudy20121221
 
Spring data-rest-and-spring-cloud-contract
Spring data-rest-and-spring-cloud-contractSpring data-rest-and-spring-cloud-contract
Spring data-rest-and-spring-cloud-contract
 
WordPress APIで作るモバイルアプリ
WordPress APIで作るモバイルアプリWordPress APIで作るモバイルアプリ
WordPress APIで作るモバイルアプリ
 
エンタープライズ分野での実践AngularJS
エンタープライズ分野での実践AngularJSエンタープライズ分野での実践AngularJS
エンタープライズ分野での実践AngularJS
 
AWS Blackbelt 2015シリーズ AWS Lambda
AWS Blackbelt 2015シリーズ AWS LambdaAWS Blackbelt 2015シリーズ AWS Lambda
AWS Blackbelt 2015シリーズ AWS Lambda
 
サーバーレスの今とこれから
サーバーレスの今とこれからサーバーレスの今とこれから
サーバーレスの今とこれから
 
ARC-003_モダン Web: たった今と、ほんの少し未来の話
ARC-003_モダン Web: たった今と、ほんの少し未来の話ARC-003_モダン Web: たった今と、ほんの少し未来の話
ARC-003_モダン Web: たった今と、ほんの少し未来の話
 
ソーシャルアプリ勉強会(第一回資料)配布用
ソーシャルアプリ勉強会(第一回資料)配布用ソーシャルアプリ勉強会(第一回資料)配布用
ソーシャルアプリ勉強会(第一回資料)配布用
 
JAWSDAYS2016 Technical Deep DIVE
JAWSDAYS2016 Technical Deep DIVE JAWSDAYS2016 Technical Deep DIVE
JAWSDAYS2016 Technical Deep DIVE
 
Oracle APEX概要
Oracle APEX概要Oracle APEX概要
Oracle APEX概要
 
サーバーレスのアーキテクチャパターンとそれぞれの実装・テストの勘所
サーバーレスのアーキテクチャパターンとそれぞれの実装・テストの勘所サーバーレスのアーキテクチャパターンとそれぞれの実装・テストの勘所
サーバーレスのアーキテクチャパターンとそれぞれの実装・テストの勘所
 
Web App for Containers + MySQLでコンテナ対応したRailsアプリを作ろう!
Web App for Containers + MySQLでコンテナ対応したRailsアプリを作ろう!Web App for Containers + MySQLでコンテナ対応したRailsアプリを作ろう!
Web App for Containers + MySQLでコンテナ対応したRailsアプリを作ろう!
 
OSS on Azure で構築するウェブアプリケーション
OSS on Azure で構築するウェブアプリケーションOSS on Azure で構築するウェブアプリケーション
OSS on Azure で構築するウェブアプリケーション
 
Webアプリに低レイテンシ・高可用性を求めるのは間違っているのだろうか
Webアプリに低レイテンシ・高可用性を求めるのは間違っているのだろうかWebアプリに低レイテンシ・高可用性を求めるのは間違っているのだろうか
Webアプリに低レイテンシ・高可用性を求めるのは間違っているのだろうか
 
AWSとGCPを使用したインフラ環境
AWSとGCPを使用したインフラ環境AWSとGCPを使用したインフラ環境
AWSとGCPを使用したインフラ環境
 

More from Kazuhiro Sera

All I learned while working on a Scala OSS project for over six years #ScalaM...
All I learned while working on a Scala OSS project for over six years #ScalaM...All I learned while working on a Scala OSS project for over six years #ScalaM...
All I learned while working on a Scala OSS project for over six years #ScalaM...Kazuhiro Sera
 
Contributing to Scala OSS from East Asia #ScalaMatsuri
 Contributing to Scala OSS from East Asia #ScalaMatsuri Contributing to Scala OSS from East Asia #ScalaMatsuri
Contributing to Scala OSS from East Asia #ScalaMatsuriKazuhiro Sera
 
Skinny Meetup Tokyo 2 日本語スライド
Skinny Meetup Tokyo 2 日本語スライドSkinny Meetup Tokyo 2 日本語スライド
Skinny Meetup Tokyo 2 日本語スライドKazuhiro Sera
 
Java エンジニアチームが始めやすい Scala コーディングスタイル #ichigayageek
Java エンジニアチームが始めやすい Scala コーディングスタイル #ichigayageekJava エンジニアチームが始めやすい Scala コーディングスタイル #ichigayageek
Java エンジニアチームが始めやすい Scala コーディングスタイル #ichigayageekKazuhiro Sera
 
Future on Servlet #scala_ks
Future on Servlet #scala_ksFuture on Servlet #scala_ks
Future on Servlet #scala_ksKazuhiro Sera
 
マイクロサービス運用の所感 #m3dev
マイクロサービス運用の所感 #m3devマイクロサービス運用の所感 #m3dev
マイクロサービス運用の所感 #m3devKazuhiro Sera
 
Scala on Rails #rakutentech
Scala on Rails #rakutentechScala on Rails #rakutentech
Scala on Rails #rakutentechKazuhiro Sera
 
Solid And Sustainable Development in Scala
Solid And Sustainable Development in ScalaSolid And Sustainable Development in Scala
Solid And Sustainable Development in ScalaKazuhiro Sera
 
Beginning Scala with Skinny Framework #jjug_ccc
Beginning Scala with Skinny Framework #jjug_cccBeginning Scala with Skinny Framework #jjug_ccc
Beginning Scala with Skinny Framework #jjug_cccKazuhiro Sera
 
[Japanese] Skinny Framework で始める Scala #jjug_ccc #ccc_r24
[Japanese] Skinny Framework で始める Scala #jjug_ccc #ccc_r24[Japanese] Skinny Framework で始める Scala #jjug_ccc #ccc_r24
[Japanese] Skinny Framework で始める Scala #jjug_ccc #ccc_r24Kazuhiro Sera
 
Skinny Framework 1.0.0
Skinny Framework 1.0.0Skinny Framework 1.0.0
Skinny Framework 1.0.0Kazuhiro Sera
 
Skinny Framework Progress Situation
Skinny Framework Progress SituationSkinny Framework Progress Situation
Skinny Framework Progress SituationKazuhiro Sera
 
Skinny Framework 進捗どうですか? #fud_scala
Skinny Framework 進捗どうですか? #fud_scalaSkinny Framework 進捗どうですか? #fud_scala
Skinny Framework 進捗どうですか? #fud_scalaKazuhiro Sera
 
テストの運用について #m3dev
テストの運用について #m3devテストの運用について #m3dev
テストの運用について #m3devKazuhiro Sera
 
めんどくさくない Scala #kwkni_scala
めんどくさくない Scala #kwkni_scalaめんどくさくない Scala #kwkni_scala
めんどくさくない Scala #kwkni_scalaKazuhiro Sera
 
歌舞伎座.tech 1 LT - ScalikeJDBC Async & Skinny Framework #kbkz_tech
歌舞伎座.tech 1 LT - ScalikeJDBC Async & Skinny Framework #kbkz_tech歌舞伎座.tech 1 LT - ScalikeJDBC Async & Skinny Framework #kbkz_tech
歌舞伎座.tech 1 LT - ScalikeJDBC Async & Skinny Framework #kbkz_techKazuhiro Sera
 
Kabukiza.tech 1 LT - ScalikeJDBC-Async & Skinny Framework #kbkz_tech
Kabukiza.tech 1 LT - ScalikeJDBC-Async & Skinny Framework #kbkz_techKabukiza.tech 1 LT - ScalikeJDBC-Async & Skinny Framework #kbkz_tech
Kabukiza.tech 1 LT - ScalikeJDBC-Async & Skinny Framework #kbkz_techKazuhiro Sera
 
テストを書くのが嫌いな君へ #m3dev
テストを書くのが嫌いな君へ #m3devテストを書くのが嫌いな君へ #m3dev
テストを書くのが嫌いな君へ #m3devKazuhiro Sera
 
ScalikeJDBC Tutorial for Beginners
ScalikeJDBC Tutorial for BeginnersScalikeJDBC Tutorial for Beginners
ScalikeJDBC Tutorial for BeginnersKazuhiro Sera
 

More from Kazuhiro Sera (20)

All I learned while working on a Scala OSS project for over six years #ScalaM...
All I learned while working on a Scala OSS project for over six years #ScalaM...All I learned while working on a Scala OSS project for over six years #ScalaM...
All I learned while working on a Scala OSS project for over six years #ScalaM...
 
Contributing to Scala OSS from East Asia #ScalaMatsuri
 Contributing to Scala OSS from East Asia #ScalaMatsuri Contributing to Scala OSS from East Asia #ScalaMatsuri
Contributing to Scala OSS from East Asia #ScalaMatsuri
 
Skinny Meetup Tokyo 2 日本語スライド
Skinny Meetup Tokyo 2 日本語スライドSkinny Meetup Tokyo 2 日本語スライド
Skinny Meetup Tokyo 2 日本語スライド
 
Skinny 2 Update
Skinny 2 UpdateSkinny 2 Update
Skinny 2 Update
 
Java エンジニアチームが始めやすい Scala コーディングスタイル #ichigayageek
Java エンジニアチームが始めやすい Scala コーディングスタイル #ichigayageekJava エンジニアチームが始めやすい Scala コーディングスタイル #ichigayageek
Java エンジニアチームが始めやすい Scala コーディングスタイル #ichigayageek
 
Future on Servlet #scala_ks
Future on Servlet #scala_ksFuture on Servlet #scala_ks
Future on Servlet #scala_ks
 
マイクロサービス運用の所感 #m3dev
マイクロサービス運用の所感 #m3devマイクロサービス運用の所感 #m3dev
マイクロサービス運用の所感 #m3dev
 
Scala on Rails #rakutentech
Scala on Rails #rakutentechScala on Rails #rakutentech
Scala on Rails #rakutentech
 
Solid And Sustainable Development in Scala
Solid And Sustainable Development in ScalaSolid And Sustainable Development in Scala
Solid And Sustainable Development in Scala
 
Beginning Scala with Skinny Framework #jjug_ccc
Beginning Scala with Skinny Framework #jjug_cccBeginning Scala with Skinny Framework #jjug_ccc
Beginning Scala with Skinny Framework #jjug_ccc
 
[Japanese] Skinny Framework で始める Scala #jjug_ccc #ccc_r24
[Japanese] Skinny Framework で始める Scala #jjug_ccc #ccc_r24[Japanese] Skinny Framework で始める Scala #jjug_ccc #ccc_r24
[Japanese] Skinny Framework で始める Scala #jjug_ccc #ccc_r24
 
Skinny Framework 1.0.0
Skinny Framework 1.0.0Skinny Framework 1.0.0
Skinny Framework 1.0.0
 
Skinny Framework Progress Situation
Skinny Framework Progress SituationSkinny Framework Progress Situation
Skinny Framework Progress Situation
 
Skinny Framework 進捗どうですか? #fud_scala
Skinny Framework 進捗どうですか? #fud_scalaSkinny Framework 進捗どうですか? #fud_scala
Skinny Framework 進捗どうですか? #fud_scala
 
テストの運用について #m3dev
テストの運用について #m3devテストの運用について #m3dev
テストの運用について #m3dev
 
めんどくさくない Scala #kwkni_scala
めんどくさくない Scala #kwkni_scalaめんどくさくない Scala #kwkni_scala
めんどくさくない Scala #kwkni_scala
 
歌舞伎座.tech 1 LT - ScalikeJDBC Async & Skinny Framework #kbkz_tech
歌舞伎座.tech 1 LT - ScalikeJDBC Async & Skinny Framework #kbkz_tech歌舞伎座.tech 1 LT - ScalikeJDBC Async & Skinny Framework #kbkz_tech
歌舞伎座.tech 1 LT - ScalikeJDBC Async & Skinny Framework #kbkz_tech
 
Kabukiza.tech 1 LT - ScalikeJDBC-Async & Skinny Framework #kbkz_tech
Kabukiza.tech 1 LT - ScalikeJDBC-Async & Skinny Framework #kbkz_techKabukiza.tech 1 LT - ScalikeJDBC-Async & Skinny Framework #kbkz_tech
Kabukiza.tech 1 LT - ScalikeJDBC-Async & Skinny Framework #kbkz_tech
 
テストを書くのが嫌いな君へ #m3dev
テストを書くのが嫌いな君へ #m3devテストを書くのが嫌いな君へ #m3dev
テストを書くのが嫌いな君へ #m3dev
 
ScalikeJDBC Tutorial for Beginners
ScalikeJDBC Tutorial for BeginnersScalikeJDBC Tutorial for Beginners
ScalikeJDBC Tutorial for Beginners
 

Scala が支える医療系ウェブサービス #jissenscala