![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
成为架构师
文章平均质量分 89
Nevercome_
无尽的技术
展开
-
【服务化重构日记2】在项目中引入美团的分布式id生成系统Leaf
美团Leaf分布式id生成系统的使用原创 2021-04-26 16:01:51 · 562 阅读 · 0 评论 -
【服务化重构日记1】菜单角色用户等系统表单独成库之后以前join操作的数据权限怎么处理?
有这样子的需求,学生、老师、门店教务管理员、多门店教务管理员、机构教务管理员,共五类角色,要查看学生上课签到记录,数据库查询层面应该怎么做数据范围的约束?分库分表的场景下又该如何做?原创 2021-04-24 16:37:57 · 222 阅读 · 0 评论 -
【成为架构师4-4】解耦:IP耦合,公共库耦合,解耦实践
两个架构中的典型耦合场景:IP耦合、公共库耦合。解决办法分别是用内网域名替换内网IP,将公共库个性化的代码上浮到业务线,共性代码下沉为服务。原创 2021-03-17 22:58:27 · 407 阅读 · 3 评论 -
【成为架构师4-3】解耦:MQ,平滑迁移方案
MQ平滑迁移的三步骤:消费方双向订阅、生产方升级为新发布、下线旧订阅原创 2021-03-16 14:19:32 · 545 阅读 · 1 评论 -
【成为架构师4-2】解耦:MQ,互联网架构的解耦利器
MQ的四个典型使用场景:数据驱动的依赖任务,上游不关心执行结果,上游关心执行结构但是执行结果时间较长,削峰填谷、流量控制、保护下游原创 2021-03-15 20:07:00 · 1116 阅读 · 3 评论 -
【成为架构师4-1】解耦:配置架构演进与配置中心
配置架构演进的三个阶段:配置私藏、全局配置文件、配置中心原创 2021-03-14 12:10:50 · 343 阅读 · 1 评论 -
【成为架构师3-20】章节小结:千万流量,这些技术就够了:服务化、数据库、缓存
千万流量篇技术总结:服务化、数据库、缓存原创 2020-10-11 10:18:00 · 318 阅读 · 1 评论 -
【成为架构师3-19】缓存:究竟是选择redis还是memcache
究竟是选择redis还是memcache,说白了要根据业务场景原创 2020-10-05 17:05:44 · 176 阅读 · 0 评论 -
【成为架构师3-18】缓存:并发更新造成token相互失效的问题
并发更新造成token相互失效的问题与解决方案原创 2020-10-05 16:51:49 · 658 阅读 · 1 评论 -
【成为架构师3-17】缓存:数据一致性优化二次淘汰法
数据冗余必然引发一致性问题,而数据库与缓存的不一致性问题可能会造成缓存内长时间为旧数据,针对这一情况我们通常有二次淘汰和设置超时时间两种解决方法。原创 2020-10-03 16:11:47 · 639 阅读 · 2 评论 -
【成为架构师3-16】缓存:互联网缓存的最佳实践Cache Aside Pattern
互联网缓存的最佳实践Cache Aside Pattren的读实践和写实践原创 2020-10-03 14:56:03 · 300 阅读 · 0 评论 -
【成为架构师3-15】缓存:常见误用与实践
常见的缓存误用:使用缓存作为服务之间数据传递的媒介;不考虑缓存雪崩的设计;调用方缓存数据;多个服务使用一个缓存实例。原创 2020-10-03 10:28:37 · 240 阅读 · 1 评论 -
【成为架构师3-14】缓存:进程内缓存该怎么玩
进程内缓存的优缺点,一致性问题的三种解决方案,以及适用场景原创 2020-10-01 00:12:00 · 275 阅读 · 0 评论 -
【成为架构师3-13】数据库:水平切分,数据库秒级扩容
前面两篇文章讨论了追日志方案、双写方案来完成数据库的平滑扩容,这次来讲讲水平切分的数据库秒级扩容方案原创 2020-08-24 11:18:57 · 338 阅读 · 0 评论 -
【成为架构师3-12】数据库:扩展性,平滑扩展如何实现
上一篇介绍了追日志的平滑扩展方案,本篇介绍另一种“双写模式”的平滑扩展方案原创 2020-08-24 08:56:21 · 341 阅读 · 0 评论 -
【成为架构师3-11】数据库:扩展性要如何解决
MySQL扩展性问题:1. 底层的表结构变更;2. 分库个数变化;3. 底层存储介质变换原创 2020-08-23 22:58:51 · 587 阅读 · 1 评论 -
【成为架构师3-10】数据库:主从一致性和主主一致性
数据库的主从不一致和主主不一致问题解决的方法论。原创 2020-08-17 01:40:27 · 386 阅读 · 1 评论 -
【成为架构师3-9】数据库:垂直拆分与高可用
数据库的高可用和垂直拆分原创 2020-08-17 00:37:17 · 195 阅读 · 0 评论 -
【成为架构师3-8】数据库:如何提升数据库的读性能
本篇的内容主要是数据库读性能的提升和引出数据库设计要考虑哪些问题原创 2020-08-16 23:00:56 · 291 阅读 · 0 评论 -
【成为架构师3-6】服务化:连接池,微服务的基础组件
在互联网架构中,我们常有访问下游的需求,包括但不限于:微服务、缓存、数据库。而连接池就是这些访问中的一个重要组件,本篇主要是对微服务中的重要组件 —— 连接池的核心设计思路进行一个简单的阐释。原创 2020-08-03 17:52:54 · 510 阅读 · 1 评论 -
【成为架构师3-5】服务化:必须搞定负载均衡
本篇是对微服务架构中实现负载均衡的一个通用思路的阐述,主要涉及:同构环境和异构下的负载均衡,静态权重,动态权重,过载保护等原创 2020-07-30 17:01:16 · 262 阅读 · 0 评论 -
【成为架构师3-4】服务化:必须支持高并发
本篇是对微服务架构中高并发一个通用思路的阐述,侧重的是要实现高并发的架构基础,也就是提升性能,并不涉及任何实现的细节,也不对应某个具体的业务场景原创 2020-07-24 14:50:16 · 251 阅读 · 0 评论 -
【成为架构师3-3】服务化:必须保证高可用
微服务中:端到反向代理、反向代理到站点、站点应用到微服务、微服务到缓存、微服务到读库、微服务到写库的多个层面高可用的架构思路。原创 2020-07-23 13:16:59 · 255 阅读 · 0 评论 -
【成为架构师3-2】服务化:微服务的粒度,究竟要细到什么程度
微服务的四种粒度:统一服务层、子业务服务、一个数据库一个服务、一个接口一个服务原创 2020-07-21 19:45:13 · 721 阅读 · 0 评论 -
【成为架构师3-1】服务化:微服务架构,究竟解决什么问题
本篇作为微服务的开篇,只是简单的阐述一下微服务架构能带来的优势,以及微服务架构的弊端原创 2020-07-21 12:07:17 · 323 阅读 · 1 评论 -
【成为架构师2-10】章节小结:百万流量,这些技术就够了
百万流量常用的架构技术原创 2020-07-17 00:56:26 · 414 阅读 · 1 评论 -
【成为架构师2-9】早期性能优化-三大分离:读写分离与前后台分离
上一篇介绍了三大分离设计中的动静分离,本篇介绍了之后的两种——读写分离、前后台分离原创 2020-07-11 10:42:54 · 387 阅读 · 1 评论 -
【成为架构师2-8】早期性能优化-三大分离之一:动静分离
早期,对架构影响最小,提升性能最快的方案就是实施三大分离架构:1. 动静分离;2. 读写分离;3. 前后台分离。静态页面与动态页面,分开不同的系统访问的架构方法原创 2020-07-10 01:32:09 · 379 阅读 · 0 评论 -
【成为架构师2-7】TCP负载均衡,长连接的负载均衡策略
接入层,TCP:长连接的负载均衡策略原创 2020-07-06 19:52:57 · 3429 阅读 · 0 评论 -
【成为架构师2-6】CDN:就近访问,缓解网络拥塞
CDN(content delivery network)即内容分发网络,它的核心就是实现**就近访问**CDN非常适合用于静态资源的加速访问(js、css、html、多媒体文件等)原创 2020-07-03 13:02:36 · 1039 阅读 · 0 评论 -
【成为架构师2-5】维护session一致性的四种方案
四种维护session一致性的方案:1 session同步2 客户端存储3 反向代理4 后端统一存储原创 2020-07-02 19:15:48 · 423 阅读 · 0 评论 -
【成为架构师2-4】反向代理与DNS轮询:接入层的架构演进
问题引入:1. nginx是2012年才流行起来的技术,在反向代理之前的怎么对流量承受能力进行扩容呢?2. nginx成为了瓶颈应该怎么办原创 2020-07-02 13:51:22 · 457 阅读 · 1 评论 -
【成为架构师2-3】反向代理:接入层扩容,负载均衡
1 单机遗留问题上一篇讨论了伪分布式与垂直拆分的问题垂直拆分,解除了子系统耦合,但是对于同一个垂直站点子系统,仍然是一个“单体架构”集群的实现,通常需要引入反向代理2 反向代理,接入层扩容用什么做反向代理软件层面:nginx / apache操作系统层面:LVS硬件:F5在这里我们只谈软件层面的,OS与硬件层面感兴趣的话可以百度或者Google,至于何为反向代理这里也不赘述了反向代理解决了什么问题子web系统性能,不再受到单台机器资源限制,可以扩展子web系统,实现了高可用,原创 2020-07-01 10:54:18 · 387 阅读 · 2 评论 -
【成为架构师2-2】伪分布式与垂直拆分:快速解决单机性能问题的实践方案
主要内容:1 架构演进阶段的新需求2 单机资源瓶颈产生时的环境3 架构演进,伪分布式,提升性能三大分离结构(图中仅两种)设计思路什么问题没有解决4 垂直拆分,解耦四种垂直拆分:设计思路原创 2020-07-01 01:27:24 · 379 阅读 · 0 评论 -
【成为架构师2-1】容量设计:流量高低,对架构究竟有什么影响
1 何时需要进行容量评估2 哪些指标需要进行容量预估3 架构设计的容量评估步骤(吞吐量为例)1 评估总访问量2 评估平均访问量3 评估高峰QPS4 评估系统、单机极限QPS5 根据线上冗余度做决策原创 2020-06-30 11:03:29 · 469 阅读 · 2 评论 -
【成为架构师1-2】技术选型:框架组件要不要自研,何时自研
1 早期不建议自研2 控制技术栈的统一3 对第三方库“浅浅地封装一层”4 在后期,适当地造一些轮子原创 2020-06-29 12:29:18 · 404 阅读 · 0 评论 -
【成为架构师1-1】技术选型:创业初期,技术如何选型
1 创业初期的系统特点2 创业初期的架构特点3 创业初期,推荐的技术选型4 创业初期,工程师的主要矛盾原创 2020-06-29 11:25:33 · 376 阅读 · 2 评论