文章分类 -  极客时间

上一页 1 ··· 28 29 30 31 32 33 34 35 36 ··· 45 下一页
摘要:专栏截止到上一期,架构设计相关的理念、技术、实践已经基本讲完,相信你一路学习过来会有一种感觉,这些内容主要都是讲后端系统的架构设计,例如存储高可用、微服务、异地多活等,都是后端系统才会涉及。事实上确实也是如此,通常情况下我们讲架构设计,主要聚焦在后端系统,但这并不意味着App、前端就没有架构设计了, 阅读全文
posted @ 2023-01-05 09:37 易先讯 阅读(39) 评论(0) 推荐(0)
摘要:我在专栏特别放送第3期谈了如何高效地学习开源项目,主要聊了我在学习开源项目的一些看法和步骤。今天我们再聊开源项目,谈谈如何选择、使用以及二次开发。 软件开发领域有一个流行的原则:DRY,Don’t repeat yourself。翻译过来更通俗易懂:不要重复造轮子。开源项目的主要目的是共享,其实就是 阅读全文
posted @ 2023-01-05 09:37 易先讯 阅读(27) 评论(0) 推荐(0)
摘要:在前面的架构重构内功心法“有的放矢”和“合纵连横”中,我提到架构师需要从一大堆问题中识别关键的复杂度问题,然后有的放矢地通过架构重构来解决。但是通常情况下,需要架构重构的系统,基本上都是因为各种历史原因和历史问题没有及时处理,遗留下来逐渐积累,然后到了一个临界点,各种问题开始互相作用,集中爆发!到了 阅读全文
posted @ 2023-01-05 09:36 易先讯 阅读(57) 评论(0) 推荐(0)
摘要:上一期我给你讲了我的架构重构内功心法的第一式:有的放矢,需要架构师透过问题表象看到问题本质,找出真正需要通过架构重构解决的核心问题,而不是想着通过一次重构解决所有问题。 今天我来传授架构重构内功心法的第二式:合纵连横。 合纵 架构重构是大动作,持续时间比较长,而且会占用一定的研发资源,包括开发和测试 阅读全文
posted @ 2023-01-05 09:36 易先讯 阅读(19) 评论(0) 推荐(0)
摘要:在专栏第8期“架构设计三原则”中的演化原则部分,我提到了系统的架构是不断演化的,少部分架构演化可能需要推倒重来进行重写,但绝大部分的架构演化都是通过架构重构来实现的。相比全新的架构设计来说,架构重构对架构师的要求更高,主要体现在: 业务已经上线,不能停下来 架构重构时,业务已经上线运行了,重构既需要 阅读全文
posted @ 2023-01-05 09:36 易先讯 阅读(4) 评论(0) 推荐(0)
摘要:当业务规模比较小、系统复杂度不高时,运维、测试、数据分析、管理等支撑功能主要由各系统或者团队独立完成。随着业务规模越来越大,系统复杂度越来越高,子系统数量越来越多,如果继续采取各自为政的方式来实现这些支撑功能,会发现重复工作非常多。因此我们自然而然就会想到将这些支撑功能做成平台,避免重复造轮子,减少 阅读全文
posted @ 2023-01-05 09:35 易先讯 阅读(20) 评论(0) 推荐(0)
摘要:上一期,我从计算机网络层的角度谈了应对“高性能”和“高可用”的整体架构设计。今天,我将从“用户层”和“业务层”的角度谈谈常见的应用场景和关键技术。 用户层技术 1.用户管理 互联网业务的一个典型特征就是通过互联网将众多分散的用户连接起来,因此用户管理是互联网业务必不可少的一部分。 稍微大一点的互联网 阅读全文
posted @ 2023-01-05 09:35 易先讯 阅读(2) 评论(0) 推荐(0)
摘要:除了复杂度,互联网业务发展的另外两个关键特点是“高性能”和“高可用”。通常情况下,我们在设计高可用和高性能系统的时候,主要关注点在系统本身的复杂度,然后通过各种手段来实现高可用和高性能的要求,例如我前面介绍的计算高性能架构模式、存储高可用架构模式等。但是当我们站在一个公司的的角度来思考架构的时候,单 阅读全文
posted @ 2023-01-05 09:35 易先讯 阅读(4) 评论(0) 推荐(0)
摘要:上一期,我介绍了互联网架构模板中的存储层技术。关于这部分内容,我将逐层介绍每个技术点的产生背景、应用场景和关键技术,希望让你可以对整体的技术架构有一个全貌认知。 今天我们来聊聊互联网架构模板的“开发层”和“服务层”技术。 开发层技术 1.开发框架 在专栏第38、39期中,我们深入分析了互联网业务发展 阅读全文
posted @ 2023-01-05 09:34 易先讯 阅读(2) 评论(0) 推荐(0)
摘要:很多人对于BAT的技术有一种莫名的崇拜感,觉得只有天才才能做出这样的系统,但经过前面对架构的本质、架构的设计原则、架构的设计模式、架构演进等多方位的探讨和阐述,你可以看到,其实并没有什么神秘的力量和魔力融合在技术里面,而是业务的不断发展推动了技术的发展,这样一步一个脚印,持续几年甚至十几年的发展,才 阅读全文
posted @ 2023-01-05 09:34 易先讯 阅读(3) 评论(0) 推荐(0)
摘要:由于各行业的业务发展轨迹并不完全相同,无法给出一个统一的模板让所有的架构师拿来就套用,因此我以互联网的业务发展为案例,谈谈互联网技术演进的模式,其他行业可以参考分析方法对自己的行业进行分析。 互联网业务千差万别,但由于它们具有“规模决定一切”的相同点,其发展路径也基本上是一致的。互联网业务发展一般分 阅读全文
posted @ 2023-01-05 09:34 易先讯 阅读(10) 评论(0) 推荐(0)
摘要:互联网的出现不但改变了普通人的生活方式,同时也促进了技术圈的快速发展和开放。在开源和分享两股力量的推动下,最近10多年的技术发展可以说是目不暇接,你方唱罢我登场,大的方面有大数据、云计算、人工智能等,细分的领域有NoSQL、Node.js、Docker容器化等。各个大公司也乐于将自己的技术分享出来, 阅读全文
posted @ 2023-01-05 09:33 易先讯 阅读(4) 评论(0) 推荐(0)
摘要:微内核架构(Microkernel Architecture),也被称为插件化架构(Plug-in Architecture),是一种面向功能进行拆分的可扩展性架构,通常用于实现基于产品(原文为product-based,指存在多个版本、需要下载安装才能使用,与web-based相对应)的应用。例如 阅读全文
posted @ 2023-01-05 09:33 易先讯 阅读(12) 评论(0) 推荐(0)
摘要:每项微服务基础设施都是一个平台、一个系统、一个解决方案,如果要自己实现,其过程和做业务系统类似,都需要经过需求分析、架构设计、开发、测试、部署上线等步骤,专栏里我来简单介绍一下每个基础设施的主要作用,更多详细设计你可以参考Spring Cloud的相关资料(https://projects.spri 阅读全文
posted @ 2023-01-05 09:32 易先讯 阅读(3) 评论(0) 推荐(0)
摘要:专栏上一期,我谈了实施微服务需要避免踩的陷阱,简单提炼为: 微服务拆分过细,过分强调“small”。 微服务基础设施不健全,忽略了“automated”。 微服务并不轻量级,规模大了后,“lightweight”不再适应。 针对这些问题,今天我们看看微服务最佳实践应该如何去做。我会分两期介绍这部分内 阅读全文
posted @ 2023-01-05 09:32 易先讯 阅读(3) 评论(0) 推荐(0)
摘要:微服务是近几年非常火热的架构设计理念,大部分人认为是Martin Fowler提出了微服务概念,但事实上微服务概念的历史要早得多,也不是Martin Fowler创造出来的,Martin只是将微服务进行了系统的阐述(原文链接:https://martinfowler.com/articles/mic 阅读全文
posted @ 2023-01-05 09:32 易先讯 阅读(11) 评论(0) 推荐(0)
摘要:相比于高性能、高可用架构模式在最近几十年的迅猛发展来说,可扩展架构模式的发展可以说是步履蹒跚,最近几年火热的微服务模式算是可扩展模式发展历史中为数不多的亮点,但这也导致了现在谈可扩展的时候必谈微服务,甚至微服务架构都成了架构设计的银弹,高性能也用微服务、高可用也用微服务,很多时候这样的架构设计看起来 阅读全文
posted @ 2023-01-05 09:31 易先讯 阅读(9) 评论(0) 推荐(0)
摘要:软件系统与硬件和建筑系统最大的差异在于软件是可扩展的,一个硬件生产出来后就不会再进行改变、一个建筑完工后也不会再改变其整体结构。例如,一颗CPU生产出来后装到一台PC机上,不会再返回工厂进行加工以增加新的功能;金字塔矗立千年历经风吹雨打,但其现在的结构和当时建成完工时的结构并无两样。相比之下,软件系 阅读全文
posted @ 2023-01-05 09:31 易先讯 阅读(3) 评论(0) 推荐(0)
摘要:你好,我是华仔。 前几讲我介绍了异地多活方案。它主要用来应对系统级的故障,例如机器宕机、机房故障和网络故障等问题。这些系统级的故障虽然影响很大,但发生概率较小。在实际业务运行过程中,还有另外一种故障影响可能没有那么大,但发生的概率较高,这就是今天我要跟你聊的接口级的故障。 接口级故障的典型表现就是, 阅读全文
posted @ 2023-01-05 09:30 易先讯 阅读(8) 评论(0) 推荐(0)
摘要:上一期,基于异地多活架构设计复杂度最高的“跨城异地”,我结合自己的经验总结了异地多活设计的4个技巧及其核心思想,我认为掌握这些技巧是进入具体设计步骤的前提。 今天,在掌握这4大技巧的基础上,我来讲讲跨城异地多活架构设计的4个步骤。 第1步:业务分级 按照一定的标准将业务进行分级,挑选出核心的业务,只 阅读全文
posted @ 2023-01-05 09:30 易先讯 阅读(7) 评论(0) 推荐(0)

上一页 1 ··· 28 29 30 31 32 33 34 35 36 ··· 45 下一页