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

美团一面,有点难度

前几天分享过一篇训练营的朋友在阿里的一面面经,挺简单的她也是很轻松的过了,感兴趣的可以看一下我之前发的文章。

今天要分享的还是她的面经,美团的一面,感觉比阿里的难一些,各位观众老爷你怎么看?

  1. 自我介绍

2. 如何治理大表?

治理大表通常涉及到以下几个方面:

  • 分库分表:根据业务逻辑或数据分布将数据分散到多个数据库或表中。
  • 分区:对于单个大表,可以采用分区技术(如范围、列表、哈希分区)来提高查询性能。
  • 归档:将不再频繁访问的历史数据迁移到低成本存储介质。
  • 优化查询:确保所有查询语句都是高效的,并且只选择需要的列。
  • 索引管理:为经常用于查询条件的字段创建索引,但避免过度索引以防止写入性能下降。

3. 对于千万级的mysql表,如何能够使他读取的更快?

要加快大型MySQL表的读取速度,可以采取以下措施:

  • 索引优化:为常用的查询条件建立有效的索引,包括联合索引。
  • 覆盖索引:当查询的所有字段都在索引中时,直接从索引树获取结果,而不必回表查找。
  • 分区表:按照时间戳或其他标准对表进行分区,减少扫描的数据量。
  • 缓存机制:利用Redis等内存型数据库作为缓存层,减轻数据库压力。
  • 读写分离:设置主从架构,读操作分发到从节点执行。
  • 调整配置参数:比如增大innodb_buffer_pool_size,提高缓冲区命中率。

4. 索引应该怎么建?

索引的设计应遵循以下原则:

  • 选择性高的字段优先:选择性高意味着该字段能区分更多的记录,这样的索引更加有效。
  • 考虑查询模式:分析应用中最常见的查询模式,确保这些查询能够充分利用索引。
  • 联合索引:如果多个字段总是同时出现在WHERE子句中,可以考虑创建联合索引。
  • 避免过多索引:每增加一个索引都会影响插入、更新和删除操作的速度。
  • 定期审查:随着数据的增长和查询模式的变化,原有的索引可能不再适用,需定期评估并调整。

5. 考察联合索引的最左匹配原则?

联合索引是由多个字段组成的复合索引,它的工作原理是基于最左前缀原则。这意味着查询条件必须包含索引的第一个字段才能有效地使用这个索引。例如,如果有联合索引(a, b),那么查询条件中至少要包含a才能利用该索引;如果只有b,则无法利用此索引。这是因为B+树结构决定了索引的遍历方式是从左至右逐层深入。

6. 说一下一级索引和二级索引?

在关系型数据库中:

  • 一级索引(也称聚集索引)通常是主键索引,它定义了行在磁盘上的物理存储顺序。
  • 二级索引(非聚集索引)是指除了主键之外的其他索引,它们不改变行的物理排序,而是指向主键值来间接定位行位置。

7. 优化sql的方案?

SQL优化可以从多个角度入手:

  • 重写查询:简化复杂查询,分解成简单的子查询或者使用JOIN代替子查询。
  • 限制返回的数据量:只选取必要的列,而不是使用SELECT *
  • 适当使用索引:确保查询条件能够命中索引,从而减少全表扫描。
  • 使用EXPLAIN分析:通过EXPLAIN命令查看查询执行计划,找出潜在的性能瓶颈。
  • 批量处理:尽量使用批量插入、更新,减少网络开销。

8. 分页的优化?

传统的分页方法依赖于LIMITOFFSET,但这会导致性能问题,特别是在大数据集上。优化分页的方法包括:

  • 基于主键或唯一键分页:每次查询指定上次返回的最大ID,然后在此基础上加上新的偏移量。
  • 游标分页:使用特定字段作为游标,每次请求携带上一次响应中的最后一个游标值,以此来确定下一页的数据起点。

9. 不同隔离级别的区别?

事务隔离级别决定了并发事务之间可见性和相互影响的程度,主要有四种:

  • 读未提交(Read Uncommitted):最低隔离级别,允许脏读、不可重复读和幻读。
  • 读已提交(Read Committed):禁止脏读,但仍可能发生不可重复读和幻读。
  • 可重复读(Repeatable Read):保证同一事务内多次读取相同数据的一致性,但可能存在幻读。
  • 序列化(Serializable):最高隔离级别,完全杜绝了脏读、不可重复读和幻读的问题。

