缓存案例-架构真题(二十二)

news/2024/7/4 22:23:56/文章来源:https://blog.csdn.net/ke1ying/article/details/132679188

试题一

某大型电商平台建立一个B2B商店系统,并在全国建设了仓储中心。但是在运营过程中,发现很多跨仓储中心调货,延误运送。为此建立全国仓储系统,通过对订单的分析和挖掘,并通过大数据分析预测各类配置,降低成本。

当用户通过B2B商店下单,会通过用户的地址,商品类别,及其仓库信息和地址,来预测送达时间。反馈时间在1s内完成。

为满足反馈送达时间功能性能要求,设计团队建议在全国货物管理系统采用数据缓存集群方式,将仓储基本信息、商品类别以及库存数量放置在内存的缓存中,而仓储中心的其他商品则存储在数据库系统。

【问题1】(9分)

设计团队在讨论缓存和数据库数据一致性问题时,李工建议采用数据库实时同步方案,而张工建议采用数据库异步准实时更新方案。

请求200字以内的的文字,介绍两种方案基本思路,说明全国仓储货物管理系统应该来用哪种方案,并说明这个方案的原因。

解析:

实时方案:数据库更新之后立马更新缓存。

准实时方案:数据库更新之后不立马更新缓存,而是记录在需要更新的日志中,再异步排队完成更新缓存。

在这里建议采用异步准实时方案,因为对代码性能优严格要求,在1s内返回下单成功数据。

【问题2】(9分)

随着业务发展,仓库中心数据日益增加,需要集群部署多个缓存节点,提高缓存处理能力,李工建议采用缓存分片方法,减缓单个节点访问压力。

缓存分片采用哈希算法或一致性哈希算法,李工建议采用一致性哈希算法来解决,200字说明理由。

解析:

哈希算法,会根据key的值进行哈希操作,类似取余操作,之后在取得相同的值放在一个实例。

一致性哈希算法,会根据key的值进行哈希操作,放入一个hash环上,数据根据hash值在哈希环上正时针方向找到对应的存储结点上。

【问题3】(7分)

全国仓储货物管理系统开发完成,在运营一段时间后,系统维护人员发现大量黑客故意发起商品送达请求,造成缓存穿透,张工建议采用布隆过滤器来解决这个问题,200字描述布隆过滤器的工作原理和优缺点。

解析:

布隆过滤器通过一个很长的二进制向量一系列随机映射函数来记录和识别某个数据是否在集合,当布隆过滤器返回为空,则直接表示数据不存在,不继续查询缓存和数据库。

布隆过滤器优点:

  1. 占内存小。
  2. 查询效率高。
  3. 不需要存储元素本身,所以在某些场合保密要求高。

布隆过滤器的缺点:

  1. 不能获取存储本身的元素。
  2. 有一定的误判,会存在假阳性,不能准确判断是否在集合。
  3. 一般情况下不能删除元素。

试题二

Web系统架构设计的叙述。

某公司拟开发一套边缘计算的智能门禁,用于如园区、新零售、工业现场等存在来访、被访业务的场景。来访者可以提前预约,在后台通过请求后,可以直接通过刷脸的方式进入园区。

基于项目需求,公司组建项目组,开讨论会,会议上,张工根据业务需求并结合边缘计算思想,提出本系统可以由访客注册模块、模拟训练模块、端侧识别模块与设备调度平台模块等四项功能组成。李工从技术层面指出该系统可以使用Flask框架与SSM框架为基础来开发后台服务器,将开发好的进行Docker部署,并使用MQTT协议对Docker进行管理。

【问题1】(5分)

MQTT协议在互联网行业广泛应用,请300字以内简要介绍MQTT协议?

解析:

MQTT(消息队列遥测传输)是一个基于发布/订阅的消息协议。它工作在TCP/IP协议之上,是为硬件性能低下的远程设备以及网络情况糟糕的情况下设计的发布/订阅协议。MQTT属于轻量、简单、开发和易于实现的。

【问题2】(14分)

在会议上,张工对模块进一步说明,访客注册模块用于来访者提交申请与被访者确认申请,主要处理提交来访申请、来访申请审核业务,同时保存访客数据,为训练模块准备训练数据集:模型训练模块用于使用访客数进行模型训练,为端侧设备的识别业务提供模型基础;端侧识别模块在边缘门禁设备上运行,使用训练好的模型来识别来访人员,与云端服务协作完成访客来访的完整业务;设备调度平台模块用于对边缘门禁设备进行管理,管理员能够使用平台对边缘设备进行调度管理与状态监控,实现云端协同。

