Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
TileCloud の開発を支える技術
Search
KamataRyo
June 28, 2019
Technology
2
370
TileCloud の開発を支える技術
2019/6/28 (金)に開催された KYOTO.git での LT のスライドです。
KamataRyo
June 28, 2019
Tweet
Share
More Decks by KamataRyo
See All by KamataRyo
NPX-shell-hacking
kamataryo
0
45
frontend-shikoku#1
kamataryo
1
690
Introducing of Map Warper
kamataryo
0
1.3k
wp-rest-api-and-amazon-polly
kamataryo
0
950
how-to-deploy-from-travis-ci
kamataryo
1
760
IoT with React
kamataryo
1
270
wacker#17-wreact
kamataryo
0
130
wakayamarb#37
kamataryo
1
90
Why have I preferred open source after leaving a public office?
kamataryo
1
5.9k
Other Decks in Technology
See All in Technology
役員・マネージャー・著者・エンジニアそれぞれの立場から見たAWS認定資格
nrinetcom
PRO
4
6.4k
AWSではじめる Web APIテスト実践ガイド / A practical guide to testing Web APIs on AWS
yokawasa
8
750
1行のコードから社会課題の解決へ: EMの探究、事業・技術・組織を紡ぐ実践知 / EM Conf 2025
9ma3r
12
4.3k
生成AI “再”入門 2025年春@WIRED TUESDAY EDITOR'S LOUNGE
kajikent
0
140
Apache Iceberg Case Study in LY Corporation
lycorptech_jp
PRO
0
350
[OpsJAWS Meetup33 AIOps] Amazon Bedrockガードレールで守る安全なAI運用
akiratameto
1
110
Potential EM 制度を始めた理由、そして2年後にやめた理由 - EMConf JP 2025
hoyo
2
2.8k
困難を「一般解」で解く
fujiwara3
7
1.5k
ディスプレイ広告(Yahoo!広告・LINE広告)におけるバックエンド開発
lycorptech_jp
PRO
0
480
技術スタックだけじゃない、業務ドメイン知識のオンボーディングも同じくらいの量が必要な話
niftycorp
PRO
0
110
偏光画像処理ライブラリを作った話
elerac
1
180
データエンジニアリング領域におけるDuckDBのユースケース
chanyou0311
9
2.4k
Featured
See All Featured
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
366
25k
Designing on Purpose - Digital PM Summit 2013
jponch
117
7.1k
Optimizing for Happiness
mojombo
376
70k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
12
1k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Statistics for Hackers
jakevdp
797
220k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
49k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
45
9.4k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.5k
Gamification - CAS2011
davidbonilla
80
5.2k
Transcript
TileCloud ͷ։ൃΛࢧ͑Δٕज़ 2019/06/
[email protected]
kamata, ryo
TileCloud ͱʁ • ਤϗεςΟϯάαʔϏε • ΣϒαΠτΞϓϦʹΈࠐΜͰར༻Ͱ͖·͢ • ਤͷλΠϧͱͦΕΛѻ͏ͨΊͷ JavaScript API
Λఏڙ͍ͯ͠·͢ • Φʔϓϯϕʔλʹ͚ͯ࡞ۀத
ਤͷλΠϧͱʁ • ϥελʔλΠϧ: 256 px ࢛ํͷը૾ϑΝΠϧෑ͖٧ΊͯਤΛදࣔ https://www.openstreetmap.org/copyright OpenStreetMap Contributors
ਤͷλΠϧͱʁ • ϕΫτϧλΠϧ: JSON ܗࣜͷͷू·ΓΛόΠφϦʹϑΥʔϚοτͨ͠ͷ • ΫϥΠΞϯταΠυʢϒϥβʣͰWebGL ΛͬͯਤΛϨ ϯμϦϯά •
ϓϩύςΟΛઃఆͯ͠ΫϥΠΞϯ τͰσβΠϯมߋ͕Մೳ ʢ3D දࣔͳͲʣ • ๛͔ͳදݱྗ • σʔλ͕ܰྔ
TileCloud Λࢼ͢
TileCloud Λࢼ͢
TileCloud Λࢼ͢ • ެࣜυΩϡϝϯτΛެ։தʂ https://docs.tilecloud.io • Embed API ͱ͍͏ JavaScript
API ެ։͍ͯ͠·͢ • HTML Λهड़͢Δ͚ͩͰਤΛදࣔɾΧελϚΠζͰ ͖·͢ • playground (https://playcode.io/290651) Ͱ؆୯ʹࢼ͢ ͜ͱͰ͖·͢
TileCloudͷ Πϯϑϥߏɾ։ൃڥ
Serverless • λΠϧ CloudFront + Lambda@Edge + S3 •
Embed API (JavaScript API) API Gateway + Lambda + DynamoDB • μογϡϘʔυ Cognito + API Gateway + Lambda + DynamoDB
GitHub • ϦϙδτϦϗεςΟϯά • CI αʔϏεͱͷ࿈ܞʢCircle CIɺ Netlifyʣ NetlifyɾGitHub Pages
• σϞαΠτɺμογϡϘʔυɺ੩తϦιʔεͷϗεςΟϯά
Circle CI • ίϛοτͷϓογϡʹԠͯࣗ͡ಈςετΛ࣮ߦ • Scheduled job Λ͍ɺ e2e ςετʢEnd
to End ςετʣΛఆظ࣮ߦ ʢ"ಥવյΕ͍ͯΔ" ঢ়گΛݕग़ʣ
Circle CI • CD (Continuous Deployment) • Git λά͕ϓογϡ͞Εͨ࣌ຊ൪ڥʹσϓϩΠ •
master ϒϥϯνͷίϛοτ͕ϓογϡ͞Εͨͱ͖։ ൃڥʹσϓϩΠ • ͦͷଞͷίϛοτςετͷΈΛ࣮ߦ
Circle CI • Circle CI ͷ Workflow Λ׆༻ • ఆٛͨ͠ෳͷ
job ͷ࣮ߦॱ Λ੍ޚ • ෳࡶͳϏϧυͰɺCI ͷ࣮ߦ ࣌ؒͷංେΛ͙ workflows: version: 2 build: jobs: - test: filters: tags: only: /.*/ branches: only: /.*/ - deploy: requires: - build filters: tags: only: /.*/ branches: only: master
Φʔτϝʔγϣϯ • GitHub ͱ֤छαʔϏε (CIɾNetlify ͳͲ) ͱͷΠϯςάϨʔγϣϯΛ׆༻ • σϓϩΠɾςετͳͲͷ։ൃఔΛըҰԽ •
CI Λ͍ਝͳϑΟʔυόοΫΛಘΔ • ΠϯϑϥߏͷࣗಈԽ • Serverless & CloudFormation ༷ʑͳϨΠϠʔͰࣗಈԽΛࢪ͠ɺଐਓԽΛ͙