当前位置: 首页 > news >正文

读构建可扩展分布式系统:方法与实践16读后总结与感想兼导读

1. 基本信息

构建可扩展分布式系统:方法与实践

 [美]伊恩·戈顿(Ian Gorton)著

机械工业出版社,2024年5月出版

1.1. 读薄率

书籍总字数188千字,笔记总字数49688字。

读薄率49688÷188000≈26.4%

1.2. 读厚方向

  1. 设计模式:可复用面向对象软件的基础

  2. 程序员修炼之道:通向务实的最高境界(第2版)

  3. 微服务设计

  4. 设计模式的艺术

1.3. 笔记--章节对应关系

笔记章节字数发布日期
2024年
读构建可扩展分布式系统:方法与实践01可扩展系统简介第1章 可扩展系统简介25609月12日
读构建可扩展分布式系统:方法与实践02分布式系统架构简介第2章 分布式系统架构简介28839月13日
读构建可扩展分布式系统:方法与实践03分布式系统要点第3章 分布式系统要点43479月14日
读构建可扩展分布式系统:方法与实践04应用服务第5章 应用服务41279月15日
读构建可扩展分布式系统:方法与实践05分布式缓存第6章 分布式缓存24739月16日
读构建可扩展分布式系统:方法与实践06异步消息传递第7章 异步消息传递43229月17日
读构建可扩展分布式系统:方法与实践07无服务器处理系统第8章 无服务器处理系统27669月18日
读构建可扩展分布式系统:方法与实践08微服务第9章 微服务49689月19日
读构建可扩展分布式系统:方法与实践09可扩展数据库基础第10章 可扩展数据库基础48759月20日
读构建可扩展分布式系统:方法与实践10最终一致性第11章 最终一致性30819月21日
读构建可扩展分布式系统:方法与实践11强一致性第12章 强一致性36909月22日
读构建可扩展分布式系统:方法与实践12分布式数据库案例第13章 分布式数据库实践案例25289月23日
读构建可扩展分布式系统:方法与实践13可扩展的事件驱动处理第14章 可扩展的事件驱动处理43409月24日
读构建可扩展分布式系统:方法与实践14流处理系统第15章 流处理系统27289月25日
读构建可扩展分布式系统:方法与实践15可扩展系统的基本要素第16章 可扩展系统的基本要素
第4章 并发系统概述
39719月26日
$总计49688$

2. 亮点

2.1 详述了可扩展性这个概念

  • 从定义到原则,到特性

2.2 软件系统发展简史

  • 简述了1980年至今的软件系统发展简史

2.3 构建可扩展的分布式系统的组成要素

  • 从缓存、消息队列、无服务系统、数据库、微服务等方面进行了论述

3. 感想

3.1 可扩展性往往就是不断投入刀乐的代名词

  • 谷时低性能,峰时高性能

3.2 提前考虑总是有益的

  • 凡事预则立,不预则废

  • 提前想到,后期投入刀乐的代价可能会小点

3.3 核心业务系统为小系统,可扩展性像硬件扩展坞那样外挂多好啊

  • 这样专心实现核心业务功能

  • 其他共性的问题交给扩展坞这样的外挂去处理,该多好啊

    • 专业的人做专业的事情

相关文章:

读构建可扩展分布式系统:方法与实践16读后总结与感想兼导读

1. 基本信息 构建可扩展分布式系统:方法与实践 [美]伊恩戈顿(Ian Gorton)著 机械工业出版社,2024年5月出版 1.1. 读薄率 书籍总字数188千字,笔记总字数49688字。 读薄率49688188000≈26.4% 1.2. 读厚方向 设计模式:可复用面向对象软件的…...

Anaconda 安装