10. 如何在实践中构造一个不可重复读的现象?

要在较低的隔离级别(如读已提交)下构造不可重复读现象,可以通过以下步骤:

  • 开启两个事务T1和T2。
  • T1执行查询并读取某条记录。
  • 在T1尚未提交之前,T2修改这条记录并提交。
  • T1再次查询同一记录,发现内容发生变化,这就是不可重复读。

11. Redis的使用场景?

Redis适用于多种场景:

  • 缓存:快速访问热点数据,减轻数据库负担。
  • 消息队列:发布/订阅模型适合实时通知和异步任务处理。
  • 会话存储:替代传统数据库保存用户会话信息。
  • 排行榜:利用有序集合实现排名统计。
  • 计数器:原子递增/递减操作非常适合计数用途。

12. 为什么直接更新缓存会有一致性问题?

直接更新缓存而不同步更新数据库可能导致数据不一致,因为缓存和持久层之间的状态不同步。例如,当缓存失效期间或缓存被清除后重新加载数据时,可能会出现缓存中的数据与数据库中的最新数据不符的情况。

13. 删除缓存也会有一致性问题,什么场景下使用删除缓存会产生一致性问题?

删除缓存时的一致性问题通常发生在多实例环境下,其中不同的服务器可能持有不同的缓存副本。具体场景如下:

  • 缓存击穿:当大量并发请求同时到达,导致缓存全部失效,所有请求直接打到数据库,造成数据库压力骤增。
  • 缓存雪崩:某个时间段内大量缓存同时过期,造成短时间内大量请求涌向数据库。
  • 缓存穿透:恶意请求故意查询不存在的数据,导致每次查询都去数据库查找,浪费资源。

14. 延迟双删的具体实现是什么样的?

延迟双删是一种解决缓存击穿的策略,其实现方式是:

  • 当缓存项到期时,不是立即删除,而是将其标记为“正在刷新”状态。
  • 设置一个短暂的时间窗口,在这段时间内任何尝试访问该缓存项的请求都将被阻塞,直到新值生成完毕。
  • 如果在这段时间内没有成功刷新缓存,则真正删除该项,否则更新其内容。

15. 当你设计一个系统会考虑哪些?

设计系统时应考虑的因素包括但不限于:

  • 功能性需求:确保满足业务要求。
  • 非功能性需求:如性能、安全性、可用性、扩展性等。
  • 数据一致性:尤其是在分布式环境中,确保数据同步正确。
  • 容错能力:系统应当具备一定的故障恢复机制。
  • 用户体验:界面友好,易于使用。
  • 成本效益:控制硬件资源消耗,降低运营成本。

16. 监控告警一般监控哪些东西?

监控系统通常会关注以下几个方面:

  • 系统资源利用率:CPU、内存、磁盘I/O、网络带宽等。
  • 应用程序健康状况:响应时间、错误率、吞吐量等。
  • 日志文件:捕捉异常信息,帮助排查问题。
  • 自定义指标:根据业务特性设定关键绩效指标(KPI),如订单处理时间、交易成功率等。

编程题

编程题 1:合并两个有序链表
package maintype ListNode struct {Val  intNext *ListNode
}func mergeTwoLists(l1, l2 *ListNode) *ListNode {dummy := &ListNode{}current := dummyfor l1 != nil && l2 != nil {if l1.Val < l2.Val {current.Next = l1l1 = l1.Next} else {current.Next = l2l2 = l2.Next}current = current.Next}if l1 != nil {current.Next = l1} else {current.Next = l2}return dummy.Next
}
编程题 2:合并多个有序链表

这个问题可以通过优先队列(最小堆)来高效解决:

