0% found this document useful (0 votes)
18 views30 pages

Product Development

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
18 views30 pages

Product Development

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 30

Product Development

(Seminar)

1 1
Content
o Product Development
• Common Server Architecture
• Scale Up
• Scale Out
• Microservices

2
Product Development
o Stack Technology
o Server Infrastructure
o Development Process
o Team

o Concept: build “Independent Platform –


Independent Domain” Product

3
Scale Up vs Scale Out
o Scale Up
• Add-In hardware
• Solve businesses logic
• Optimize performance (need do everyday)
o Scale Out
• Architecture
• Add Instances
• Load Balancing

4
Common Server Architecture

5
Common Server Architecture

6
Ref: https://viblo.asia/p/mot-so-kien-truc-server-pho-bien-cho-cac-ung-dung-web-GrLZDX1OZk0?
Common Server Architecture

7
StoryBlocks Web Architecture

8
https://viblo.asia/p/web-architecture-101-07LKXNB8lV4
Stackoverflow Web Architecture

9
https://techtalk.vn/bi-mat-stack-overflow-da-deploy-ra-sao-phien-ban-2016.html
Stack Technology
o Client Problem
• UI/UX
o Backend Problem
• API
o Database Problem

10
Client Side vs Server Slide Rendering

11
Client Problem
o Google PageSpeed Insights - 100/100
o Five Principles
• Less Requests
• Small Resources
• Near Resources
• CDN
• Proxy
• Resource Priority
• User Experiences

12
Client Problem
o Merge
• Gulp
o Minify
o Compress
• GZIP
• Losses compression (Google PageSpeed Insights API)
o Cache
• JS Caching
• Local Storage
o Parallel
o Lazy & Prefetch
13
Backend problem
o Numbers everyone should know (http://highscalability.com/numbers-
everyone-should-know)
o Text based vs Binary based ()
• Set : Data/Object -> Serialize -> Compress -> Cache Service
• Get : Data/Object <- Deserialize <- Decompress -< Cache Service
o Data serialize
• Text Protocol
• JSON - 167 bytes, se: 6ms, de: 3ms
• XML - 235 bytes
• Binary
• Thrift - 64 bytes, se: 53ms, de: 1ms
• Protobuf - 31 bytes, se: 34 ms, de: 4ms
• Focus deserialize
• Compress
• Zstd (FB), Snapy, ZIP, GZIP
• Focus decompress
14
https://auth0.com/blog/beating-json-performance-with-protobuf/
Backend problem
o Caching
• Data Caching
• Memory Cache
• Redis
• Database
• HTTP Caching
• Varnish
• ETAG
o Query Data
• ORM vs Store Procedures

15
Datababase Problem
o RDBMS vs NoSQL
• File Group, Partitioning
• Indexes, Execution Query Plan
• Lock, Deadlock

o Failover, High Availability


o Data Warehouse (OLTP, OLAP)

o Microservices
• Replicate Master Data (Important)

16
Datababase Problem

17
s://blog.chuyencuadev.com/2017-09-21-he-thong-tiki-3-nam-truoc-nhu-the-nao-p1
Monolithic vs Microservices

18
https://techmaster.vn/posts/33594/gioi-thieu-ve-microservices
Monolithic vs Microservices

19
o Screen Shot 2018-12-03 at 5.05.56 PM.png

https://docs.microsoft.com/en-us/dotnet/standard/microservices-architecture/ 20
o Screen Shot 2018-12-03 at 5.05.56 PM.png

21
22
23
24
Microservice
o Authentication & Authorization
• JWT
• OAuth2

25
Microservices

tps://engineering.tiki.vn/x%C3%A1c-th%E1%BB%B1c-v%C3%A0-ph%C3%A2n-quy%E1%BB%81n-trong-microservices-37689e53c082 26
Microservices

27
Agile Software Development

28
CI/CD

GIT / Bitbucket

29
Discussion

30

You might also like