目录 - [简介](#简介) - [安装Anaconda](#安装anaconda) - [启动Anaconda Navigator](#启动anaconda-navigator) - [创建环境](#创建环境) - [管理包](#管理包) - [常用命令行操作](#常用命令行操作) - [Jupyter Notebook 快速入门](#jupyter-notebook-快速入门) - [结…...

优雅使用 MapStruct 进行类复制

前言 在项目中,常常会遇到从数据库读取数据后不能直接返回给前端展示的情况,因为还需要对字段进行加工,比如去除时间戳记录、隐藏敏感数据等。传统的处理方式是创建一个新类,然后编写大量的 get/set 方法进行赋值,若字…...

第19周JavaWeb编程实战-MyBatis实现OA系统 1-OA系统

办公OA系统项目开发 课程简介 本课程将通过慕课办公OA平台的开发,讲解实际项目开发中必须掌握的技能和设计技巧。课程分为三个主要阶段: 需求说明及环境准备: 基于RBAC的访问控制模块开发: 多级请假审批流程开发: …...

仿黑神话悟空跑动-脚下波纹特效(键盘wasd控制走动)

vue使用three.js实现仿黑神话悟空跑动-脚下波纹特效 玩家角色的正面始终朝向鼠标方向&#xff0c;且在按下 W 键时&#xff0c;玩家角色会朝着鼠标方向前进 空格建跳跃 <template><div ref"container" class"container" click"onClick"…...

`torch.utils.data`模块

在PyTorch中&#xff0c;torch.utils.data模块提供了许多有用的工具来处理和加载数据。以下是对您提到的DataLoader, Subset, BatchSampler, SubsetRandomSampler, 和 SequentialSampler的详细解释以及使用示例。 1. DataLoader DataLoader是PyTorch中用于加载数据的一个非常…...

深入理解 `strncat()` 函数:安全拼接字符串

目录&#xff1a; 前言一、 strncat() 函数的基本用法二、 示例代码三、 strncat() 与 strcat() 的区别四、 注意事项五、 实际应用场景总结 前言 在C语言中&#xff0c;字符串操作是编程中非常常见的需求。strncat() 函数是标准库中用于字符串拼接的一个重要函数&#xff0c;…...

OpenCV_自定义线性滤波(filter2D)应用详解

OpenCV filter2D将图像与内核进行卷积&#xff0c;将任意线性滤波器应用于图像。支持就地操作。当孔径部分位于图像之外时&#xff0c;该函数根据指定的边界模式插值异常像素值。 卷积核本质上是一个固定大小的系数数组&#xff0c;数组中的某个元素被作为锚点&#xff08;一般…...

设计模式之装饰模式(Decorator)

前言 这个模式带给我们有关组合跟继承非常多的思考 定义 “单一职责” 模式。动态&#xff08;组合&#xff09;的给一个对象增加一些额外的职责。就增加功能而言&#xff0c;Decorator模式比生成子类&#xff08;继承&#xff09;更为灵活&#xff08;消除重复代码 & 减少…...

大数据-146 Apache Kudu 安装运行 Dockerfile 模拟集群 启动测试

点一下关注吧&#xff01;&#xff01;&#xff01;非常感谢&#xff01;&#xff01;持续更新&#xff01;&#xff01;&#xff01; 目前已经更新到了&#xff1a; Hadoop&#xff08;已更完&#xff09;HDFS&#xff08;已更完&#xff09;MapReduce&#xff08;已更完&am…...

React入门准备

React是什么 React是一个用于构建用户界面的JavaScript框架&#xff0c;用于构建“可预期的”和“声明式的”Web用户界面&#xff0c;特别适合于构建那些数据会随时间改变的大型应用的用户界面。 它起源于Facebook的内部项目&#xff0c;因为对市场上所有JavaScript MVC框架都…...

robomimic基础教程(四)——开源数据集

robomimic开源了大量数据集及仿真环境&#xff0c;数据集标准格式为HDF5 目录 一、基础要求 二、使用步骤 1. 下载数据集 2. 后处理 3. 训练 4. 查看训练结果 三、HDF5数据集结构与可视化 1. 数据集结构 &#xff08;1&#xff09;根级别&#xff08;data 组 group&a…...

胤娲科技:AI界的超级充电宝——忆阻器如何让LLM告别电量焦虑

当AI遇上“记忆橡皮擦”&#xff0c;电量不再是问题&#xff01; 嘿&#xff0c;朋友们&#xff0c;你们是否曾经因为手机电量不足而焦虑得像个无头苍蝇&#xff1f;想象一下&#xff0c;如果这种“电量焦虑”也蔓延到了AI界&#xff0c; 特别是那些聪明绝顶但“耗电如喝水”的…...

前端大模型入门:使用Transformers.js手搓纯网页版RAG(二)- qwen1.5-0.5B - 纯前端不调接口

书接上文&#xff0c;本文完了RAG的后半部分&#xff0c;在浏览器运行qwen1.5-0.5B实现了增强搜索全流程。但受限于浏览器和模型性能&#xff0c;仅适合于研究、离线和高隐私场景&#xff0c;但对前端小伙伴来说大模型也不是那么遥不可及了&#xff0c;附带全部代码&#xff0c…...

K-means聚类分析对比

K-means聚类分析&#xff0c;不同K值聚类对比&#xff0c;该内容是关于K-means聚类分析的&#xff0c;主要探讨了不同K值对聚类结果的影响。K-means聚类是一种常见的数据分析方法&#xff0c;用于将数据集划分为K个不同的类别。在这个过程中&#xff0c;选择合适的K值是非常关键…...

tar命令:压缩、解压的好工具

一、命令简介 用途&#xff1a; tar​ 命令用于创建归档文件&#xff08;tarball&#xff09;&#xff0c;以及从归档文件中提取文件。 标签&#xff1a; 文件管理&#xff0c;归档。 特点&#xff1a; 归档文件可以保留原始文件和目录的层次结构&#xff0c;通常使用 .tar ​…...

Mac电脑上最简单安装Python的方式

背景 最近换了一台新的 MacBook Air 电脑&#xff0c;所有的开发软件都没有了&#xff0c;需要重新配环境&#xff0c;而我现在最常用的开发程序就是Python。这篇文章记录一下我新Mac电脑安装Python的全过程&#xff0c;也给大家一些思路上的提醒。 以下是我新电脑的配置&…...

Linux基础命令cd详解

cd&#xff08;change directory&#xff09;命令是 Linux 中用于更改当前工作目录的基础命令。它没有很多复杂的参数&#xff0c;但它的使用非常频繁。以下是 cd 命令的详细说明及示例。 基本语法 cd [选项] [路径] 常用选项 -L : 使用逻辑路径&#xff08;默认选项&…...

【大模型对话 的界面搭建-Open WebUI】

Open WebUI 前身就是 Ollama WebUI&#xff0c;为 Ollama 提供一个可视化界面&#xff0c;可以完全离线运行&#xff0c;支持 Ollama 和兼容 OpenAI 的 API。 github网址 https://github.com/open-webui/open-webui安装 第一种 docker安装 如果ollama 安装在同一台服务器上&…...

如何在算家云搭建text-generation-webui(文本生成)

一、text-generation-webui 简介 text-generation-webui 是一个流行的用于文本生成的 Gradio Web UI。支持 transformers、GPTQ、AWQ、EXL2、llama.cpp (GGUF)、Llama 模型。 它的特点如下&#xff0c; 3 种界面模式&#xff1a;default (two columns), notebook, chat支持多…...

为什么你的局域网速度慢?可能是集线器和交换机的区别没搞懂

为什么你的局域网速度慢&#xff1f;可能是集线器和交换机的区别没搞懂 家里或办公室的网络总是不给力&#xff1f;明明升级了宽带套餐&#xff0c;下载文件时却还是像蜗牛爬行&#xff1f;问题可能出在你忽略的网络设备选择上。许多用户至今仍在用早已淘汰的集线器&#xff08…...

Vue.js前端项目集成AI:SmallThinker-3B-Preview实现智能表单与对话

Vue.js前端项目集成AI&#xff1a;SmallThinker-3B-Preview实现智能表单与对话 1. 引言&#xff1a;当Vue.js遇见AI 你有没有遇到过这样的场景&#xff1f;用户填写一个复杂的表单&#xff0c;面对几十个选项不知所措&#xff1b;或者客服系统里&#xff0c;用户问了一个稍微…...

SPI通信协议与菊花链模式应用解析

四线SPI通信协议与菊花链模式应用详解1. SPI接口基础1.1 四线SPI接口定义串行外设接口(SPI)是微控制器与外围IC之间最广泛使用的通信接口之一&#xff0c;具有同步、全双工、主从式架构特点。标准四线SPI接口包含以下信号线&#xff1a;SCLK(Serial Clock)&#xff1a;时钟信号…...

保姆级教程:在Windows上用PyTorch 2.0复现PointNet(含数据集下载与常见坑点修复)

Windows平台PyTorch 2.0实战&#xff1a;从零构建PointNet点云处理模型全指南 当3D点云处理遇上深度学习&#xff0c;PointNet无疑是这个领域的里程碑式架构。不同于传统CNN处理规则网格数据的方式&#xff0c;PointNet开创性地直接处理无序点云数据&#xff0c;在分类和分割任…...

LM358运放实战:手把手教你搭建电容传感器测量电路(附常见问题排查)

LM358运放实战&#xff1a;手把手教你搭建电容传感器测量电路&#xff08;附常见问题排查&#xff09; 在电子设计领域&#xff0c;电容式传感器因其非接触式测量、结构简单和成本低廉等优势&#xff0c;被广泛应用于液位检测、接近开关和湿度测量等场景。而要将微弱的电容变化…...

嵌入式CLI库:轻量级命令行接口设计与实现

1. CLI库概述&#xff1a;面向嵌入式系统的轻量级命令行接口设计CLI&#xff08;Command Line Interface&#xff09;库是一个专为Arduino及兼容MCU平台设计的轻量级命令行流式接口系统。其核心目标并非复刻Linux shell的复杂功能&#xff0c;而是为资源受限的8/32位微控制器提…...

基于Session管理的在线视频学习平台防作弊策略

1. Session管理在在线学习平台中的核心作用 在线视频学习平台最头疼的问题之一&#xff0c;就是如何防止用户通过多设备同时登录来刷学习进度。想象一下&#xff0c;如果用户同时在手机、平板和电脑上登录同一个账号&#xff0c;三倍速刷完课程&#xff0c;这对其他认真学习的用…...

VectorBT:量化交易分析的高性能解决方案

VectorBT&#xff1a;量化交易分析的高性能解决方案 【免费下载链接】vectorbt Find your trading edge, using the fastest engine for backtesting, algorithmic trading, and research. 项目地址: https://gitcode.com/gh_mirrors/ve/vectorbt 在金融市场的快速变化…...

应用层缓存的庖丁解牛

“应用层缓存”常被误解为“加个 Redis 那么简单”或“为了快而快”。 但本质上&#xff0c;应用层缓存是用“空间”换“时间”&#xff0c;用“一致性风险”换“系统吞吐量”的终极权衡艺术。 它是数据库&#xff08;慢、稳、强一致&#xff09;与用户&#xff08;快、急、高并…...

如何实现微信聊天记录的终极掌控:WeChatMsg完全指南

如何实现微信聊天记录的终极掌控&#xff1a;WeChatMsg完全指南 【免费下载链接】WeChatMsg 提取微信聊天记录&#xff0c;将其导出成HTML、Word、CSV文档永久保存&#xff0c;对聊天记录进行分析生成年度聊天报告 项目地址: https://gitcode.com/GitHub_Trending/we/WeChatM…...