Skip to content

Commit

Permalink
update abstracts
Browse files Browse the repository at this point in the history
  • Loading branch information
puncsky committed Nov 3, 2019
1 parent c335cf5 commit 3f376b2
Show file tree
Hide file tree
Showing 53 changed files with 66 additions and 46 deletions.
1 change: 1 addition & 0 deletions .gitignore
@@ -0,0 +1 @@
.idea/
2 changes: 1 addition & 1 deletion en/11-three-programming-paradigms.md
Expand Up @@ -3,7 +3,7 @@ layout: post
title: "3 Programming Paradigms"
date: 2018-08-12 02:31
comments: true
categories: architecture
categories: system design
language: en
references:
- https://www.amazon.com/Clean-Architecture-Craftsmans-Software-Structure/dp/0134494164
Expand Down
2 changes: 1 addition & 1 deletion en/12-solid-design-principles.md
Expand Up @@ -3,7 +3,7 @@ layout: post
title: "SOLID Design Principles"
date: 2018-08-13 18:07
comments: true
categories: architecture
categories: system design
language: en
references:
- https://www.amazon.com/Clean-Architecture-Craftsmans-Software-Structure/dp/0134494164
Expand Down
2 changes: 1 addition & 1 deletion en/121-designing-facebook-photo-storage.md
Expand Up @@ -3,7 +3,7 @@ layout: post
title: "Designing Facebook photo storage"
date: 2019-01-04 12:11
comments: true
categories: categories
categories: system design
language: en
references:
- https://www.usenix.org/conference/osdi10/finding-needle-haystack-facebooks-photo-storage
Expand Down
1 change: 1 addition & 0 deletions en/122-key-value-cache.md
Expand Up @@ -4,6 +4,7 @@ title: "Key value cache"
date: 2019-01-06 23:24
comments: true
language: en
categories: system design
---

KV cache is like a giant hash map and used to reduce the latency of data access, typically by
Expand Down
1 change: 1 addition & 0 deletions en/123-ios-architecture-patterns-revisited.md
Expand Up @@ -5,6 +5,7 @@ date: 2019-01-10 02:26
comments: true
categories: architecture, mobile
language: en
categories: system design
references:
- https://medium.com/ios-os-x-development/ios-architecture-patterns-ecba4c38de52
---
Expand Down
2 changes: 1 addition & 1 deletion en/137-stream-and-batch-processing.md
Expand Up @@ -3,7 +3,7 @@ layout: post
title: "Stream and Batch Processing Frameworks"
date: 2019-02-16 22:13
comments: true
categories: architecture
categories: system design
language: en
references:
- https://storage.googleapis.com/pub-tools-public-publication-data/pdf/43864.pdf
Expand Down
2 changes: 1 addition & 1 deletion en/145-introduction-to-architecture.md
Expand Up @@ -3,7 +3,7 @@ layout: post
title: "Introduction to Architecture"
date: 2019-05-11 15:52
comments: true
categories: architecture
categories: system design
language: en
references:
- https://puncsky.com/notes/10-thinking-software-architecture-as-physical-buildings
Expand Down
2 changes: 1 addition & 1 deletion en/169-how-to-write-solid-code.md
Expand Up @@ -3,7 +3,7 @@ layout: post
title: "How to write solid code?"
date: 2019-09-25 02:29
comments: true
categories: categories
categories: system design
language: en
---

Expand Down
2 changes: 1 addition & 1 deletion en/178-lyft-marketing-automation-symphony.md
Expand Up @@ -3,7 +3,7 @@ layout: post
title: "Lyft's Marketing Automation Platform -- Symphony"
date: 2019-10-09 23:30
comments: true
categories: marketing, architecture
categories: marketing, system design
language: en
slides: false
references:
Expand Down
2 changes: 1 addition & 1 deletion en/2016-02-13-crack-the-system-design-interview.md
Expand Up @@ -3,7 +3,7 @@ layout: post
title: "Crack the System Design Interview"
date: 2016-2-14 01:27
comments: true
categories: big_data
categories: system design
language: en
---