package mainimport "container/heap"type ListNode struct {Val  intNext *ListNode
}// MinHeap 实现了一个最小堆
type MinHeap []*ListNodefunc (h MinHeap) Len() int           { return len(h) }
func (h MinHeap) Less(i, j int) bool { return h[i].Val < h[j].Val }
func (h MinHeap) Swap(i, j int)      { h[i], h[j] = h[j], h[i] }
func (h *MinHeap) Push(x interface{}) { *h = append(*h, x.(*ListNode)) }
func (h *MinHeap) Pop() interface{} {old := *hn := len(old)item := old[n-1]*h = old[0 : n-1]return item
}func mergeKLists(lists []*ListNode) *ListNode {minHeap := &MinHeap{}heap.Init(minHeap)// 将每个链表的第一个元素加入最小堆for _, l := range lists {if l != nil {heap.Push(minHeap, l)}}dummy := &ListNode{}tail := dummyfor minHeap.Len() > 0 {smallest := heap.Pop(minHeap).(*ListNode)tail.Next = smallesttail = tail.Nextif smallest.Next != nil {heap.Push(minHeap, smallest.Next)}}return dummy.Next
}

欢迎关注 ❤

我们搞了一个免费的面试真题共享群,互通有无,一起刷题进步。

没准能让你能刷到自己意向公司的最新面试题呢。

感兴趣的朋友们可以直接私信我:面经

相关文章:

美团一面,有点难度

前几天分享过一篇训练营的朋友在阿里的一面面经&#xff0c;挺简单的她也是很轻松的过了&#xff0c;感兴趣的可以看一下我之前发的文章。 今天要分享的还是她的面经&#xff0c;美团的一面&#xff0c;感觉比阿里的难一些&#xff0c;各位观众老爷你怎么看&#xff1f; 自我介…...

axios取消请求

Axios 使用 cancel token 取消请求 1、先在axios请求中加上cancelToken import request from ../utils/request // 配置过的Axios 对象 import axios from axios export function getDetail(params, that) { return request({url: /api/indexlineage/detail, method: get,par…...

Spark简介

Spark简介 菜鸟弹性分布式数据集 (RDDs)参考 Spark通过两种方式使用Hadoop&#xff1a;一种是存储&#xff0c;另一种是处理。由于Spark具有自己的集群管理计算&#xff0c;因此仅将Hadoop用于存储目的。 Spark 的关键思想是- [Resilient Distributed Datasets&#xff08;RDD…...

visual studio2017版本的安装下载

绝绝子&#xff0c;官网找了半天都不知道在哪里下载的&#xff0c;和当初下载旧版本的qt一样难受&#xff0c;还是用百度云吧&#xff01;&#xff01;&#xff01;&#xff01;&#xff01;&#xff01;&#xff01;&#xff01;&#xff01;&#xff01; 参考文章&#xff1…...

【Linux】ubuntu下一键配置vim

&#x1f525;个人主页&#x1f525;&#xff1a;孤寂大仙V &#x1f308;收录专栏&#x1f308;&#xff1a;Linux &#x1f339;往期回顾&#x1f339;&#xff1a;Linux权限&#xff08;超详细彻底搞懂Linux的权限&#xff09; &#x1f516;流水不争&#xff0c;争的是滔滔…...

[光源控制] UI调节光源亮度参数失效

📢博客主页:https://loewen.blog.csdn.net📢欢迎点赞 👍 收藏 ⭐留言 📝 如有错误敬请指正!📢本文由 丶布布原创,首发于 CSDN,转载注明出处🙉📢现在的付出,都会是一种沉淀,只为让你成为更好的人✨文章预览: 一. 前言二. 串口调试助手辅助排查接线问题二. …...

C语言学习:速通指针(2)

这里要学习的有以下内容 1. const修饰指针 2. 野指针 3. assert断⾔ 4. 指针的使⽤和传址调⽤ 那么从这里开始 1. const 修饰指针 const修饰变量 首先我们知道变量是可以修改的&#xff0c;如果把变量的地址交给⼀个指针变量&#xff0c;通过指针变量的也可以修改这个变…...

方案拆解 | 打击矩阵新规频出!2025矩阵营销该怎么玩?

社媒平台的矩阵营销又要“变天”了&#xff1f;&#xff01; 11月18日&#xff0c;小红书官方发表了被安全薯 称为“小红书史上最严打击黑灰产专项”新规&#xff0c;其中就包括黑灰产矩阵号的公告。 ▲ 图源&#xff1a;小红书 实际上&#xff0c;不包括这次&#xff0c;今年…...

