
架构模块
本兮言
“任何事情,没有坚持3个月,就没有发言权!没有坚持3年,就不能说自己懂!没有坚持7年,就不可能是专家!没有坚持10年以上,就不会拥有权威!没有坚持一辈子,就不可能有所成就!选择自己真正想做的事情,每天重复做,能坚持下来的人,定会成为某一领域的领航者。成功没有捷径,坚持才能成功!”
展开
-
微服务详讲:具体实践方法和基础设施简述
微服务具体实践方法:针对:微服务拆分过细,过分强调“small”、微服务基础设施不健全,忽略了“automated”、微服务并不轻量级,规模大了后,“lightweight”不再适应。1、服务粒度基于团队规模进行拆分,微服务拆分粒度的“三个火枪手”原则,从系统规模来讲,3个人负责开发一个系统,系统的复杂度刚好达到每个人都能全面理解整个系统,又能够进行分工的粒度;从团队管理来说,...原创 2020-04-06 22:39:49 · 863 阅读 · 0 评论 -
可扩展架构 (分层架构、SOA、微服务、微内核架构)
可扩展的基本思想:都可以总结为一个字:拆!就是将原本大一统的系统拆分成多个规模小的部分,扩展时只修改其中一部分即可,无须整个系统到处都改,通过这种方式来减少改动范围,降低改动风险按照不同的思路来拆分软件系统,就会得到不同的架构。常见的拆分思路有如下三种:面向流程拆分:将整个业务流程拆分为几个阶段,每个阶段作为一部分。比如:信息管理学系统的 展示层 → 业务层 → 数据层 → 存储层...原创 2020-04-06 22:34:57 · 4940 阅读 · 0 评论 -
滴滴是如何从零构建集中式实时计算平台的?
/01/实时计算演进随着滴滴业务的发展,滴滴的实时计算架构也在快速演变。到目前为止大概经历了三个阶段,第一阶段是业务方自建小集群;第二阶段是集中式大集群、平台化;第三阶段是SQL化。图1标识了其中重要的里程碑,下面给出详细阐述。在2017年以前滴滴并有没有统一的实时计算平台,而是各个业务方自建小集群。其中用到的引擎有Storm、JStorm、Spark Streaming、Samz...转载 2018-12-24 00:20:54 · 559 阅读 · 0 评论 -
支付系统 “订单模型” 该如何设计?
导读 最近经历了一件事,就是小码农所在的公司因为被某大厂收购之后要进行融合了,其他方面的融合就没必要说了,今天咱们只是聊一下支付系统融合的事情。首先从很多互联网公司的发展经验来看,随着多条业务线的发展,最终都是会催生出建设统一支付系统的强烈需求。 这是为什么呢?因为支付系统太重要了,它拥有公司所有的现金流水,是进行业务清算、财务核算、上市审计以及后续各类财务信息管理的关键系统之一...转载 2018-12-22 14:39:40 · 9869 阅读 · 5 评论 -
微信多点登录,消息漫游,假如让你来实现?
有朋友问: 微信如何实现手机端、PC端同时登录,同时收消息? 微信能不能实现,换一个手机,仍能拉取到历史消息? 这是多点登录和消息漫游的问题。 什么是多点登录?以微信为例,可以PC端,phone端同时登录,同时收发消息。画外音:需要注意的是,一个端只能登录一个实例,例如同一个QQ号,在pc1上登录,再到pc2上登录,后者会把前者踢出,pc1会收到通知“你已在别处...转载 2018-12-22 14:46:47 · 2482 阅读 · 0 评论 -
讲讲亿级PV的负载均衡架构!
引言本来没想写这个题材的,为了某某童鞋能够更好的茁壮成长,临时写一篇负载均衡的。负载均衡,大家可能听过什么3层负载均衡、4层负载均衡、7层负载均衡什么的?那这是怎么分的呢,ok,是根据osi七层网络模型来分的,例如nginx是工作在应用层,应用层刚好是在第7层,因此nginx又可以称为7层负载均衡。我本来想一层层慢慢讲,从最基础的网络协议开始讲起,想了想又觉得这种讲法不适合速成。因此我改变思...转载 2019-01-14 16:21:05 · 394 阅读 · 0 评论 -
php架构师之路2017半年精选40篇
【特别推荐】《架构师之路2016年精选66篇》发起一个活动,一起携手见证“架构师之路”的第一篇10w+,还差3000阅读,邀您一起转发。 【通用设计与方法论】《单KEY业务,数据库水平切分架构实践》《架构设计中常见“反向依赖”与解耦方案》《互联网架构如何实现“高可用”》《互联网架构如何实现“高并发”》《典型数据库架构设计与实践》 【典型架构实践】《计...转载 2019-02-26 10:21:45 · 253 阅读 · 0 评论 -
缓存设计 总结
缓存的收益和成本: 1>加速读写:因为缓存通常都是全内存的例如Redis、Memcache,而存储层通常读写性能不够强悍(例如MySQL),通过缓存的使用可以有效加速读写 2>降低后端访问量和复杂计算 成本: 数据不一致:缓存层和储存层存在一定时间窗口的不一致性,时间窗口跟更新策略有关 加入缓存后需要同时处理缓存层和逻辑层逻辑,增加了开发者维护代码...原创 2019-04-01 18:47:33 · 384 阅读 · 0 评论 -
分布式事物方案
面试官先是在纸上先画了这样一张图:让我看这张图按照上面的流程走,有没有什么问题?面试官并没有直接说出来这里面会有分布式事物的问题,而是让我来告诉他,这就是面试套路呀。我回答了这中间可能存在分布式事物的问题,当步骤2在调用 B 系统时,可能存在B 系统处理完成后,在响应的时候超时,导致 A 系统误认为 B 处理失败了,从而导致A 系统回滚,跟 B 系统存在数据不一致的情况。ok ,我...转载 2019-04-22 15:41:25 · 405 阅读 · 0 评论