Expand Down
2 changes: 1 addition & 1 deletion en/2018-07-10-cloud-design-patterns.md
Expand Up @@ -3,7 +3,7 @@ layout: post
title: "Cloud Design Patterns"
date: 2018-07-10 11:16
comments: true
categories: design_patterns
categories: design patterns, system design
language: en
references:
- https://www.slideshare.net/Leananalytics/lean-analytics-for-startups-and-enterprises
Expand Down
2 changes: 1 addition & 1 deletion en/2018-07-20-experience-deep-dive.md
Expand Up @@ -3,7 +3,7 @@ layout: post
title: "Experience Deep Dive"
date: 2018-07-20 11:54
comments: true
categories: system_design_and_architecture
categories: system design
language: en
---

Expand Down
2 changes: 1 addition & 1 deletion en/2018-07-21-data-partition-and-routing.md
Expand Up @@ -3,7 +3,7 @@ layout: post
title: "Data Partition and Routing"
date: 2018-07-20 11:54
comments: true
categories: system_design_and_architecture
categories: system design
language: en
---

Expand Down
2 changes: 1 addition & 1 deletion en/2018-07-22-b-tree-vs-b-plus-tree.md
Expand Up @@ -3,7 +3,7 @@ layout: post
title: "B tree vs. B+ tree"
date: 2018-07-22 11:54
comments: true
categories: system_design_and_architecture
categories: system design
language: en
references:
- https://stackoverflow.com/questions/870218/differences-between-b-trees-and-b-trees
Expand Down
2 changes: 1 addition & 1 deletion en/2018-07-23-load-balancer-types.md
Expand Up @@ -3,7 +3,7 @@ layout: post
title: "Load Balancer Types"
date: 2018-07-23 11:54
comments: true
categories: system_design_and_architecture
categories: system design
language: en
references:
- https://www.amazon.com/Practice-Cloud-System-Administration-Practices/dp/032194318X
Expand Down
2 changes: 1 addition & 1 deletion en/2018-07-24-replica-and-consistency.md
Expand Up @@ -3,7 +3,7 @@ layout: post
title: "Replica, Consistency, and CAP theorem"
date: 2018-07-24 11:54
comments: true
categories: system_design_and_architecture
categories: system design
language: en
references:
- https://www.infoq.com/articles/cap-twelve-years-later-how-the-rules-have-changed
Expand Down
2 changes: 1 addition & 1 deletion en/2018-07-26-acid-vs-base.md
Expand Up @@ -3,7 +3,7 @@ layout: post
title: "ACID vs BASE"
date: 2018-07-26 11:54
comments: true
categories: system_design_and_architecture
categories: system design
language: en
references:
- https://www.infoq.com/articles/cap-twelve-years-later-how-the-rules-have-changed
Expand Down
2 changes: 1 addition & 1 deletion en/38-how-to-stream-video-over-http.md
Expand Up @@ -3,7 +3,7 @@ layout: post
title: "How to stream video over HTTP for mobile devices? HTTP Live Streaming (HLS)"
date: 2018-09-07 21:32
comments: true
categories: interview
categories: system design
language: en
references:
- https://developer.apple.com/library/ios/documentation/NetworkingInternet/Conceptual/StreamingMediaGuide/HTTPStreamingArchitecture/HTTPStreamingArchitecture.html#//apple_ref/doc/uid/TP40008332-CH101-SW2
Expand Down
2 changes: 1 addition & 1 deletion en/41-how-to-scale-a-web-service.md
Expand Up @@ -3,7 +3,7 @@ layout: post
title: "How to scale a web service?"
date: 2018-09-11 21:32
comments: true
categories: architecture
categories: system design
language: en
references:
- https://akfpartners.com/growth-blog/scale-cube
Expand Down
Expand Up @@ -3,7 +3,7 @@ layout: post
title: "How to design robust and predictable APIs with idempotency?"
date: 2018-09-12 12:55
comments: true
categories: architecture
categories: system design
language: en
references:
- https://stripe.com/blog/idempotency
Expand Down
2 changes: 1 addition & 1 deletion en/45-how-to-design-netflix-view-state-service.md
Expand Up @@ -3,7 +3,7 @@ layout: post
title: "How Netflix Serves Viewing Data?"
date: 2018-09-13 20:39
comments: true
categories: architecture
categories: system design
language: en
references:
- http://techblog.netflix.com/2015/01/netflixs-viewing-data-how-we-know-where.html
Expand Down
2 changes: 1 addition & 1 deletion en/49-facebook-tao.md
Expand Up @@ -3,7 +3,7 @@ layout: post
title: "How Facebook Scale its Social Graph Store? TAO"
date: 2018-09-18 22:50
comments: true
categories: architecture
categories: system design
language: en
references:
- http://www.cs.cornell.edu/courses/cs6410/2015fa/slides/tao_atc.pptx
Expand Down
2 changes: 1 addition & 1 deletion en/61-what-is-apache-kafka.md
Expand Up @@ -3,7 +3,7 @@ layout: post
title: "What is Apache Kafka?"
date: 2018-09-27 04:06
comments: true
categories: architecture
categories: system design
language: en
references:
- https://kafka.apache.org/intro
Expand Down
2 changes: 1 addition & 1 deletion en/63-soft-skills-interview.md
Expand Up @@ -3,7 +3,7 @@ layout: post
title: "What can we communicate in soft skills interview?"
date: 2018-10-01 08:56
comments: true
categories: interview
categories: system design
language: en
references:
- https://www.jianshu.com/p/73b1d5682fd3
Expand Down
2 changes: 1 addition & 1 deletion en/66-public-api-choices.md
Expand Up @@ -3,7 +3,7 @@ layout: post
title: "Public API Choices"
date: 2018-10-04 01:38
comments: true
categories: architecture
categories: system design
language: en
---

