Submit Search
Upload
【 ヒカ☆ラボ 】LIFULL Home's androidアプリの開発の裏側について
•
Download as PPTX, PDF
•
1 like
•
374 views
LIFULL Co., Ltd.
Follow
・2017/4/6 ・ヒカラボ ・LIFULL Home's androidアプリの開発の裏側について
Read less
Read more
Technology
Report
Share
Report
Share
1 of 36
Download now
Recommended
・4/12(水) ・Forkwell Jobs主催イベント@LIFULL社 ・LIFULL HOME'Sにおけるサイトの高速化と今後の対応
LIFULL HOME'Sにおけるサイトの高速化と今後の対応
LIFULL HOME'Sにおけるサイトの高速化と今後の対応
LIFULL Co., Ltd.
2017/5/10 マイクロサービス化とFirebase活用事例について
20170510 タウンwi fixlifull_スマホアプリ開発の実例 (1)
20170510 タウンwi fixlifull_スマホアプリ開発の実例 (1)
LIFULL Co., Ltd.
2017年4月に開催されたサンフランシスコのAWS SummitにおけるAmazon CTO Werner Vogelsのキーノートを日本語で詳細にご紹介
AWS Summit San Francisco 2017 Werner Vogelsによる基調講演を徹底紹介
AWS Summit San Francisco 2017 Werner Vogelsによる基調講演を徹底紹介
Eiji Shinohara
Azure Load Testの利用方法について簡単にまとめました。 2021-12-16 に実施されたJAZUG Nightで行ったセッション資料です。
Azure Load Testingを試してみた
Azure Load Testingを試してみた
Hiroyuki Mori
本資料は2016/09/16に行われましたアプリケーション・パフォーマンス 2016発表内容からの抜粋となります。
アメーバブログを支えるデータセンターとインフラ技術
アメーバブログを支えるデータセンターとインフラ技術
Hiroki NAKASHIMA
Alibaba Cloud Sapporoの発表資料
Alibaba Cloudのベンチマークテスト
Alibaba Cloudのベンチマークテスト
Kazunori Inaba
CKANプロジェクトの入門とデプロイ・CIなどの話題を扱いました
Code for Japan 勉強会 Vol.1 CKAN入門 プロジェクトのFork、デプロイ、CIまで
Code for Japan 勉強会 Vol.1 CKAN入門 プロジェクトのFork、デプロイ、CIまで
Naoyuki Yamada
CloudGarage Deep Meetup in SapporoのLT資料
CloudGarageのベンチマークテスト
CloudGarageのベンチマークテスト
Kazunori Inaba
Recommended
・4/12(水) ・Forkwell Jobs主催イベント@LIFULL社 ・LIFULL HOME'Sにおけるサイトの高速化と今後の対応
LIFULL HOME'Sにおけるサイトの高速化と今後の対応
LIFULL HOME'Sにおけるサイトの高速化と今後の対応
LIFULL Co., Ltd.
2017/5/10 マイクロサービス化とFirebase活用事例について
20170510 タウンwi fixlifull_スマホアプリ開発の実例 (1)
20170510 タウンwi fixlifull_スマホアプリ開発の実例 (1)
LIFULL Co., Ltd.
2017年4月に開催されたサンフランシスコのAWS SummitにおけるAmazon CTO Werner Vogelsのキーノートを日本語で詳細にご紹介
AWS Summit San Francisco 2017 Werner Vogelsによる基調講演を徹底紹介
AWS Summit San Francisco 2017 Werner Vogelsによる基調講演を徹底紹介
Eiji Shinohara
Azure Load Testの利用方法について簡単にまとめました。 2021-12-16 に実施されたJAZUG Nightで行ったセッション資料です。
Azure Load Testingを試してみた
Azure Load Testingを試してみた
Hiroyuki Mori
本資料は2016/09/16に行われましたアプリケーション・パフォーマンス 2016発表内容からの抜粋となります。
アメーバブログを支えるデータセンターとインフラ技術
アメーバブログを支えるデータセンターとインフラ技術
Hiroki NAKASHIMA
Alibaba Cloud Sapporoの発表資料
Alibaba Cloudのベンチマークテスト
Alibaba Cloudのベンチマークテスト
Kazunori Inaba
CKANプロジェクトの入門とデプロイ・CIなどの話題を扱いました
Code for Japan 勉強会 Vol.1 CKAN入門 プロジェクトのFork、デプロイ、CIまで
Code for Japan 勉強会 Vol.1 CKAN入門 プロジェクトのFork、デプロイ、CIまで
Naoyuki Yamada
CloudGarage Deep Meetup in SapporoのLT資料
CloudGarageのベンチマークテスト
CloudGarageのベンチマークテスト
Kazunori Inaba
AWSオンリーで実現するIoTクラウド基盤
AWSオンリーで実現するIoTクラウド基盤
AWSオンリーで実現するIoTクラウド基盤
Godai Nakamura
第20回JAWS-UG札幌勉強会の発表資料
EC-CUBEによるECサイトの負荷対策
EC-CUBEによるECサイトの負荷対策
Kazunori Inaba
JAWS-2013-LT 10000req/secを50msecで返すサーバーインフラをAWSで作る
JAWS-2013-LT 10000req/secを50msecで返すサーバーインフラをAWSで作る
Naoyuki Yamada
2016年3月19日に開催されたInnovation Eggでお話した際の資料です
Building Scalable Application on the Cloud
Building Scalable Application on the Cloud
Keisuke Nishitani
「IGDA SIG-NSゲームサーバ勉強会(AWS re:invent振り返り)」で発表された資料です。 https://www.igda.jp/?p=9552
AWS re:invent振り返りServerlessでサーバコスト以外もいろいろ削減
AWS re:invent振り返りServerlessでサーバコスト以外もいろいろ削減
gree_tech
2018.2.13 MasterCloud #10 で話したLT資料
Alexaスキルを作ろう
Alexaスキルを作ろう
真吾 吉田
「これからのインフラエンジニアについて考えていること」 グリー株式会社 梶原大輔 SmartNews Tech Night Vol.2 ~クラウド事業者に就職する以外の インフラエンジニアの生きる道~ (2015/04/15)での発表資料です。
これからのインフラエンジニアについて考えていること
これからのインフラエンジニアについて考えていること
gree_tech
とある勉強会で話した、インフラを置き換えた事例の紹介です。
AWSからOpenStack, Chef SoloからChef Serverに インフラを置き換えた事例の紹介
AWSからOpenStack, Chef SoloからChef Serverに インフラを置き換えた事例の紹介
Naoyuki Yamada
マイクロサービスアーキテクチャが話題を集め、コンポーネントのWeb API化が更なる急加速を見せる昨今。 とは言え「誰でも自由に叩いて良い」Web APIなんてのは事実上無く、ほぼ全てのケースで何かしらのアクセス制御が必要になります。 - Spring Security もサポートする昔ながらの「Basic認証」。古い、ということは、悪いソリューションなのか? - 最近のAPIのアクセス制御と言えば「OAuth 2.0」がトレンディ? Spring Security OAuth もあるし! - 一方でAWSは「APIキー方式」を採用。なぜAWSはOAuth2ではないのか? - Spring Security はまだ公式にサポートしていない「OpenID Connect」とは一体…? Webにおけるアクセス制御の歴史を振り返りつつ、様々なAPIの立ち位置と共に、その最適解を探っていきたいと思います。
Spring Day 2016 - Web API アクセス制御の最適解
Spring Day 2016 - Web API アクセス制御の最適解
都元ダイスケ Miyamoto
http://jawsdays2017.jaws-ug.jp/session/1518/ JAWS DAYS 2017 で発表した OpsJAWSの資料です。
Jaws days2017-ops jaws-2
Jaws days2017-ops jaws-2
Serverworks Co.,Ltd.
2016.11.9 Serverless Meetup Tokyo #1 オープニング
Serverless Meetup Tokyo #1 オープニング
Serverless Meetup Tokyo #1 オープニング
真吾 吉田
2016/01/07に開催されたElasticsearch勉強会で発表した資料になります。
Elasticsearch勉強会
Elasticsearch勉強会
takahito takabayashi
2021年に公開されたAzureのテストサービスであるAzure Chaos Studio / Azure Load Testingがどのように利用できるのか、Demoを交えてご説明しました。 #burikaigi2022 #azure #azpower
最近Preview公開されたAzure テストサービスを試してみた
最近Preview公開されたAzure テストサービスを試してみた
Hiroyuki Mori
JAWS Days 2017
DevOpsとか言う前にAWSエンジニアに知ってほしいアプリケーションのこと
DevOpsとか言う前にAWSエンジニアに知ってほしいアプリケーションのこと
Terui Masashi
【大阪開催】【サバソニSP】『サーバーレス』の巻 https://serverworks.doorkeeper.jp/events/53980 の発表スライドです。
サーバーレスで ガチ本番運用までやってるお話し
サーバーレスで ガチ本番運用までやってるお話し
Akira Nagata
Mobile
モバイルファースト時代のクラウドネイティブアーキテクチャ JAWS DAYS 2015
モバイルファースト時代のクラウドネイティブアーキテクチャ JAWS DAYS 2015
Rikitake Oohashi
2015/02/07 JAWS-UG関西 SpecialのAuroraの紹介資料
jaws-ug kansai-special_aurora_20150207
jaws-ug kansai-special_aurora_20150207
Toshiyuki Konparu
2018.3.20 @ AliEaters #2 で発表した資料です。
Kubernetes on Alibaba Cloud
Kubernetes on Alibaba Cloud
真吾 吉田
「Developers Boost 2019」で発表された資料です。 https://event.shoeisha.jp/devboost/20191130
ネットワークエンジニアがWeb開発をやってみて思ったこと
ネットワークエンジニアがWeb開発をやってみて思ったこと
gree_tech
2021年6月25日開催のタガヤスその21発表資料です
クラウド入門(AWS編)
クラウド入門(AWS編)
株式会社オプト 仙台ラボラトリ
de:code18 セッション資料
Angular でもっとAPIファースト・もっとモダンデザインなWebアプリケーションを作ろう!
Angular でもっとAPIファースト・もっとモダンデザインなWebアプリケーションを作ろう!
CData Software Japan
WordCamp Tokyo 2014のセッションでお話しした内容です。
WordPress APIで作るモバイルアプリ
WordPress APIで作るモバイルアプリ
アシアル株式会社
More Related Content
What's hot
AWSオンリーで実現するIoTクラウド基盤
AWSオンリーで実現するIoTクラウド基盤
AWSオンリーで実現するIoTクラウド基盤
Godai Nakamura
第20回JAWS-UG札幌勉強会の発表資料
EC-CUBEによるECサイトの負荷対策
EC-CUBEによるECサイトの負荷対策
Kazunori Inaba
JAWS-2013-LT 10000req/secを50msecで返すサーバーインフラをAWSで作る
JAWS-2013-LT 10000req/secを50msecで返すサーバーインフラをAWSで作る
Naoyuki Yamada
2016年3月19日に開催されたInnovation Eggでお話した際の資料です
Building Scalable Application on the Cloud
Building Scalable Application on the Cloud
Keisuke Nishitani
「IGDA SIG-NSゲームサーバ勉強会(AWS re:invent振り返り)」で発表された資料です。 https://www.igda.jp/?p=9552
AWS re:invent振り返りServerlessでサーバコスト以外もいろいろ削減
AWS re:invent振り返りServerlessでサーバコスト以外もいろいろ削減
gree_tech
2018.2.13 MasterCloud #10 で話したLT資料
Alexaスキルを作ろう
Alexaスキルを作ろう
真吾 吉田
「これからのインフラエンジニアについて考えていること」 グリー株式会社 梶原大輔 SmartNews Tech Night Vol.2 ~クラウド事業者に就職する以外の インフラエンジニアの生きる道~ (2015/04/15)での発表資料です。
これからのインフラエンジニアについて考えていること
これからのインフラエンジニアについて考えていること
gree_tech
とある勉強会で話した、インフラを置き換えた事例の紹介です。
AWSからOpenStack, Chef SoloからChef Serverに インフラを置き換えた事例の紹介
AWSからOpenStack, Chef SoloからChef Serverに インフラを置き換えた事例の紹介
Naoyuki Yamada
マイクロサービスアーキテクチャが話題を集め、コンポーネントのWeb API化が更なる急加速を見せる昨今。 とは言え「誰でも自由に叩いて良い」Web APIなんてのは事実上無く、ほぼ全てのケースで何かしらのアクセス制御が必要になります。 - Spring Security もサポートする昔ながらの「Basic認証」。古い、ということは、悪いソリューションなのか? - 最近のAPIのアクセス制御と言えば「OAuth 2.0」がトレンディ? Spring Security OAuth もあるし! - 一方でAWSは「APIキー方式」を採用。なぜAWSはOAuth2ではないのか? - Spring Security はまだ公式にサポートしていない「OpenID Connect」とは一体…? Webにおけるアクセス制御の歴史を振り返りつつ、様々なAPIの立ち位置と共に、その最適解を探っていきたいと思います。
Spring Day 2016 - Web API アクセス制御の最適解
Spring Day 2016 - Web API アクセス制御の最適解
都元ダイスケ Miyamoto
http://jawsdays2017.jaws-ug.jp/session/1518/ JAWS DAYS 2017 で発表した OpsJAWSの資料です。
Jaws days2017-ops jaws-2
Jaws days2017-ops jaws-2
Serverworks Co.,Ltd.
2016.11.9 Serverless Meetup Tokyo #1 オープニング
Serverless Meetup Tokyo #1 オープニング
Serverless Meetup Tokyo #1 オープニング
真吾 吉田
2016/01/07に開催されたElasticsearch勉強会で発表した資料になります。
Elasticsearch勉強会
Elasticsearch勉強会
takahito takabayashi
2021年に公開されたAzureのテストサービスであるAzure Chaos Studio / Azure Load Testingがどのように利用できるのか、Demoを交えてご説明しました。 #burikaigi2022 #azure #azpower
最近Preview公開されたAzure テストサービスを試してみた
最近Preview公開されたAzure テストサービスを試してみた
Hiroyuki Mori
JAWS Days 2017
DevOpsとか言う前にAWSエンジニアに知ってほしいアプリケーションのこと
DevOpsとか言う前にAWSエンジニアに知ってほしいアプリケーションのこと
Terui Masashi
【大阪開催】【サバソニSP】『サーバーレス』の巻 https://serverworks.doorkeeper.jp/events/53980 の発表スライドです。
サーバーレスで ガチ本番運用までやってるお話し
サーバーレスで ガチ本番運用までやってるお話し
Akira Nagata
Mobile
モバイルファースト時代のクラウドネイティブアーキテクチャ JAWS DAYS 2015
モバイルファースト時代のクラウドネイティブアーキテクチャ JAWS DAYS 2015
Rikitake Oohashi
2015/02/07 JAWS-UG関西 SpecialのAuroraの紹介資料
jaws-ug kansai-special_aurora_20150207
jaws-ug kansai-special_aurora_20150207
Toshiyuki Konparu
2018.3.20 @ AliEaters #2 で発表した資料です。
Kubernetes on Alibaba Cloud
Kubernetes on Alibaba Cloud
真吾 吉田
「Developers Boost 2019」で発表された資料です。 https://event.shoeisha.jp/devboost/20191130
ネットワークエンジニアがWeb開発をやってみて思ったこと
ネットワークエンジニアがWeb開発をやってみて思ったこと
gree_tech
2021年6月25日開催のタガヤスその21発表資料です
クラウド入門(AWS編)
クラウド入門(AWS編)
株式会社オプト 仙台ラボラトリ
What's hot
(20)
AWSオンリーで実現するIoTクラウド基盤
AWSオンリーで実現するIoTクラウド基盤
EC-CUBEによるECサイトの負荷対策
EC-CUBEによるECサイトの負荷対策
JAWS-2013-LT 10000req/secを50msecで返すサーバーインフラをAWSで作る
JAWS-2013-LT 10000req/secを50msecで返すサーバーインフラをAWSで作る
Building Scalable Application on the Cloud
Building Scalable Application on the Cloud
AWS re:invent振り返りServerlessでサーバコスト以外もいろいろ削減
AWS re:invent振り返りServerlessでサーバコスト以外もいろいろ削減
Alexaスキルを作ろう
Alexaスキルを作ろう
これからのインフラエンジニアについて考えていること
これからのインフラエンジニアについて考えていること
AWSからOpenStack, Chef SoloからChef Serverに インフラを置き換えた事例の紹介
AWSからOpenStack, Chef SoloからChef Serverに インフラを置き換えた事例の紹介
Spring Day 2016 - Web API アクセス制御の最適解
Spring Day 2016 - Web API アクセス制御の最適解
Jaws days2017-ops jaws-2
Jaws days2017-ops jaws-2
Serverless Meetup Tokyo #1 オープニング
Serverless Meetup Tokyo #1 オープニング
Elasticsearch勉強会
Elasticsearch勉強会
最近Preview公開されたAzure テストサービスを試してみた
最近Preview公開されたAzure テストサービスを試してみた
DevOpsとか言う前にAWSエンジニアに知ってほしいアプリケーションのこと
DevOpsとか言う前にAWSエンジニアに知ってほしいアプリケーションのこと
サーバーレスで ガチ本番運用までやってるお話し
サーバーレスで ガチ本番運用までやってるお話し
モバイルファースト時代のクラウドネイティブアーキテクチャ JAWS DAYS 2015
モバイルファースト時代のクラウドネイティブアーキテクチャ JAWS DAYS 2015
jaws-ug kansai-special_aurora_20150207
jaws-ug kansai-special_aurora_20150207
Kubernetes on Alibaba Cloud
Kubernetes on Alibaba Cloud
ネットワークエンジニアがWeb開発をやってみて思ったこと
ネットワークエンジニアがWeb開発をやってみて思ったこと
クラウド入門(AWS編)
クラウド入門(AWS編)
Similar to 【 ヒカ☆ラボ 】LIFULL Home's androidアプリの開発の裏側について
de:code18 セッション資料
Angular でもっとAPIファースト・もっとモダンデザインなWebアプリケーションを作ろう!
Angular でもっとAPIファースト・もっとモダンデザインなWebアプリケーションを作ろう!
CData Software Japan
WordCamp Tokyo 2014のセッションでお話しした内容です。
WordPress APIで作るモバイルアプリ
WordPress APIで作るモバイルアプリ
アシアル株式会社
セッションID:MW04 セッションタイトル:誰のための API? Azure デベロッパーにもエンド ユーザーにも嬉しい API エコシステム活用アプローチ 日時:DAY2 ( 5 月 30 日 ) 16:10 - 17:00 部屋:Room G URL:https://www.microsoft.com/ja-jp/events/decode/2019session/detail.aspx?sid=MW04&kw=API 皆さん、Web API 使っていますか? 世界の API 管理市場は 2022 年までに現在の 2 倍 (3,000 億円) の市場規模になると予想されていて、今まで以上に API を使ったマッシュ アップは重要性を増すようです。 しかしながら、一口に API と言っても、GraphQL や OpenAPI (Swagger) といった各 API スタイルが成熟してきて、単純に REST という切り口だけでは収まらなくなってきました。また、その API のユースケースも、単純に開発者がマッシュ アップするだけでなく、Power BI や Azure Logic Apps といったサービスからエンド ユーザーが使ったりと、多様化が進んでいます。 そんな多様化され、今後ますます重要性が増す Web API は何を意識して開発するべきなのか? 昨今のメジャーな API スタイル (REST・GraphQL・OpenAPI・OData) と認証・認可 (OAuth) の仕組みに焦点を当てながら、Azure デベロッパーにとってもエンド ユーザーにとっても嬉しい「API エコシステムのあり方」についてお伝えします。 Session Info:https://gist.github.com/sugimomoto/930d33ee469e7e8afdb1925fd854261a
#decode19 #MW04 誰のための API? Azure デベロッパーにもエンド ユーザーにも嬉しいAPI エコシステム活用アプローチ
#decode19 #MW04 誰のための API? Azure デベロッパーにもエンド ユーザーにも嬉しいAPI エコシステム活用アプローチ
Kazuya Sugimoto
[AWSマイスターシリーズ] AWS Elastic Beanstalk
[AWSマイスターシリーズ] AWS Elastic Beanstalk
Amazon Web Services Japan
2019年10月に京都で開催された CTO Night & Day 2019 Fall Day1 モーニングセッションでの講演資料です
[CTO Night & Day 2019] グローバルのサービス展開に向けたマルチリージョンアーキテクチャ- #ctonight
[CTO Night & Day 2019] グローバルのサービス展開に向けたマルチリージョンアーキテクチャ- #ctonight
Amazon Web Services Japan
20201008 AWS独自設計推論チップInferentiaとInf1インスタンス
20201008 AWS独自設計推論チップInferentiaとInf1インスタンス
20201008 AWS独自設計推論チップInferentiaとInf1インスタンス
Hiroshi Tokoyo
2018年JAZUG福岡で発表したクラウドデザインパターンです。
オレ流クラウドデザイン
オレ流クラウドデザイン
Atsushi Kojima
WordPressAPIを利用してアプリケーションを作成するサンプル
WordPressAPI
WordPressAPI
Yuki Okamoto
[AWSマイスターシリーズ] AWS OpsWorks
[AWSマイスターシリーズ] AWS OpsWorks
Amazon Web Services Japan
2018年06月16日 JAZUG きたあず 業務システムをAppServiceで運用しよう #きたあず #jazug
20180616 業務システムをAppServiceで運用しよう #きたあず #jazug
20180616 業務システムをAppServiceで運用しよう #きたあず #jazug
Katsuya Shimizu
Sharoid Service Menu
Sharoid Service Menu
sharoid
スタートアップに勝手にオススメなインフラをまとめてみました。 https://www.facebook.com/actcatinc ↑ぜひFBページいいねおねがいします!w。定期的に情報シェアさせて頂きます。
おすすめインフラ! for スタートアップ
おすすめインフラ! for スタートアップ
Koichiro Sumi
JAWS-UG 沖縄 CMS祭り!で発表した資料です。
AWSについて @ JAWS-UG 沖縄 CMS祭り!
AWSについて @ JAWS-UG 沖縄 CMS祭り!
Yasuhiro Horiuchi
その他のAWSオンラインセミナー » https://aws.amazon.com/jp/about-aws/events/webinars/
20180717 AWS Black Belt Online Seminar AWS大阪ローカルリージョンの活用とAWSで実現するDisaster Rec...
20180717 AWS Black Belt Online Seminar AWS大阪ローカルリージョンの活用とAWSで実現するDisaster Rec...
Amazon Web Services Japan
20150709のThe BridgeでのLT資料です
UnityとAmazon Web Servicesで生み出す新しい価値
UnityとAmazon Web Servicesで生み出す新しい価値
Keisuke Nishitani
Androidアプリ開発の裏側
2018_02_01ヒカラボ登壇資料
2018_02_01ヒカラボ登壇資料
LIFULL Co., Ltd.
年間40万件以上発生している交通事故。DRIVE CHARTはAIドラレコで交通事故ゼロ社会を目指すサービスです。 DRIVE CHARTを実現する上では、AIの組み込みやIoT機器によるセンシング、膨大なデータ処理といったチャレンジがありました。 このセッションではその裏側を支えるサーバサイドおよびIoT機器の事例についてご紹介します。 サーバサイドにおいては、セキュアでスケーラブルなアーキテクチャの設計、多言語・多数のコンポーネント間のマイクロサービス化、IoT機器やAIシステムとの膨大な動画・データ処理連携における工夫、OpenAPIDocumentを利用したAPI自動テストの効率化をご紹介したいと思います。 IoT機器においては、リアルタイムでのAI活用で発生した課題とその対策・検証、IoT機器の移動体通信の仕組みと通信量削減の手法について具体的な事例をご紹介したいと思います。
DRIVE CHARTの裏側 〜 AI ☓ IoT ☓ ビッグデータを 支えるアーキテクチャ 〜
DRIVE CHARTの裏側 〜 AI ☓ IoT ☓ ビッグデータを 支えるアーキテクチャ 〜
DeNA
JAWS-UG LT 資料
AWS All Stars ~Lightning Talks x 13~
AWS All Stars ~Lightning Talks x 13~
Amazon Web Services Japan
https://www.oracle.co.jp/campaign/moderncloudday/2019/ 大規模なIT初期投資という大きなハードルをクラウドの普及が破壊し、クラウドに対する期待は資産コストの低減から俊敏な業務のIT化に大きくシフトしつつあります。 事業やマーケットの激しい変化に追従するためには、クラウドの俊敏さをフル活用した簡単かつ高速なアプリケーション開発による業務のIT化が不可欠です。 本セッションではコーディング・レスな開発をサポートするPaaSサービス群のご紹介を通じ、高速アプリケーション開発によるフットワークの軽いIT化の魅力をお届けします。
[Modern Cloud Day Tokyo 2019] 目指せコーディングレス!「繋げる」が実現するクラウド活用による高速アプリケーション開発の魅力
[Modern Cloud Day Tokyo 2019] 目指せコーディングレス!「繋げる」が実現するクラウド活用による高速アプリケーション開発の魅力
オラクルエンジニア通信
クラウド鎖国からクラウド維新へ
クラウド鎖国からクラウド維新へ
Cybozucommunity
Similar to 【 ヒカ☆ラボ 】LIFULL Home's androidアプリの開発の裏側について
(20)
Angular でもっとAPIファースト・もっとモダンデザインなWebアプリケーションを作ろう!
Angular でもっとAPIファースト・もっとモダンデザインなWebアプリケーションを作ろう!
WordPress APIで作るモバイルアプリ
WordPress APIで作るモバイルアプリ
#decode19 #MW04 誰のための API? Azure デベロッパーにもエンド ユーザーにも嬉しいAPI エコシステム活用アプローチ
#decode19 #MW04 誰のための API? Azure デベロッパーにもエンド ユーザーにも嬉しいAPI エコシステム活用アプローチ
[AWSマイスターシリーズ] AWS Elastic Beanstalk
[AWSマイスターシリーズ] AWS Elastic Beanstalk
[CTO Night & Day 2019] グローバルのサービス展開に向けたマルチリージョンアーキテクチャ- #ctonight
[CTO Night & Day 2019] グローバルのサービス展開に向けたマルチリージョンアーキテクチャ- #ctonight
20201008 AWS独自設計推論チップInferentiaとInf1インスタンス
20201008 AWS独自設計推論チップInferentiaとInf1インスタンス
オレ流クラウドデザイン
オレ流クラウドデザイン
WordPressAPI
WordPressAPI
[AWSマイスターシリーズ] AWS OpsWorks
[AWSマイスターシリーズ] AWS OpsWorks
20180616 業務システムをAppServiceで運用しよう #きたあず #jazug
20180616 業務システムをAppServiceで運用しよう #きたあず #jazug
Sharoid Service Menu
Sharoid Service Menu
おすすめインフラ! for スタートアップ
おすすめインフラ! for スタートアップ
AWSについて @ JAWS-UG 沖縄 CMS祭り!
AWSについて @ JAWS-UG 沖縄 CMS祭り!
20180717 AWS Black Belt Online Seminar AWS大阪ローカルリージョンの活用とAWSで実現するDisaster Rec...
20180717 AWS Black Belt Online Seminar AWS大阪ローカルリージョンの活用とAWSで実現するDisaster Rec...
UnityとAmazon Web Servicesで生み出す新しい価値
UnityとAmazon Web Servicesで生み出す新しい価値
2018_02_01ヒカラボ登壇資料
2018_02_01ヒカラボ登壇資料
DRIVE CHARTの裏側 〜 AI ☓ IoT ☓ ビッグデータを 支えるアーキテクチャ 〜
DRIVE CHARTの裏側 〜 AI ☓ IoT ☓ ビッグデータを 支えるアーキテクチャ 〜
AWS All Stars ~Lightning Talks x 13~
AWS All Stars ~Lightning Talks x 13~
[Modern Cloud Day Tokyo 2019] 目指せコーディングレス!「繋げる」が実現するクラウド活用による高速アプリケーション開発の魅力
[Modern Cloud Day Tokyo 2019] 目指せコーディングレス!「繋げる」が実現するクラウド活用による高速アプリケーション開発の魅力
クラウド鎖国からクラウド維新へ
クラウド鎖国からクラウド維新へ
More from LIFULL Co., Ltd.
2022/03/19 の「技育祭2020」での発表資料です。 今まで多くのエンジニアが育っていくのを見ている中で、 『新卒「から」活躍し続けるエンジニア』 が意識して大切にしている or 意識せずとも当たり前のように実行している、そんな特徴をまとめてみました。
20220319_新卒から活躍し続けるエンジニアが大切にしている5つのこと
20220319_新卒から活躍し続けるエンジニアが大切にしている5つのこと
LIFULL Co., Ltd.
2022年技育祭用スライド
趣味と仕事の違い、現場で求められるアプリケーションの可観測性
趣味と仕事の違い、現場で求められるアプリケーションの可観測性
LIFULL Co., Ltd.
Ltech#20 Kubernetesを用いたアプリケーション実行基盤の取り組み Kubernetesセキュリティの歩き方 LIFULLでは、マルチテナントのKuberntesクラスタを運用しています。 さまざまなアプリケーションが一つのクラスタに混在する中、OPA GatekeeperやConftestを用いてどのようにセキュアなKubernetesクラスタを実現しているのかについてご紹介します。 スピーカー:花塚 亮祐
Kubernetesセキュリティの歩き方
Kubernetesセキュリティの歩き方
LIFULL Co., Ltd.
Ltech#20 Kubernetesを用いたアプリケーション実行基盤の取り組み LIFULLの全社アプリケーション実行基盤 KEEL について 私たちのチームでは、LIFULLグループ全体で利用することを目的としたKubernetesベースのアプリケーション実行基盤KEELを開発しています。 LIFULLの目指す「あらゆるLIFEを、FULLに。」という世界観の実現にスケーラブルに貢献するアプリケーション実行基盤の取り組みをご紹介します。 スピーカー:相原 魁
LIFULLの全社アプリケーション実行基盤 KEEL について
LIFULLの全社アプリケーション実行基盤 KEEL について
LIFULL Co., Ltd.
Ltech#20 Kubernetesを用いたアプリケーション実行基盤の取り組み 定期的なKubernetesクラスタバージョンアップを安全に実現するために取り組んだ内容をお話します。 Kubernetesクラスタ構築とE2Eテストの自動化を行い、Admission Webhookを利用し後方互換を保ちながらバージョンアップをした事例などクラスタ運用戦略を交えてご紹介します。 スピーカー:川合 拓央
Kubernetesクラスタバージョンアップを支える技術
Kubernetesクラスタバージョンアップを支える技術
LIFULL Co., Ltd.
2021/11/30 第26回 Lucene/Solr勉強会 LIFULL HOME’SでのSolrの構成と運用の変遷 テクノロジー本部事業基盤ユニットプラットフォームグループ 磯野 圭輔
LIFULL HOME'SでのSolrの構成と運用の変遷
LIFULL HOME'SでのSolrの構成と運用の変遷
LIFULL Co., Ltd.
2021/08/19 Ltech#19 QA Talk Night ~LIFULL HOME'Sを支える品質保証の取り組み~ 松谷峰生
LIFULLでは新卒エンジニアに 丸一日のテスト研修を行なっている
LIFULLでは新卒エンジニアに 丸一日のテスト研修を行なっている
LIFULL Co., Ltd.
2021/08/19 Ltech#19 QA Talk Night ~LIFULL HOME'Sを支える品質保証の取り組み~ 星野 遥希
SaPID を導入するまでとそれから
SaPID を導入するまでとそれから
LIFULL Co., Ltd.
2021/07/13 Ltech#18 AIで住まい探しをスムーズに!【おとり物件予測&3D間取り】 横山 貴央
3D間取りを支える技術
3D間取りを支える技術
LIFULL Co., Ltd.
2021/07/13 Ltech#18 AIで住まい探しをスムーズに!【おとり物件予測&3D間取り】 神谷 慶
LIFULL HOME'Sのおとり広告予測モデルの開発
LIFULL HOME'Sのおとり広告予測モデルの開発
LIFULL Co., Ltd.
2021/06/08 Ltech#17 実録!LIFULLアジャイル導入までの挫折と取り組み 野澤 猛
大企業でアジャイル開発を推進できる条件とその心構え
大企業でアジャイル開発を推進できる条件とその心構え
LIFULL Co., Ltd.
2021/06/08 Ltech#17 実録!LIFULLアジャイル導入までの挫折と取り組み 水野 慎也
スクラムを利用したアジャイルオフショア開発のとりくみ
スクラムを利用したアジャイルオフショア開発のとりくみ
LIFULL Co., Ltd.
2021/05/13 Ltech#16 LIFULL HOME'S におけるエンジニア×マーケティングテクノロジー 孫 恩熙
実践 マーケティングテクノロジーエンジニア
実践 マーケティングテクノロジーエンジニア
LIFULL Co., Ltd.
2021/05/13 Ltech#16 LIFULL HOME'S におけるエンジニア×マーケティングテクノロジー 寒川 明好
エンジニア × マーケティングテクノロジー が必要な理由
エンジニア × マーケティングテクノロジー が必要な理由
LIFULL Co., Ltd.
2021/03/31 Ltech#15 未来の体験をつくるLIFULL LABの取り組み ~LIFULLのR&D部門とは~ 上野 哲史 秦 優(ホロラボ Co-Founder, 取締役 / デザイニウム 取締役 / for Our Kids Co-Founder, 取締役)
「空飛ぶホームズくん」を実現するVR技術
「空飛ぶホームズくん」を実現するVR技術
LIFULL Co., Ltd.
2021/03/31 Ltech#15 未来の体験をつくるLIFULL LABの取り組み ~LIFULLのR&D部門とは~ 細谷 宏昌
ニオイセンサで思索する街の新たな指標
ニオイセンサで思索する街の新たな指標
LIFULL Co., Ltd.
2021/03/31 Ltech#15 未来の体験をつくるLIFULL LABの取り組み ~LIFULLのR&D部門とは~ 山崎 晴貴
Well-beingを測る「LIFE WILL」開発の舞台裏
Well-beingを測る「LIFE WILL」開発の舞台裏
LIFULL Co., Ltd.
千葉 礼美
㊗ LINE新着物件通知 リリース!! PJ進行に沿って話す、 PjM/PdMとして やったこと
㊗ LINE新着物件通知 リリース!! PJ進行に沿って話す、 PjM/PdMとして やったこと
LIFULL Co., Ltd.
2021/03/02 Ltech#14 「LIFULL HOME'S」のフロントエンドについて語り尽くします! 嶌田 喬行
ウェブアクセシビリティ推進活動はじめました
ウェブアクセシビリティ推進活動はじめました
LIFULL Co., Ltd.
2021/03/02 Ltech#14 「LIFULL HOME'S」のフロントエンドについて語り尽くします! 中島拓哉
大きめレガシープロジェクトのフロント行く末
大きめレガシープロジェクトのフロント行く末
LIFULL Co., Ltd.
More from LIFULL Co., Ltd.
(20)
20220319_新卒から活躍し続けるエンジニアが大切にしている5つのこと
20220319_新卒から活躍し続けるエンジニアが大切にしている5つのこと
趣味と仕事の違い、現場で求められるアプリケーションの可観測性
趣味と仕事の違い、現場で求められるアプリケーションの可観測性
Kubernetesセキュリティの歩き方
Kubernetesセキュリティの歩き方
LIFULLの全社アプリケーション実行基盤 KEEL について
LIFULLの全社アプリケーション実行基盤 KEEL について
Kubernetesクラスタバージョンアップを支える技術
Kubernetesクラスタバージョンアップを支える技術
LIFULL HOME'SでのSolrの構成と運用の変遷
LIFULL HOME'SでのSolrの構成と運用の変遷
LIFULLでは新卒エンジニアに 丸一日のテスト研修を行なっている
LIFULLでは新卒エンジニアに 丸一日のテスト研修を行なっている
SaPID を導入するまでとそれから
SaPID を導入するまでとそれから
3D間取りを支える技術
3D間取りを支える技術
LIFULL HOME'Sのおとり広告予測モデルの開発
LIFULL HOME'Sのおとり広告予測モデルの開発
大企業でアジャイル開発を推進できる条件とその心構え
大企業でアジャイル開発を推進できる条件とその心構え
スクラムを利用したアジャイルオフショア開発のとりくみ
スクラムを利用したアジャイルオフショア開発のとりくみ
実践 マーケティングテクノロジーエンジニア
実践 マーケティングテクノロジーエンジニア
エンジニア × マーケティングテクノロジー が必要な理由
エンジニア × マーケティングテクノロジー が必要な理由
「空飛ぶホームズくん」を実現するVR技術
「空飛ぶホームズくん」を実現するVR技術
ニオイセンサで思索する街の新たな指標
ニオイセンサで思索する街の新たな指標
Well-beingを測る「LIFE WILL」開発の舞台裏
Well-beingを測る「LIFE WILL」開発の舞台裏
㊗ LINE新着物件通知 リリース!! PJ進行に沿って話す、 PjM/PdMとして やったこと
㊗ LINE新着物件通知 リリース!! PJ進行に沿って話す、 PjM/PdMとして やったこと
ウェブアクセシビリティ推進活動はじめました
ウェブアクセシビリティ推進活動はじめました
大きめレガシープロジェクトのフロント行く末
大きめレガシープロジェクトのフロント行く末
Recently uploaded
サイバーエージェントAI事業部の新卒研修で利用したスライドを公開します。
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
yassun7010
YouTube nnabla channelの次の動画で利用したスライドです。 【AI論文解説】Consistency ModelとRectified Flow https://youtu.be/3IKCrAPe55k Consistency ModelとRectified Flowに関連する以下の論文を紹介しています。 Consistency models(解説編Part1で紹介) - “Consistency Models,” ICML 2023. - “Improved Techniques for Training Consistency Models,” ICLR 2024. - “Consistency Trajectory Models: Learning Probability Flow ODE Trajectory of Diffusion,” ICLR 2024. Rectified flow(解説編Part2で紹介) - “Flow Straight and Fast: Learning to Generate and Transfer Data with Rectified Flow,” ICLR 2023. - “InstaFlow: One Step is Enough for High-Quality Diffusion-Based Text-to-Image Generation,” ICLR 2024.
【AI論文解説】Consistency ModelとRectified Flow
【AI論文解説】Consistency ModelとRectified Flow
Sony - Neural Network Libraries
2024/05/24の勉強会で発表されたものです。
MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。
MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。
iPride Co., Ltd.
2024/05/25 serverless Meetup osaka
2024年5月25日Serverless Meetup大阪 アプリケーションをどこで動かすべきなのか.pptx
2024年5月25日Serverless Meetup大阪 アプリケーションをどこで動かすべきなのか.pptx
ssuserbefd24
This presentation introduces a paper about offline reinforcement learning.
論文紹介: Exploiting semantic segmentation to boost reinforcement learning in vid...
論文紹介: Exploiting semantic segmentation to boost reinforcement learning in vid...
atsushi061452
This presentation introduces a paper about offline reinforcement learning.
論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes
論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes
atsushi061452
YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料) 2024年4月24日(水) 株式会社NTTデータグループ 技術開発本部 笠原 辰仁
YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)
YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)
NTT DATA Technology & Innovation
Security-JAWS【第33回】 勉強会 https://s-jaws.doorkeeper.jp/events/173294
Amazon Cognitoで実装するパスキー (Security-JAWS【第33回】 勉強会)
Amazon Cognitoで実装するパスキー (Security-JAWS【第33回】 勉強会)
keikoitakurag
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
CRI Japan, Inc.
https://iotlt.connpass.com/event/318403/
20240523_IoTLT_vol111_kitazaki_v1___.pdf
20240523_IoTLT_vol111_kitazaki_v1___.pdf
Ayachika Kitazaki
Recently uploaded
(10)
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
【AI論文解説】Consistency ModelとRectified Flow
【AI論文解説】Consistency ModelとRectified Flow
MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。
MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。
2024年5月25日Serverless Meetup大阪 アプリケーションをどこで動かすべきなのか.pptx
2024年5月25日Serverless Meetup大阪 アプリケーションをどこで動かすべきなのか.pptx
論文紹介: Exploiting semantic segmentation to boost reinforcement learning in vid...
論文紹介: Exploiting semantic segmentation to boost reinforcement learning in vid...
論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes
論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes
YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)
YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)
Amazon Cognitoで実装するパスキー (Security-JAWS【第33回】 勉強会)
Amazon Cognitoで実装するパスキー (Security-JAWS【第33回】 勉強会)
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
20240523_IoTLT_vol111_kitazaki_v1___.pdf
20240523_IoTLT_vol111_kitazaki_v1___.pdf
【 ヒカ☆ラボ 】LIFULL Home's androidアプリの開発の裏側について
1.
アプリAPIの マイクロサービス化 Amazon API Gateway
+ AWS Lambda 株式会社LIFULL 衛藤剛史
2.
© LIFULL Co.,Ltd.
本書の無断転載、複製を固く禁じます。2 自己紹介 • 衛藤 剛史(ETO TAKESHI) • 大分県大分市出身 • ~2014 SIerで開発経験 • 株式会社ネクスト(現 株式会社LIFULL)中途入社 • Androidアプリ・API(バックエンド)開発を担当
3.
© LIFULL Co.,Ltd.
本書の無断転載、複製を固く禁じます。3 本日お話すること • アプリAPIマイクロサービス化概要 • Amazon API Gateway / AWS Lambda • 実装環境詳細 • Testing • Deploy(APIリリース) • 運用・監視 • まとめ
4.
© LIFULL Co.,Ltd.
本書の無断転載、複製を固く禁じます。4 アプリAPI マイクロサービス化概要 より柔軟に・より高速に
5.
© LIFULL Co.,Ltd.
本書の無断転載、複製を固く禁じます。5 マイクロサービスとは 「個別に開発された小さなサービスを組み合わせ て、一つのサービスを提供する」 Service Salesforce Customer Success Blog https://www.salesforce.com/jp/blog/2016/03/microservices.html
6.
© LIFULL Co.,Ltd.
本書の無断転載、複製を固く禁じます。6 LIFULLとしてのマイクロサービス 「サービスごとに独立した環境を構築し、必要に 応じて連携してプロダクトを作る」 LIFULL HOME’S API
7.
© LIFULL Co.,Ltd.
本書の無断転載、複製を固く禁じます。7 マイクロサービス化の目的 • ネイティブアプリ専用のAPI • 高速な開発・リリース • 古いシステムからの脱却 • 新しい技術への挑戦 • 利用状況の可視化
8.
© LIFULL Co.,Ltd.
本書の無断転載、複製を固く禁じます。8 以前までの構成 common modules PC API Smart phone API Apps API Orchestration Layer DB / DAO
9.
© LIFULL Co.,Ltd.
本書の無断転載、複製を固く禁じます。9 マイクロサービス化 Apps API common modules Orchestration Layer DB / DAO PC API Smart phone API
10.
© LIFULL Co.,Ltd.
本書の無断転載、複製を固く禁じます。10 マイクロサービス構成 DB / DAO Lambda S3 Cloud Front API Gateway App AWS cloud Route53 Cognito
11.
© LIFULL Co.,Ltd.
本書の無断転載、複製を固く禁じます。11 Amazon API Gateway AWS Lambda サーバレスアーキテクチャにより運用いらず
12.
© LIFULL Co.,Ltd.
本書の無断転載、複製を固く禁じます。12 Amazon API Gateway アプリケーションの玄関 Touch • 最大で数十万の同時API呼び出し • 従量課金 • キャッシュ • Cloud Watchでロギング • クライアント側SDKが出力可能 • Lambda関数を指定
13.
© LIFULL Co.,Ltd.
本書の無断転載、複製を固く禁じます。13 AWS Lambda サーバー構築しなくてもコードを実行 • Lambda対応言語 • Node.js • Java • C# • Python • S3のイベントをフックしてコード実行 • API Gatewayと組み合わせてRESTful通信 Touch POINT 1関数1git repositoryで独立
14.
© LIFULL Co.,Ltd.
本書の無断転載、複製を固く禁じます。14 API GatewayとLambdaの制限 • スロットル制限1,000rps • アカウント当たりのAPI数 60 • Timeout 30秒 • Payloadサイズ 10MB • Etc… • ディスク容量 512MB • リクエスト本文のPayloadサイズ 6MB • 関数の同時実行数 • Etc… POINT 運用コストが減る代わりに、様々なデフォルト制限がある サービスの規模に応じてAWS Supportに上限緩和申請をする ※項目によっては緩和出来ないため、AWSのドキュメントを参照
15.
© LIFULL Co.,Ltd.
本書の無断転載、複製を固く禁じます。15 実装環境詳細 APIドキュメントの記載・使用しているツール・実装などについて
16.
© LIFULL Co.,Ltd.
本書の無断転載、複製を固く禁じます。16 Node.js サーバーサイドJavaScript環境 • 非同期型のイベント駆動 • 各接続ごとにコールバックが発火 • スレッドベースのモデルと対象的 • Non-blocking I/O • パッケージ管理はnpm(今回は使っていない※後述) function handler(event, context, callback) { // event => API Gatewayのパラメータ // context => Lambdaの状態 // callback => コールバック関数 }
17.
© LIFULL Co.,Ltd.
本書の無断転載、複製を固く禁じます。17 SWAGGER API I/Oドキュメントを作成・管理 http://swagger.io/ • THE WORLD’S MOST POPULAR API FRAMEWORK • Open Source Initiativeが採用 • RESTful APIドキュメントの管理 • Swagger SpecでI/Oを定義する(yaml/json) • Client用のSDKとサーバーコードの生成 • Electron化で社内用ツールとして使用
18.
© LIFULL Co.,Ltd.
本書の無断転載、複製を固く禁じます。18 SWAGGER
19.
© LIFULL Co.,Ltd.
本書の無断転載、複製を固く禁じます。19 SWAGGER POINT • 記述方式が統一されている • Editorが使いやすい • 一人三役 1. APIリファレンス 2. パラメータのValidation 3. API Gatewayデプロイ時の設定
20.
© LIFULL Co.,Ltd.
本書の無断転載、複製を固く禁じます。20 Yarn npmに変わるパッケージマネージャ • Facebookが2016/10にローンチ • Ultra Fast. • Mega Secure. • Super Reliable. • Offline Mode • Flat Mode • yarn.lockファイルでversion統一 • Qiita書きました $ npm install $ yarn (install) Ultra Fast!
21.
© LIFULL Co.,Ltd.
本書の無断転載、複製を固く禁じます。21 API実装方針 アプリ専用のAPIとして、自由自在にカスタマイズ • 1画面1~2APIコール • 解析に必要な情報は必須で送付 • OS / OS Version / App Version / Device Type • API Versioning • 画面に沿ったレスポンス構造 • 必要最低限なレスポンス Apart001 { "title": "Apart001", "overview": { "title": "概要", "label": "価格", "value": "3,000万円" }, "image": { "label": "外観" "url": "https://xxx" } } 概要 ■ 価格 3,000万円 外観
22.
© LIFULL Co.,Ltd.
本書の無断転載、複製を固く禁じます。22 Testing ユニットテスト、結合テスト、Lint
23.
© LIFULL Co.,Ltd.
本書の無断転載、複製を固く禁じます。23 Mocha テスティングフレームワーク • ユニットテスト • 結合テスト(APIテスト) • npm ライブラリrewireでprivate functionテスト • coverage計測 • CIサーバーでpush毎にnpm run test $ npm test Hoge #moge() ✔ should poge poge 1 passing (5ms) =========== Coverage summary =========== Statements : 100% ( 37/37 ) Branches : 100% ( 14/14 ) Functions : 100% ( 6/6 ) Lines : 100% ( 37/37 ) ========================================
24.
© LIFULL Co.,Ltd.
本書の無断転載、複製を固く禁じます。24 ESlint JavaScriptの静的検証ツール コーディング規約をすべて集約 • インデント幅 • スペーシング • var禁止(ES6) • スペルチェック • Etc… { "extends": "eslint:recommended”, "rules": { "indent": [2, 2, {"SwitchCase": 1, "VariableDeclarator": 2}], "quotes": [2, "single"], "space-before-blocks": [2, "always"], "comma-spacing": [1, {"before": false, "after": true}], "complexity": [2, 20], "no-var": 2, // etc "spellcheck/spell-checker": [1, {…} ] } }
25.
© LIFULL Co.,Ltd.
本書の無断転載、複製を固く禁じます。25 CircleCI 継続的インテグレーション(CI)サービス • ビルド毎にコンテナ起動 → 破棄 • 1コンテナは無料 • Github連携 • Slackにテスト結果通知 • yarnでも使える • Test前にlintも流す コードをpush CircleCIでテスト Github連携 Slackに結果通知
26.
© LIFULL Co.,Ltd.
本書の無断転載、複製を固く禁じます。26 CircleCIをyarnに対応させる ビルドからテストまでを高速化 machine: node: version: 4.2.2 post: - curl -o- -L https://yarnpkg.com/install.sh | bash dependencies: cache_directories: - "~/.cache/yarn" pre: - yarn --version override: - yarn install test: post: - yarn run lint deployment: master: … cache_directoriesの指定 POINT circle.yml
27.
© LIFULL Co.,Ltd.
本書の無断転載、複製を固く禁じます。27 Deploy(APIリリース)
28.
© LIFULL Co.,Ltd.
本書の無断転載、複製を固く禁じます。28 Gulp Node.jsベースのビルド自動化用ツールキット リリーススクリプトタスクの実行順序 1.Clean 2.lint実行 • Fail時はabort 3.UT実行 • Fail時はabort 4.zipに固める 5.AWS Lambdaへアップロード 6.Amazon API Gatewayにデプロイ
29.
© LIFULL Co.,Ltd.
本書の無断転載、複製を固く禁じます。29 リリース 毎日リリース • Web側のスケジュールを気にすることなくリリース • Web側への影響はほぼゼロレベル • Lambdaは切り戻しがすぐに行える • エンジニア全員がリリース作業を行える
30.
© LIFULL Co.,Ltd.
本書の無断転載、複製を固く禁じます。30 運用・監視 輪番体制で毎日監視 修正が必要であれば即修正・即リリース
31.
© LIFULL Co.,Ltd.
本書の無断転載、複製を固く禁じます。31 AWS CloudWatch AWSクラウドリソースとAWSで実行するアプリケー ションのモニタリングサービス デフォルトで使用可能なアラームの他、手動で様々なアラームを定義 • 5xxエラー • Lambdaの関数ごと • 任意の文字列(ログ内容から抽出) • Invocation Count • Count over limit • Throttles
32.
© LIFULL Co.,Ltd.
本書の無断転載、複製を固く禁じます。32 運用と監視 輪番体制でアプリエンジニアが監視 • アラームメールで検知 • Chatworkで報告 • Chatworkへの投稿自動化も可能なので試してみたい 修正が必要ならすぐに対応してリリース • アプリをリリースを最小限に • リポジトリが独立しているため、他APIへの影響はほぼゼロ
33.
© LIFULL Co.,Ltd.
本書の無断転載、複製を固く禁じます。33 まとめ
34.
© LIFULL Co.,Ltd.
本書の無断転載、複製を固く禁じます。34 マイクロサービス化を行ってみて • アプリ専用APIとして独立 • 開発がアプリチームで完結 • 影響範囲の把握が容易 • リリースがアプリチームで完結 • エンジニアのスキル向上 • 数値関連の把握 高速・柔軟な開発サイクルの確立
35.
© LIFULL Co.,Ltd.
本書の無断転載、複製を固く禁じます。35 告知など
36.
© LIFULL Co.,Ltd.
本書の無断転載、複製を固く禁じます。36 May 17-19, 2017 @Shoreline Amphitheatre Mountain View, California • Qiitaかエンジニアブログに参加レポート書きます! • 社外向け勉強会(報告会)を開催します! 参加してきます! Qiita(@etet-etet) LIFULL Creators Blog Google I/O 2017
Editor's Notes
開発の流れで
・タイトル話す ・より柔軟に より高速に → この後話すが、マイクロサービス化の結果柔軟に・高速に対応が可能になった
・独立したコンポーネントが集まって1つのサービスになる
・同じレイヤーで動いていたアプリAPIを完全に切り離す
・
これまで ・同じサーバー上でコンポーネント化されていた ・ライブラリの導入に時間がかかる&影響が大きい ・どこかで何か起こると全て引っ張られる可能性が
・アプリの部分をごっそり切り離し ・Web側とは依存がない => お互いに気にしなくても良い ・どちらかで何か起こったとしても影響が少なくなる
・おおまかな構成 図を使いながら話す ・次は、主にAPI GatewayとLambdaについて簡単に
・アプリからAPIを呼び出す部分 => アニメーション ・デフォルトの制限がある→後述する ・クライアント用SDKの出力(Android/iOS)→Androidは自作で行っている。クエリが多すぎると見通しが悪くなる 使うといいところ・・・リトライとか面倒くさい処理を実装しなくて済む
・Node.jsを使用 当初は0.1.36と4.3しかサポートされていなかった=>最近6.10がサポートされた ・POINT 1リポジトリで独立、1関数あたり1−2pathくらい リリースする際のリスクを最小限に押さえている 開発時の影響も少なくて済む 全API共通な処理 => ライブラリとして共通モジュール化 => API自体はリポジトリが別になるため、version upはリポジトリ内で完結する
・Lambdaが制限超えた場合はステータス429を返すので、リトライなどが必要 ・Payloadサイズの上限があるため、(後ほど例が出てくるが)出来る限りレスポンスは少なくした方が良い
・HPからの転記事項 ・標準的にはnpmだが、LIFULLでは最近yarnに切り替えた ・サンプルコードはLambdaの呼び出し部分 ・コールバック地獄にならないように、Promiseとかasyncとかを使う
・Open Source Initiative: オープンソースソフトウェアを促進することを目的とする組織である。 ・書きやすいのはYaml ・EditorからYaml/jsonをDLすることが出来る
・左側にSwagger Specフォーマットで記述 ・右側に記載内容が即時にビジュアル化 ・左上のFileからyaml/jsonをexport可能 ・レスポンス部分はJSON Schemaで記述出来るため、jsライブラリ TV4を使って入力値のvalidationを行う ・APIドキュメントの記述+validationが出来る優れもの
・左側にSwagger Specフォーマットで記述 ・右側に記載内容が即時反映される ・yamlのポインターも使用可能 配列レスポンスがある場合・・・Modelを定義して配列のポインターとして指定すれば良い ・左上のFileからyaml/jsonをexport可能 ・レスポンス部分はJSON Schemaで記述出来るため、jsライブラリ TV4を使って入力値のvalidationを行う ・APIドキュメントの記述+validationが出来る優れもの
・目的 => 早くしたい ・場合によっては2倍 ・UltraFast ・yarn.lock ・Qiita
・1画面1−2API(UIのみ) ・API Versioning 大体どこでもやっているが、下位ver互換 ・画面に沿ったレスポンス / 必要最低限 OSも送信しているので、iOS/Androidで項目を出し分ける 画面の例:なるべくAPI側に情報をもたせることで、緊急時にアプリのリリースをしなくてもAPIだけ変えればよい
・ビルド毎にコンテナ起動 → 破棄 ・1コンテナは無料 増やすことで、並列実行が可能になる(実行の高速化)
・circle.ymlというファイルで定義する ・cache_directoriesを指定することで、一度インストールしたものがキャッシュされ、次からは高速になる 場合によっては2分とか短縮
AWS側へのデプロイはAWS SDK for JavaScriptを使用
・祝日前は禁止など、若干の制約はある ・それでもAPIが独立したことで、変な依存がなくなり、サービスへの影響もほぼ0レベルにすることが可能
・アプリ専用API Webチームはアプリを気にせず、アプリチームはWebを気にせず開発 ・影響範囲の把握 全てアプリチームで開発されているため、影響がどこに及ぶか分かる リポジトリが独立しているため、そのAPIだけに集中して開発すれば良い ・リリースがアプリチームで完結 自分たちの裁量で決められる ・エンジニアのスキル向上 これまでは、iOS/Android専任が多かったが、どちらも出来るようになる ・数値関連の把握 季節要因等もあるため、自分たちで数値を把握し設計する
Download now