Ubuntu22.04深度学习环境安装【cuda+cudnn】

为了复现一篇深度学习论文&#xff0c;特意安装了Linux系统。前一天已经安装Linux显卡驱动&#xff0c;现在需要安装cuda、cudnn等。 论文代码 论文PDF 确定包版本&#xff1a; 根据论文提供的代码。在requirements.txt中发现cuda版本为11.7,cudnn为8.5.0&#xff0c;python没…...

etcd分布式存储系统快速入门指南

在分布式系统的复杂世界中&#xff0c;确保有效的数据管理至关重要。分布式可靠的键值存储在维护跨分布式环境的数据一致性和可伸缩性方面起着关键作用。 在这个全面的教程中&#xff0c;我们将深入研究etcd&#xff0c;这是一个开源的分布式键值存储。我们将探索其基本概念、特…...

dataTable

在 C# 中&#xff0c;DataTable 是 .NET Framework 中用于处理数据表格的一个类&#xff0c;属于 System.Data 命名空间。它是一种内存中表示数据表的结构&#xff0c;通常用于临时存储和操作数据&#xff0c;类似于数据库中的表。DataTable 的主要特点是行列结构&#xff0c;其…...

Flink学习连载文章11--双流Join

双流 Join 和两个流合并是不一样的 两个流合并&#xff1a;两个流变为 1 个流 union connect 双流 join: 两个流 join&#xff0c;其实这两个流还是原来的&#xff0c;只是满足条件的数据会变为一个新的流。 可以结合 sql 语句中的 union 和 join 的区别。 在离线 Hive 中&…...

RayLink远程控制技术助力教育领域的创新应用研究

远程控制技术在教育领域的应用确实改变了传统教学模式。想象一下&#xff0c;无论身处何地&#xff0c;只要有网络连接&#xff0c;就能通过远程软件加入课堂&#xff0c;这种体验是不是很吸引人&#xff1f;虽然远程控制听起来很技术化&#xff0c;但别担心&#xff0c;小编今…...

【Qt移植LVGL】QWidget手搓LVGL软件仿真模拟器(非直接运行图形库)

【Qt移植LVGL】QWidget手搓LVGL软件仿真模拟器&#xff08;非直接运行图形库&#xff09; 打包开源地址&#xff1a; Qt函数库gitee地址 更新以gitee为准 移植后的demo工程&#xff1a; gitee 有些没实现的 后续我会继续优化 文章目录 别碰瓷看清楚&#xff1a;是移植&#…...

PostgreSQL UNION 操作符

PostgreSQL UNION 操作符 引言 PostgreSQL 是一种功能强大的开源对象关系型数据库管理系统,它以其稳定性、可靠性和先进的特性而闻名。在处理数据库查询时,我们经常需要合并来自不同表的数据,或者合并同一表的不同查询结果。这时,UNION 操作符就变得非常有用。本文将详细…...

spring boot 测试 mybatis mapper类

spring boot 测试 mybatis mapper类 针对 mybatis plus不启动 webserver指定加载 xml 【过滤 “classpath*:/mapper/**/*.xml” 下的xml】, mapper xml文件名和mapper java文件名称要一样&#xff0c;是根据文件名称过滤的。默认情况加载和解析所有mapper.xml 自定义 MapperT…...

Python发kafka消息

要在Python中向Kafka发送消息&#xff0c;你可以使用kafka-python库。首先&#xff0c;你需要安装这个库。如果你还没有安装它&#xff0c;可以通过pip来安装&#xff1a; bash pip install kafka-python 接下来是一个简单的例子&#xff0c;展示如何创建一个生产者&#xff0…...

zipkin 引申一:如何遍历jar目录下的exec.jar并选择对应序号的jar启动

文章目录 一、Zipin概述二、如何下载三、需求描述四、代码实现1. pom设置2. 相关工具类3. 核心代码 五、打包部署1. 打包&#xff0c;在项目目录执行mvn clean package2. 部署3. 运行以及停止 六、源码放送 一、Zipin概述 Zipkin是Twitter开源的分布式跟踪系统&#xff0c;基于…...

使用 httputils + protostuff 实现高性能 rpc

