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
Introduction
Search
Kien Nguyen
April 13, 2018
0
51
Introduction
Kien Nguyen
April 13, 2018
Tweet
Share
More Decks by Kien Nguyen
See All by Kien Nguyen
Facebook Login Security
kiennt
0
54
Introduction to Django v2
kiennt
0
100
Clean code
kiennt
8
410
Introduction to Django
kiennt
0
110
Unix_Process.pdf
kiennt
2
8.2k
Happiness
kiennt
1
460
RTMP and RTMPE protocols
kiennt
2
650
Featured
See All Featured
Documentation Writing (for coders)
carmenintech
77
5.2k
We Analyzed 250 Million AI Search Results: Here's What I Found
joshbly
0
380
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
400
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
1.8k
Heart Work Chapter 1 - Part 1
lfama
PRO
3
35k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
122
21k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
0
220
Building AI with AI
inesmontani
PRO
1
600
Tell your own story through comics
letsgokoyo
0
770
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
Site-Speed That Sticks
csswizardry
13
1k
Transcript
Introduction
My Personal life
Worked in 3 start ups The first one is closed
The second one is still running, and got benefit The last one is just merged with another company
Deployment workflow Continuous Integration Development Implementation GitHub Code Review Auto
Deployment CircleCI pre-push hook Static code analysis Unit tests Test coverage Pull Request pre-receive hook Static code analysis Lint Unit tests Automation test... Merge Live GAE pre-receive hook again!
Backend Architecture
Main application Is written in Python Is deployed into Google
App Engine Use Google DataStore - a NoSQL database built on top of BigTable
Google DataStore A key-value database, support secondary index Auto scaling
natively. Eventually consistent by default Support transaction with 2 limitation + One transaction could only change 25 entities group + Limit number of write to an entities. Normally it is 1-5 write operations / second
Google DataStore Device a transaction into many chunks, each chunk
has maximum 25 entities Identify the hot entities, and the hot fields
Google DataStore User CircleRelationship Circle - members_count
Google DataStore User CircleRelationship Circle - id: c1 CircleCount -
id: c1_count
Google DataStore User CircleRelationship Circle - id: c1 CircleCount -
id: c1_count_1 CircleCount - id: c1_count_2 CircleCount - id: c1_count_3
Google DataStore Circle - id: c1 Memcache Datastore Worker Pubsub
Backend Architecture
Backend Architecture
Backend Architecture
Backend Architecture
Other I found a security issue related to Facebook login
on mobile application. Some application are: AirBnb, Kickstarter, Carousell,…
None