Expand Down
2 changes: 1 addition & 1 deletion en/68-bloom-filter.md
Expand Up @@ -3,7 +3,7 @@ layout: post
title: "Bloom Filter"
date: 2018-10-09 12:39
comments: true
categories: data structures
categories: system design, data structures
language: en
references:
- https://en.wikipedia.org/wiki/Bloom_filter
Expand Down
2 changes: 1 addition & 1 deletion en/69-skiplist.md
Expand Up @@ -3,7 +3,7 @@ layout: post
title: "Skiplist"
date: 2018-10-09 12:39
comments: true
categories: data structures
categories: system design, data structures
language: en
references:
- https://en.wikipedia.org/wiki/Skip_list
Expand Down
2 changes: 1 addition & 1 deletion en/78-four-kinds-of-no-sql.md
Expand Up @@ -3,7 +3,7 @@ layout: post
title: "4 Kinds of No-SQL"
date: 2018-10-17 00:49
comments: true
categories: architecture
categories: system design
language: en
references:
- https://www.puncsky.com/blog/2016-02-13-crack-the-system-design-interview
Expand Down
2 changes: 1 addition & 1 deletion en/80-relational-database.md
Expand Up @@ -3,7 +3,7 @@ layout: post
title: "Intro to Relational Database"
date: 2018-10-18 23:19
comments: true
categories: architecture
categories: system design
language: en
references:
- https://www.puncsky.com/blog/2016-02-13-crack-the-system-design-interview
Expand Down
2 changes: 1 addition & 1 deletion en/83-lambda-architecture.md
Expand Up @@ -3,7 +3,7 @@ layout: post
title: "Lambda Architecture"
date: 2018-10-23 10:30
comments: true
categories: architecture
categories: system design
language: en
references:
- https://www.amazon.com/Big-Data-Principles-practices-scalable/dp/1617290343
Expand Down
3 changes: 2 additions & 1 deletion zh-CN/125-designing-facebook-photo-storage.md
Expand Up @@ -3,8 +3,9 @@ layout: post
title: "设计Facebook图片存储系统"
date: 2019-01-14 18:09
comments: true
categories: categories
categories: system design
language: zh-cn
abstract: Facebook做图片存储的原因有两个:PB级别的Blob数据量;传统的基于NFS的设计都存在元数据瓶颈,庞大的元数据严重限制了它的命中率。解决方案是把数以十万计的图像聚集到单个Haystack存储文件中,从而消除了元数据负荷。
references:
- https://www.usenix.org/conference/osdi10/finding-needle-haystack-facebooks-photo-storage
- https://www.facebook.com/notes/facebook-engineering/needle-in-a-haystack-efficient-storage-of-billions-of-photos/76191543919
Expand Down
3 changes: 2 additions & 1 deletion zh-CN/126-how-to-stream-video-over-http.md
Expand Up @@ -3,8 +3,9 @@ layout: post
title: "如何使用HTTP协议向移动设备传输视频? HTTP Live Streaming (HLS)"
date: 2019-01-14 18:58
comments: true
categories: interview
categories: interview, system design
language: zh-cn
abstract: 使用HTTP直播流的移动视频播放服务有以下两个问题:手机的内存和外存有限;受制于不稳定的网络连接以及不同的带宽,需要在传输过程中动态调整传输视频的质量。我们可以通过服务器层面和客户端两个层面解决。
references:
- https://developer.apple.com/library/ios/documentation/NetworkingInternet/Conceptual/StreamingMediaGuide/HTTPStreamingArchitecture/HTTPStreamingArchitecture.html#//apple_ref/doc/uid/TP40008332-CH101-SW2
---
Expand Down
2 changes: 1 addition & 1 deletion zh-CN/127-ios-architecture-patterns-revisited.md
Expand Up @@ -3,7 +3,7 @@ layout: post
title: "再窥iOS架构模式"
date: 2019-01-17 03:07
comments: true
categories: architecture, mobile
categories: architecture, mobile, system design
language: zh-cn
references:
- https://medium.com/ios-os-x-development/ios-architecture-patterns-ecba4c38de52
Expand Down
1 change: 1 addition & 0 deletions zh-CN/135-designing-uber.md
Expand Up @@ -4,6 +4,7 @@ title: "设计优步打车服务"
date: 2019-02-08 22:18
comments: true
categories: system design
abstract: 优步打车设计的要求:为全球的交通运输市场提供服务;大规模的实时调度;后端设计;优步打车设计流程:架构;微服务;调度服务;支付服务;用户档案服务和行程记录服务、通知推送服务。
language: zh-cn
references:
- https://medium.com/yalantis-mobile/uber-underlying-technologies-and-how-it-actually-works-526f55b37c6f
Expand Down
2 changes: 1 addition & 1 deletion zh-CN/138-stream-and-batch-processing.md
Expand Up @@ -3,7 +3,7 @@ layout: post
title: "流处理和批处理框架"
date: 2019-02-27 02:20
comments: true
categories: architecture
categories: architecture, system design
language: zh-cn
references:
- https://storage.googleapis.com/pub-tools-public-publication-data/pdf/43864.pdf
Expand Down
3 changes: 2 additions & 1 deletion zh-CN/151-introduction-to-architecture.md
Expand Up @@ -3,8 +3,9 @@ layout: post
title: "构架入门"
date: 2019-06-11 22:06
comments: true
categories: architecture
categories: architecture, system design
language: zh-CN
abstract: 架构服务于软件系统的整个生命周期,使软件系统易于理解,开发,测试,部署和操作,其目标是最小化每个业务用例的人力资源成本。O’Reilly出版的《软件架构》介绍了五种基本架构:分层架构;事件驱动架构;微核架构;微服务架构;基于空间的架构。
references:
- https://puncsky.com/notes/10-thinking-software-architecture-as-physical-buildings
- https://www.oreilly.com/library/view/software-architecture-patterns/9781491971437/ch01.html
Expand Down
3 changes: 2 additions & 1 deletion zh-CN/176-lyft-marketing-automation-symphony.md
Expand Up @@ -3,9 +3,10 @@ layout: post
title: "Lyft 的营销自动化平台 Symphony"
date: 2019-10-02 20:53
comments: true
categories: marketing, architecture
categories: marketing, architecture, system design
language: zh-CN
slides: false
abstract: 广告投放如何花更少的钱用更少的人得到更高回报?Lyft 的答案是自动化,包括LTV 预测模块 、预算分配模块、投放模块。当人从繁琐的投放任务解放出来,专注于理解用户、理解渠道、理解自身要传达给受众的信息之后,就能够获得更好的投放效果
references:
- https://eng.lyft.com/lyft-marketing-automation-b43b7b7537cc
---
Expand Down
3 changes: 2 additions & 1 deletion zh-CN/18-soft-skills-interview.md
Expand Up @@ -3,8 +3,9 @@ layout: post
title: "软技能面试可以谈点什么?"
date: 2018-08-21 16:43
comments: true
categories: interview
categories: system design
language: zh-cn
abstract: 同等级技能下,不会表达自己,工作机会也会被抢走。面试的本质是三个问题:想干不能干;想干不想干;合拍不合拍。面试的五个谈话点:逆境;影响力;技术水平;合拍;成就。如何准备这五个谈话点:多与人交往,多尝试累积经验,多学技术,善于调研。
references:
- https://www.jianshu.com/p/73b1d5682fd3
- https://www.amazon.com/dp/B01NAI5Q6H/
Expand Down
Empty file.
2 changes: 1 addition & 1 deletion zh-CN/183-designing-l7-load-balancer.md
@@ -1,11 +1,11 @@