1、先讲讲 protobuf protobuf 一直是高性能序列化的代表之一&#xff08;google 出品&#xff09;。但是用起来&#xff0c;可难受了&#xff0c;你得先申明 “.proto” 配置文件&#xff0c;并且要把这个配置文件编译转成类。所以必然要学习新语法、新工具。 可能真的太难受…...

Facebook广告文案流量秘诀

Facebook 广告文案是制作有效 Facebook 广告的关键方面。它侧重于伴随广告视觉元素的文本内容。今天我们的博客将深入探讨成功的 Facebook 广告文案的秘密&#xff01; 一、广告文案怎么写&#xff1f; 正文&#xff1a;这是帖子的正文&#xff0c;出现在您姓名的正下方。它可…...

在Vue.js中生成二维码(将指定的url+参数 生成二维码)

在Vue.js中生成二维码&#xff0c;你可以使用JavaScript库如qrcode或qr.js。以下是一个简单的例子&#xff0c;展示如何在Vue组件中使用qrcode库将指定的URL加上参数生成二维码。 首先&#xff0c;你需要安装qrcode库。如果你使用的是npm或yarn&#xff0c;可以通过命令行安装…...

Face2QR:可根据人脸图像生成二维码,还可以扫描,以后个人名片就这样用了!

今天给大家介绍的是一种专为生成个性化二维码而设计的新方法Face2QR&#xff0c;可以将美观、人脸识别和可扫描性完美地融合在一起。 下图展示为Face2QR 生成的面部图像&#xff08;第一行&#xff09;和二维码图像&#xff08;第二行&#xff09;。生成的二维码不仅忠实地保留…...

【Linux网络编程】第六弹---构建TCP服务器:从基础到线程池版本的实现与测试详解

✨个人主页&#xff1a; 熬夜学编程的小林 &#x1f497;系列专栏&#xff1a; 【C语言详解】 【数据结构详解】【C详解】【Linux系统编程】【Linux网络编程】 目录 1、TcpServerMain.cc 2、TcpServer.hpp 2.1、TcpServer类基本结构 2.2、构造析构函数 2.3、InitServer(…...

XML 语言随笔

XML的含义 XML&#xff08;eXtensible Markup Language&#xff0c;可扩展标记语言&#xff09;是一种用于存储和传输数据的标记语言。XML与HTML&#xff08;HyperText Markup Language&#xff0c;超文本标记语言&#xff09;类似&#xff0c;但XML的设计目的是描述数据&…...

flex: 1 display:flex 导致的宽度失效问题

flex: 1 & display:flex 导致的宽度失效问题 问题复现 有这样的一个业务场景&#xff0c;详情项每行三项分别占33%宽度&#xff0c;每项有label字数不固定所以宽度不固定&#xff0c;还有content 占满标签剩余宽度&#xff0c;文字过多显示省略号&#xff0c; 鼠标划入展示…...

65页PDF | 企业IT信息化战略规划(限免下载)

一、前言 这份报告是企业IT信息化战略规划&#xff0c;报告详细阐述了企业在面对新兴技术成熟和行业竞争加剧的背景下&#xff0c;如何通过三个阶段的IT战略规划&#xff08;IT 1.0基础建设、IT 2.0运营效率、IT 3.0持续发展&#xff09;&#xff0c;系统地构建IT管理架构、应…...

15.三数之和

给你一个整数数组 nums &#xff0c;判断是否存在三元组 [nums[i], nums[j], nums[k]] 满足 i ! j、i ! k 且 j ! k &#xff0c;同时还满足 nums[i] nums[j] nums[k] 0 。请你返回所有和为 0 且不重复的三元组。 注意&#xff1a;答案中不可以包含重复的三元组。 示例 1&am…...

【Notepad++】---设置背景为护眼色(豆沙绿)最新最详细

在编程的艺术世界里&#xff0c;代码和灵感需要寻找到最佳的交融点&#xff0c;才能打造出令人为之惊叹的作品。而在这座秋知叶i博客的殿堂里&#xff0c;我们将共同追寻这种完美结合&#xff0c;为未来的世界留下属于我们的独特印记。 【Notepad】---设置背景为护眼色&#xf…...