基于边缘计算的智能门禁系统架构图,请结合HTTP协议和MQTT协议特点,为1~6处选择合适协议,并结合张工描述,补齐7~10空白。

  1. 端侧边缘模型  (边缘设备)
  2. 模型训练模块
  3. 设备调度平台模块
  4. 访客注册模块
  1. HTTP
  2. MQTT
  3. MQTT
  4. MQTT
  5. HTTP
  6. HTTP

【问题3】

请用300字以内文字,从数据通信、数据安全和系统性能等方面简要分析在传统云计算模型中引入边缘计算模型的优势。

解析:

数据通信:通信更快捷,数据量更少。因为数据处理对比在边缘设备上完成,通信更多时候只传输匹配与结果的指令。

数据安全:数据以加密方式存储在需要用到的边缘设备上,比通过网络传递更安全,黑客也无法攻破一个节点使整个网络瘫痪。

系统性能:性能更高,以人脸识别为例,只需要本地化处理,不需要把数据传递到网络比较。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_166568.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ApiPost7使用介绍 | HTTP Websocket

一、基本介绍 创建项目(团队下面可以创建多个项目节点,每个项目可以创建多个接口): 参数描述库(填写参数时自动填充描述): 新建环境(前置URL、环境变量很有用)&#x…

Vue生成多文件pdf准考证

这是渲染的数据 这是生成的pdf文件,直接可以打印 需要安装和npm依赖和引入封装的pdf.js文件 npm install --save html2canvas // 页面转图片 npm install jspdf --save // 图片转pdfpdf.js文件 import html2canvas from "html2canvas"; import jsPDF …

Python实现Word、Excel、PPT批量转为PDF

今天看见了一个有意思的脚本Python批量实现Word、EXCLE、PPT转PDF文件。 因为我平时word用的比较的多,所以深有体会,具体怎么实现的我们就不讨论了,因为这个去学了也没什么提升,不然也不会当作脚本了。这里我将其放入了pyzjr库中…

ModaHub魔搭社区专访百度智能云李莅:做 AI native 的向量数据库有哪些技术难点?

ModaHub魔搭社区:那这种传统的数据库加向量插件的方式和 AI native 的向量数据库两者之间的区别是什么?做 AI native 的向量数据库有哪些技术难点? 李莅:向量检索算法是向量领域最核心的技术挑战。目前,主流的算法是基…

如何用PS把roughness贴图转换成Smoothness,并放入Metallic贴图的a通道。

1:用PS打开Roughness贴图 2:选择反相,装换成Smoothness贴图 3:新建一个大小相等的psd文件,或者打开Metallic贴图 4:如果没有金属度贴图,就把新建的图画成纯黑色 5:选择图层蒙版->…

华为云 异构数据迁移

数据库和应用迁移 UGO(Database and Application Migration UGO,以下简称为UGO)是专注于异构数据库结构迁移的专业服务。可将源数据库中的DDL、DML和DCL一键自动转换为华为云GaussDB/RDS的SQL语法,通过数据库评估、对象迁移两大核…

【聚类】DBCAN聚类

OPTICS是基于DBSCAN改进的一种密度聚类算法,对参数不敏感。当需要用到基于密度的聚类算法时,可以作为DBSCAN的一种替代的优化方案,以实现更优的效果。 原理 基于密度的聚类算法(1)——DBSCAN详解_dbscan聚类_root-ca…

合并到pdf怎么合并?这个方法了解一下

在现代数字化时代,PDF(便携式文档格式)已成为最常用的文件格式之一。PDF文件的优点在于其跨平台兼容性和保持文档格式不变的能力。然而,在某些情况下,我们可能需要知道合并到pdf。无论是为了方便管理、共享或者其他目的,本文将介绍…

【ES6】require、export和import的用法

在JavaScript中,require、export和import是Node.js的模块系统中的关键字,用于处理模块间的依赖关系。 1、require:这是Node.js中引入模块的方法。当你需要使用其他模块提供的功能时,可以使用require关键字来引入该模块。例如&…

【Node.js】Node.js安装详细步骤和创建Express项目演示