---
layout: post
title: "设计负载均衡器"
date: 2019-10-19 15:21
comments: true
categories: system design
language: zh-CN
abstract: 互联网服务往往要处理来自全世界的流量,但是,一个服务器只能够同时服务有限数量的请求。因此,通常我们会有一个服务器集群来共同处理这些流量。那么问题来了,怎样才能够让这些流量均匀地分布到不同的服务器上呢?
slides: false
references:
- https://blogs.dropbox.com/tech/2019/09/enhancing-bandaid-load-balancing-at-dropbox-by-leveraging-real-time-backend-server-load-information/
Expand Down
1 change: 1 addition & 0 deletions zh-CN/184-designing-i18n-solutions.md
Expand Up @@ -3,6 +3,7 @@ layout: post
title: 设计以人为本的国际化(i18n) 工程方案
date: 2019-10-27 17:22
comments: true
abstract: 硅谷公司的产品大多面向全球市场,而国际化正是跨国公司征战全球市场的战略要地。我们这次设计的 i18n 工程方案主要是解决网站和移动 App 开发过程中的三大问题:1. 语言、2. 时间与时区、3. 数字与货币。如同一切软件系统的开发一样,国际化这件事情没有银弹,好的作品都是靠基本功一点一滴磨出来的。
categories: system design
language: zh-CN
---
Expand Down
3 changes: 2 additions & 1 deletion zh-CN/37-key-value-cache.md
Expand Up @@ -3,8 +3,9 @@ layout: post
title: "键值缓存有哪些用法?"
date: 2018-09-06 21:32
comments: true
categories: interview
categories: system design
language: zh-cn
abstract: Key Value Cache的本质是为了减少访问数据的延迟。Cache设计的常见策略有read-through/write-through和cache aside.具体的策略要根据你的业务需求具体选择。
references:
- https://www.usenix.org/system/files/conference/nsdi13/nsdi13-final170_update.pdf
- https://coolshell.cn/articles/17416.html
Expand Down
3 changes: 2 additions & 1 deletion zh-CN/42-how-to-scale-a-web-service.md
Expand Up @@ -3,8 +3,9 @@ layout: post
title: "如何构建大规模的网站服务?"
date: 2018-09-11 21:32
comments: true
categories: architecture
categories: system design
language: zh-cn
abstract: 如何构建大规模的网站服务?一个字:拆。AKF扩展立方告诉了我们”拆”的三个纬度:水平扩展;业务拆分;数据分割。
references:
- https://akfpartners.com/growth-blog/scale-cube
- https://akfpartners.com/growth-blog/akf-scale-cube-ze-case-for-z-axis
Expand Down

0 comments on commit 3f376b2

Please sign in to comment.