项目代码第2讲:从0实现LoginController.cs,UsersController.cs、User相关的后端接口对应的前端界面

一、User 1、使用数据注解设置主键和外键 设置主键&#xff1a;在User类的U_uid属性上使用[Key]注解。 设置外键&#xff1a;在Order类中&#xff0c;创建一个表示外键的属性&#xff08;例如UserU_uid&#xff09;&#xff0c;并使用[ForeignKey]注解指定它引用User类的哪个…...

电子商务人工智能指南 3/6 - 聊天机器人和客户服务

介绍 81% 的零售业高管表示&#xff0c; AI 至少在其组织中发挥了中等至完全的作用。然而&#xff0c;78% 的受访零售业高管表示&#xff0c;很难跟上不断发展的 AI 格局。 近年来&#xff0c;电子商务团队加快了适应新客户偏好和创造卓越数字购物体验的需求。采用 AI 不再是一…...

vue.js组件开发的所有流程

1. 设计组件架构 首先&#xff0c;你需要考虑应用的结构&#xff0c;决定哪些部分应该成为独立的组件。这包括&#xff1a; 提取重复的UI元素&#xff1a;如按钮、输入框、卡片等。 功能模块&#xff1a;例如登录框、导航栏、数据表格等。 2. 设置开发环境 安装Node.js&#xf…...

从零开始学TiDB(1) 核心组件架构概述

首先TiDB深度兼容MySQL 5.7 1. TiDB Server SQL语句的解析与编译&#xff1a;首先一条SQL语句最先到达的地方是TiDB Server集群&#xff0c;TiDB Server是无状态的&#xff0c;不存储数据&#xff0c;SQL 发过来之后TiDB Server 负责 解析&#xff0c;优化&#xff0c;编译 这…...

VsCode运行Ts文件

1. 生成package.json文件 npm init 2. 生成tsconfig.json文件 tsc --init 3. Vscode运行ts文件 在ts文件点击右键执行Run Code,执行ts文件...

初始化webpack应用示例

1、初始化npm mkdir webpack_test cd webpack_test npm init 2、安装webpack依赖 npm install webpack webpack-cli -D 3、添加文件夹&#xff0c;入口文件 mkdir src touch index.js touch add-content.js 文件夹结构 index.js import addContent from "./add-cont…...

liunx docker 部署 nacos seata sentinel

部署nacos 1.按要求创建好数据库 2.创建docker 容器 docker run -d --name nacos-server -p 8848:8848 -e MODEstandalone -e SPRING_DATASOURCE_PLATFORMmysql -e MYSQL_SERVICE_HOST172.17.251.166 -e MYSQL_SERVICE_DB_NAMEry-config -e MYSQL_SERVICE_PORT3306 -e MYSQL…...

MySQL面试

文章目录 事务隔离级别需要解决的问题事务隔离级别 MySQL 中是如何实现事务隔离的实现可重复读 什么是存储引擎如何定位慢查询分析慢查询原因MySQL超大分页怎么处理索引失效什么时候建立唯一索引、前缀索引、联合索引&#xff1f;redolog与binlog是如何保证一致的redolog刷盘时…...

linux运维之shell编程

Shell 编程在系统运维中及其重要 1. Shell 编程概述 Shell 是一种命令行解释器&#xff0c;能够执行操作系统的命令。Shell 脚本是一个包含一系列 Shell 命令的文件&#xff0c;它可以被执行&#xff0c;以自动化和批量处理任务。常用的 Shell 类型包括 bash、sh、zsh 等。Shel…...

ssm 多数据源 注解版本

application.xml 配置如下 <!-- 使用 DruidDataSource 数据源 --><bean id"primaryDataSource" class"com.alibaba.druid.pool.DruidDataSource" init-method"init" destroy-method"close"></bean> <!-- 使用 数…...

Nginx核心配置详解

一、配置文件说明 nginx官方帮助文档&#xff1a;nginx documentation nginx的配置文件的组成部分&#xff1a; 主配置文件&#xff1a;nginx.conf子配置文件: include conf.d/*.conffastcgi&#xff0c; uwsgi&#xff0c;scgi 等协议相关的配置文件mime.types&#xff1a;…...

十六(AJAX3)、XMLHttpRequest、Promise、简易axios封装、案例天气预报、lodash-debounce防抖