Node.js是一个开源的、跨平台的JavaScript运行环境,用于在服务器端运行JavaScript代码。它提供了一个简单的API,可以用于开发各种网络和服务器应用程序。 以下是Node.js的安装和使用的详细步骤和代码示例: 1、下载Node.js 访问Node.js官方…

Linux gdb单步调试的原理

文章目录 一、demo演示二、原理分析参考资料 一、demo演示 .section .data message:.string "Hello, World!\n" len . - message.section .text .globl _start _start:# 调用 write() 函数输出 "Hello, World!"mov $1, %rax # 系统调用号为 1…

[unity]三角形顶点顺序

序 详见官方文档:Unity - Manual: Mesh data (unity3d.com) Topology:拓扑结构 翻译: 拓扑描述网格具有的面类型。 网格的拓扑定义了索引缓冲区的结构,索引缓冲区又描述了顶点位置如何组合成面。每种类型的拓扑都使用索引数组中…

新上线:爱校对的PDF校对工具,专为专业人士设计

在这个信息爆炸的时代,准确和专业的信息交流比以往任何时候都更为重要。专业人士,无论是律师、医生、研究人员还是企业高管,都依赖于高质量的PDF文档来进行准确无误的沟通。但是,校对这些文档常常是一个既耗时又容易出错的任务。这…

经管博士科研基础【19】齐次线性方程组

1. 线性方程组 2. 非线性方程组 非线性方程,就是因变量与自变量之间的关系不是线性的关系,这类方程很多,例如平方关系、对数关系、指数关系、三角函数关系等等。求解此类方程往往很难得到精确解,经常需要求近似解问题。相应的求近似解的方法也逐渐得到大家的重视。 3. 线…

Qt+C++自建网页浏览器-Chrome blink最新内核基础上搭建-改进版本

程序示例精选 QtC自建网页浏览器-Chrome blink最新内核基础上搭建-改进版本 如需安装运行环境或远程调试&#xff0c;见文章底部个人QQ名片&#xff0c;由专业技术人员远程协助&#xff01; 前言 这篇博客针对<<QtC自建网页浏览器-Chrome blink最新内核基础上搭建-改进版…

【Windows 常用工具系列 11 -- 笔记本F5亮度调节关闭】

文章目录 笔记本 F 按键功能恢复 笔记本 F 按键功能恢复 使用笔记本在进行网页浏览时&#xff0c;本想使用F5刷新下网页&#xff0c;结果出现了亮度调节&#xff0c;如下图所示&#xff1a; 所以就在网上查询是否有解决这个问题的帖子&#xff0c;结果还真找到了&#xff1a;…

机器学习笔记之最优化理论与方法(六)无约束优化问题——最优性条件

机器学习笔记之最优化理论与方法——无约束优化问题[最优性条件] 引言无约束优化问题无约束优化问题最优解的定义 无约束优化问题的最优性条件无约束优化问题的充要条件无约束优化问题的必要条件无约束优化问题的充分条件 引言 本节将介绍无约束优化问题&#xff0c;主要介绍无…

Sumo中Traci.trafficlight详解(上)

Sumo中Traci.trafficlight详解&#xff08;上&#xff09; 记录慢慢学习traci的每一天&#xff0c;希望也能帮到你 文章目录 Sumo中Traci.trafficlight详解&#xff08;上&#xff09;Traci.trafficlight信号灯参数讲解1.getAllProgramLogics(self,tlsID)2.getBlockingVehicle…

如何快速搭建母婴行业的微信小程序?

如果你想为你的母婴行业打造一个独特的小程序&#xff0c;但没有任何编程经验&#xff0c;别担心&#xff01;现在有许多小程序制作平台提供了简单易用的工具&#xff0c;让你可以轻松地建立自己的小程序。接下来&#xff0c;我将为你详细介绍搭建母婴行业小程序的步骤。 首先&…

无需租用云服务器:使用Linux本地搭建web服务并实现内网穿透发布公网访问的详细教程

文章目录 前言1. 本地搭建web站点2. 测试局域网访问3. 公开本地web网站3.1 安装cpolar内网穿透3.2 创建http隧道&#xff0c;指向本地80端口3.3 配置后台服务 4. 配置固定二级子域名5. 测试使用固定二级子域名访问本地web站点 前言 在web项目中,部署的web站点需要被外部访问,则…