Dojo
话题
新佳
订阅
极道
元认知
元逻辑
元设计
元编程
元语言
软件系统设计指南
形式化验证和 TLA+ 入门
这篇文章的目的是让读者了解: 为什么存在形式化方法以及为什么这些方法在分布式系统领域特别重要。 TLA+ 简介,包括它如何表示数据和时间的概念模型。 从这里开始,您应该能够阅读 TLA+ 上的更多高级内容,并对其内容有一些基本了解。
什么是系统工程师:技能、角色和职责
每一项复杂技术的背后,系统工程师都扮演着关键的角色。系统工程师的任务是设计、实施和维护复杂的 IT 基础设施,这是我们当今看到的技术的基础。这些系统的范围从计算机网络、软件应用程序到大规模硬件配置。 这就是几乎每个行业都<
限量抢票系统Ticketmaster的设计问题
最近,Ticketmaster因泰勒·斯威夫特巡回演唱会门票销售时发生重大系统故障而成为新闻。该网站在需求的重压下崩溃,导致粉丝不满,声誉受损。 首先,我们将看看Ticketmaster的官方声明,试图从系统设计和架构的角度找出问题所在。然后,我们
新的后端渲染:服务器驱动UI
通过API发送UI是一种彻底的新方法,将改变传统的UI开发。 一项正在改变我们对用户界面 (UI) 的看法的技术是通过 API 发送 UI,也称为服务器驱动UI。这种方法提供了新水平的活力和灵活性,正在改变 UI
牛X软件工程师应该知道的概念
如果你知道以下概念的含义,你就是一个伟大的工程师,: #幂等 #幺半群 #解耦 #依赖注入 - 单元 #函数式编程 #异步编程 #并行编程 #线程 #同步锁 #最终一致性 #精确一致性 exactl
有关软件架构的完整书籍列表
这个github项目列举了一个全面的列表,您应该挑选一些有关您感兴趣的主题的书籍。决定读什么是你的事。 这些书籍仅根据书面评论的数量进行排序。然而,还有其他重要因素值得考虑。下面从第二列开始分别是:国际标准书号、评分、Rater和发表时间:
系统设计面试完整指南
这是系统设计面试的指南。如果您是初级或高级工程师,或者正在过渡到需要深入了解系统设计的角色,那么您来对地方了。这篇文章将解释系统设计面试的重要性并帮助您在面试中取得好成绩。 系统设计面试通常涉及一个假设场景,要求您设计一个系统或其一部分。该系统可以是任何东
架构图如何实现更好的对话?
今年早些时候,我和 DrDoctor 的几位同事参加了 C4 架构建模1 的培训。培训师讲得非常好,经过几节课的学习,我们掌握了这种方法。我们继续运用所学知识,在 3 个月的时间里,每周四与所有人员会面。我们主要侧重于将现有架构建模为 1 级(上下文)和 2 级(容器)图。这个过程很有启发性
16 个系统设计面试的概念
要在系统设计方面表现出色,最关键的方面之一是深入了解基本的系统设计概念,例如负载平衡、缓存、分区、复制、数据库和代理。 1. 域名系统 (DNS)当您在 Web 浏览器中输入域名时,DNS 负责查找关联的 IP 地
Slack 向蜂窝架构的迁移
近年来,蜂窝架构在大型在线服务中越来越受欢迎,作为增加冗余和限制站点故障影响范围的一种方式。 蜂窝架构:客户端连接到路由层。路由层使用 HTTP 重定向将客户端重定向到指定的蜂窝单元。 为了实现这些目标,
解决个人偏见的三个抽象层方法
重点以抽象层方式思考,能够清晰地解决问题并避免个人偏见。 我们有三个抽象层:自然层、中间层和人类层。 自然层是为物理和化学定律设计的,包括塑料、横梁、轮胎、玻璃、灯泡、电线等。 人类层是为人类设计的,人类可以毫不费力地使用按
本周Github有趣项目Voyager等
本周Github有趣的项目、工具和库包: 1、VoyagerVoyager
为什么仅有计算机科学学位是不够的?
目前向有抱负的软件工程师传授计算机科学知识的方法与业界对他们毕业后的期望之间存在着巨大差距。虽然应届毕业生可能擅长理解算法的复杂性,如在排序列表中进行二进制搜索的 O(log(n)),但许多人在从头开始设计综合系统时却举步维艰。 最近,我与一位从马
亚马逊DynamoDB大规模分布式事务原理
DynamoDB 的一个杀手级功能是任何规模的可预测性。请阅读Marc Brooker 的文章以充分理解此功能。<
量化交易中比机器学习算法更重要的系统方法
一些量化通常通过寻找ML算法来进行交易,这些算法确实能让他们从市场中获利。 但,这些只是整个结构的第1阶段(初学者)和第1级(技术)工作。 真正的系统方法涉及多个层面: - 结构 - 功能
Metadata:分布式系统设计要点和建议
这些建议提示都是分布式系统研究人员和从业人员几十年来的集体成果。 提示分为三类:功能、性能和容错:功能: 应用抽象 减少协调 拥抱单调性 表现: 偏爱偏序而不是全序 杠杆时间
24 条系统设计面试问答题
以下 24 条系统设计原则可以帮助你通过面试: 1.如果需要缩放单个组件,请查看水平缩放 2.要处理流量峰值,请评估使用自动扩展进行动态资源分配的情况
构建弹性架构的 5 个技巧
如何构建弹性架构和系统?提供五个建议: 1、后备措施您需要考虑为您使用的任何外部服务提供后备方案。例如,这可以是支付网关或简单的 URL 缩短器。为什么?如果您依赖这些外部服务并且它们变得不可用,这可能会对您的应用
上页
下页
关闭