1. XMLHttpRequest 1.1 XMLHttpRequest-基本使用 /* 定义&#xff1a;XMLHttpRequest&#xff08;XHR&#xff09;对象用于与服务器交互。通过 XMLHttpRequest 可以在不刷新页面的情况下请求特定 URL&#xff0c;获取数据。这允许网页在不影响用户操作的情况下&#xff0c;更…...

12.06 深度学习-预训练

# 使用更深的神经网络 经典神经网络 import torch import cv2 from torchvision.models import resnet18,ResNet18_Weights from torch import optim,nn from torch.utils.data import DataLoader from torchvision.datasets import CIFAR10 from torchvision import tr…...

【计算机网络】期末速成(2)

部分内容来源于网络&#xff0c;侵删~ 第五章 传输层 概述 传输层提供进程和进程之间的逻辑通信&#xff0c;靠**套接字Socket(主机IP地址&#xff0c;端口号)**找到应用进程。 传输层会对收到的报文进行差错检测。 比特流(物理层)-> 数据帧(数据链路层) -> 分组 / I…...

Python学习笔记10-作用域

作用域 定义&#xff1a;Python程序程序可以直接访问命名空间的正文区域 作用&#xff1a;决定了哪一部分区域可以访问哪个特定的名称 分类&#xff1a; 局部作用域&#xff08;Local&#xff09;闭包函数外的函数中&#xff08;Enclosing&#xff09;全局作用域&#xff0…...

Sui 主网升级至 V1.38.3

Sui 主网现已升级至 V1.38.3 版本&#xff0c;同时协议升级至 69 版本。请开发者及时关注并调整&#xff01; 其他升级要点如下所示&#xff1a; 协议 #20199 在共识快速路径投票中设置允许的轮次数量。 节点&#xff08;验证节点与全节点&#xff09; #20238 为验证节点…...

linux的vdagent框架设计

1、vdagent Linux 的 spice 客户代理由两部分组成&#xff0c;一个系统范围的守护进程 spice-vdagentd 和一个 X11 会话代理 spice-vdagent&#xff0c;每个 X11 会话有一个。spice-vdagentd 通过 Sys-V initscript 或 systemd 单元启动。 如下图&#xff1a;spice-vdagent&a…...

vue3+elementPlus封装的一体表格

目录结构 源码 exportOptions.js export default reactive([{label: 导出本页,key: 1,},{label: 导出全部,key: 2,}, ])index.vue <template><div class"flex flex-justify-between flex-items-end"><div><el-button-group><slot name…...

判断是否 AGP7+ 的方法

如何判断&#xff1f; /*** 是否是AGP7.0.0及以上* param project* return*/static boolean isAGP7_0_0(Project project) {def androidComponents project.extensions.findByName("androidComponents")if (androidComponents && androidComponents.hasProp…...

使用 Streamlit +gpt-4o实现有界面的图片内容分析

在上一篇利用gpt-4o分析图像的基础上&#xff0c;进一步将基于 Python 的 Streamlit 库&#xff0c;结合 OpenAI 的 API&#xff0c;构建一个简洁易用的有界面图片内容分析应用。通过该应用&#xff0c;用户可以轻松浏览本地图片&#xff0c;并获取图片的详细描述。 调用gpt-4o…...

树莓集团是如何链接政、产、企、校四个板块的?

树莓集团作为数字影像行业的积极探索者与推动者&#xff0c;我们通过多维度、深层次的战略举措&#xff0c;将政、产、企、校四个关键板块紧密链接在一起&#xff0c;实现了资源的高效整合与协同发展&#xff0c;共同为数字影像产业的繁荣贡献力量。 与政府的深度合作政府在产业…...

Fyne ( go跨平台GUI )中文文档-Fyne总览(二)

本文档注意参考官网(developer.fyne.io/) 编写, 只保留基本用法 go代码展示为Go 1.16及更高版本,ide为goland2021.2??????? ?这是一个系列文章&#xff1a; Fyne ( go跨平台GUI )中文文档-入门(一)-CSDN博客 Fyne ( go跨平台GUI )中文文档-Fyne总览(二)-CSDN博客 Fyne…...