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

互联网面经

腾讯视频

代码:反转链表,单例模式

RAII,哪里用到

Web服务器怎样处理请求  get\post流程

项目使用的还是http1.0吗;http2.0:二进制、首部压缩、主动推送;Https

Epoll/select/poll          ET/LT

进程地址空间。32位、64位区别

了解go吗

协程,项目中用过吗?  为什么更快?

Linux:

        查进程信息 ps aux

        查内存信息 : Top  查看进程cpu和内存信息

设计模式:

        手写单例模式

        懒汉、饿汉模式区别

        C11版本懒汉怎样保证线程安全

STL:

        Unordered_map   map  底层,区别. 查询时间复杂度

索引、B+树    B+树层数

raft项目

        分布式的使用场景,用来做什么?高并发、多副本????

        Raft算法作用

        强一致、最终一致区别

        http 、rpc区别

        序列化

拥塞控制

面试官建议

        学习etcd,了解go;

        打磨简历,突出和别人不同之处

微信支付

自我介绍:再打磨一下

C++

多态:重载、派生类重写。紧张,说的不好。

纯虚函数、抽象类

构造函数、析构函数是否为虚函数

析构函数不定义为虚函数,一定会造成内存泄漏吗?

基类指针指向派生类对象,若基类析构函数不是虚函数,则调用基类析构函数,不会调用派生类析构函数。这样一定会导致内存泄漏吗?不一定。

如果派生类没有动态申请资源,就不会导致内存泄漏。派生类非指针成员是保存在栈上的,离开派生类对象的作用域,内置类型成员会自动释放,类类型成员会调用其析构函数。派生类指针成员所申请的内存,需要在派生类的析构函数的函数体中手动释放。

析构函数:

        函数体 + 隐式的析构部分(成员自动被销毁,按照初始化逆序)。函数体不直接销毁成员。

  • 销毁类类型成员需要执行成员自己的析构函数,销毁内置类型成员什么也不用做。
  • 指针成员会被自动销毁,但是指针所指向的空间需要使用delete手动销毁
  • 智能指针是类对象,离开作用域时,会自动执行其析构函数

未定义析构函数,编译器会定义一个合成析构函数,函数体为空。

如果函数体什么也不做,是否可以认为析构函数什么也不做?而非指针成员的析构是自动完成的。

c++内存空间

static

指针和引用

        什么时候使用引用?引用的好处

        指针引用区别?

智能指针

RAII

将资源和对象的生命周期绑定。如lock_guard,  智能指针

自己说到了web服务器使用RAII思想自动释放数据库连接,但没说明白。。。。。。。

任务类初始化自动获取数据库连接,析构自动释放数据库连接。

连接断开怎么处理?tcp连接断开,数据库连接断开?布吉岛

RAII作用:

  • 构造函数中获取资源,析构函数中释放资源,简化资源管理,使代码更简洁。
  • 提供异常安全性,确保发生异常时资源正确释放。因为资源的释放放在析构函数中,析构函数是自动执行的,即使发生异常,也能正确释放资源,避免内存泄漏。

vector底层原理,扩容导致迭代器失效 

map、unordered_map底层,红黑树是否了解

快排思想

IO多路复用  LT/ET

epoll就绪文件描述符怎样传递?内核中使用链表维护一个就绪队列,但需要拷贝传递

// 事件数组,作为epoll_wait()的传出参数使用,保存发生变化了的文件描述符的信息
epoll_event events[MAX_EVENT_NUMBER];int number = epoll_wait(epollfd, events, MAX_EVENT_NUMBER, -1);

OS

进程线程区别。说的太少了。

什么时候使用进程,什么时候使用线程:

使用进程:

        需要独立地址空间,互不干扰

        稳定、安全,一个进程崩溃不会影响其它进程

        同时执行多个任务,每个进程使用一个cpu核心,并行执行

使用线程:

        需要共享数据,同一进程的线程共享地址空间

        高并发的情况,使用线程,因为线程切换开销低

死锁

进程通信。最快的方式-共享内存

MySql

引擎

事务特性ACID

事务隔离级别

幻读

索引

覆盖索引创建覆盖索引时可以指定所包含的列,避免回表

raft项目

数据在内存中?怎样存储?

介绍了以下,说的很简单。需要把

没有细问。 

总结:全部八股,基本没有问项目。注重基础。是不是项目不感兴趣?赶紧把协程库做了。

 

相关文章:

互联网面经

腾讯视频 代码:反转链表,单例模式 RAII,哪里用到 Web服务器怎样处理请求 get\post流程 项目使用的还是http1.0吗;http2.0:二进制、首部压缩、主动推送;Https Epoll/select/poll ET/LT 进程地址空间。3…...

xss介绍及作用

XSS(Cross-Site Scripting)是一种常见的网络安全漏洞,它允许攻击者向网站注入恶意的客户端脚本代码,从而在用户的浏览器中执行这些代码。 XSS攻击的原理是攻击者将恶意脚本插入到网页中的用户输入数据中,当其他用户访…...

PostgreSQL入门到实战-第二弹

PostgreSQL入门到实战 PostgreSQL安装之Windows官网地址PostgreSQL概述Windows上安装PostgreSQL更新计划 PostgreSQL安装之Windows 官网地址 声明: 由于操作系统, 版本更新等原因, 文章所列内容不一定100%复现, 还要以官方信息为准 https://www.postgresql.org/PostgreSQL概…...

3-【PS让图片动起来】系列1-【导入素材】

【问题介绍】仅做图片,现在很难吸引用户视线,越来越多地图片需要动起来增添意境,比如春日樱花花瓣掉落、冬季雪花纷纷,今天来学学怎么用PS的时间轴,让图片动起来~ 如下图,一副冬日雪景图,想给画…...

基于Java+SpringBoot+Mybaties+layui+Vue+elememt 实习管理系统 的设计与实现

一.项目介绍 前台功能:用户进入系统可以实现首页,系统公告,个人中心,后台管理等功能进行操作 后台由管理员,实习单位,教师和学生,主要功能包括首页,个人中心,班级管理&am…...

非关系型数据库——Redis基本操作

目录 一、Redis数据库常用命令 1.Set——存放数据 2.Get——获取数据 3.Keys——获取符合条件的键值 4.Exists——判断键值是否存在 5.Del——删除指定键值 6.Type——获取键值对应的类型 7.Rename——对已有键值重命名(覆盖) 8.Renamenx——对…...

golang语言和JAVA对比

引言: 在当今的软件开发领域,有许多编程语言供开发人员选择。其中,Golang和Java是两种备受开发者青睐的语言。本文将探讨Golang和Java之间的比较和对比,分析它们在语言特性、性能、平台支持、社区和生态系统、开发效率和可维护性等方面的异同。 一、语言特性和性能 Golang…...

隐私计算实训营学习九:隐语多方安全计算在安全核对的行业实践

文章目录 一、业务背景:安全核对产生的土壤二、产品方案:从试点到规模化的路三、技术共建:与隐语的共同成长 一、业务背景:安全核对产生的土壤 业务背景:很多粗放使用数据的方式被新出台的法律法规所规范,…...

C#实现只保存2天的日志文件

文章目录 业务需求代码运行效果 欢迎讨论! 业务需求 在生产环境中,控制台窗口不便展示出来。 为了在生产环境中,完整记录控制台应用的输出,选择将其输出到文件中。 但是,存储所有输出的话会占用很多空间,…...

C++ 类和对象(中篇)

类的6个默认成员函数 如果一个类中什么成员都没有,简称为空类。空类中什么都没有吗?并不是的,任何一个类在我们不写的情 况下,都会自动生成下面6个默认成员函数。 构造函数: 定义:构造函数是一个特殊的成员…...

可视化场景(9):智慧看板,可能是最直观的数据展示

10年经验的大数据可视化和数字孪生老司机,该领域的专家,是您可信赖的技术合伙人,分享该领域的项目和作品,欢迎互动交流。 hello,我是贝格前端工场,本期分享可视化大屏在安全生产与设备运维场景的应用&#…...

加密算法(二)

1、SHA-256加密算法: package com.arithmetic.encryption; import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; //使用java.security.MessageDigest类来进行SHA-256摘要的计算。 //通过getInstance("SHA-256")方法获取…...

大创项目推荐 深度学习 YOLO 实现车牌识别算法

文章目录 0 前言1 课题介绍2 算法简介2.1网络架构 3 数据准备4 模型训练5 实现效果5.1 图片识别效果5.2视频识别效果 6 部分关键代码7 最后 0 前言 🔥 优质竞赛项目系列,今天要分享的是 🚩 基于yolov5的深度学习车牌识别系统实现 该项目较…...

IP知识详解

IP基本认识 IP 在 TCP/IP 参考模型中处于第三层,也就是网络层。 网络层的主要作用是:实现主机与主机之间的通信,也叫点对点(end to end)通信。 网络层与数据链路层有什么关系呢? IP 的作用是主机之间通信…...

设计模式:适配器模式

定义 适配器模式(Adapter Pattern),也称为包装器(Wrapper)模式,是一种结构型设计模式,它允许不兼容的接口之间进行交互。适配器模式通过包装一个已有的类,提供一个与原系统兼容的接…...

大语言模型落地的关键技术:RAG

1、什么是RAG? RAG 是检索增强生成(Retrieval-Augmented Generation)的简称,是当前最火热的大语言模型应用落地的关键技术,主要用于提高语言模型的效果和准确性。它结合了两种主要的NLP方法:检索&#xff…...

ffmpeg Android 笔记

目录 没有示例项目 编译好的.a文件 ffmpegandroid 延时有220ms rk官方有例子 ffmpeg Android 笔记 没有示例项目 编译好的.a文件 FFmpeg-Android/ffmpeg-android-aarch64-34/lib at main yhbsh/FFmpeg-Android GitHub ffmpegandroid 看到了音频解码器 FFmpegAndroid/a…...

本地创建新分支并提交gitee

初始化本地仓库 git init链接远程仓库 git remote add origin https://gitee.com/xxxxxxxxxxx提交本地代码(进行commit提交) git add . git commit -m "分支名"创建分支 git branch 分支名选择刚刚创建的分支 git checkout 分支名查看所选中的分支 git branch …...

[蓝桥杯 2019 国 C] 数正方形

[蓝桥杯 2019 国 C] 数正方形 题目描述 在一个 N N N \times N NN 的点阵上,取其中 4 4 4 个点恰好组成一个正方形的 4 4 4 个顶点,一共有多少种不同的取法? 由于结果可能非常大,你只需要输出模 1 0 9 7 10^9 7 1097 的…...

Redis: 配置文件详解(Redis.conf)

文章目录 一、Units二、INCLUDES三、NETWORK四、GENERAL五、SECURITY六、LIMITS 一、Units 单位,配置大小单位,开头定义了一些基本的度量单位,只支持bytes,不支持bit,大小写不敏感 二、INCLUDES 包含,多…...

在鸿蒙HarmonyOS 5中实现抖音风格的点赞功能

下面我将详细介绍如何使用HarmonyOS SDK在HarmonyOS 5中实现类似抖音的点赞功能,包括动画效果、数据同步和交互优化。 1. 基础点赞功能实现 1.1 创建数据模型 // VideoModel.ets export class VideoModel {id: string "";title: string ""…...

循环冗余码校验CRC码 算法步骤+详细实例计算

通信过程:(白话解释) 我们将原始待发送的消息称为 M M M,依据发送接收消息双方约定的生成多项式 G ( x ) G(x) G(x)(意思就是 G ( x ) G(x) G(x) 是已知的)&#xff0…...

【解密LSTM、GRU如何解决传统RNN梯度消失问题】

解密LSTM与GRU:如何让RNN变得更聪明? 在深度学习的世界里,循环神经网络(RNN)以其卓越的序列数据处理能力广泛应用于自然语言处理、时间序列预测等领域。然而,传统RNN存在的一个严重问题——梯度消失&#…...

Auto-Coder使用GPT-4o完成:在用TabPFN这个模型构建一个预测未来3天涨跌的分类任务

通过akshare库,获取股票数据,并生成TabPFN这个模型 可以识别、处理的格式,写一个完整的预处理示例,并构建一个预测未来 3 天股价涨跌的分类任务 用TabPFN这个模型构建一个预测未来 3 天股价涨跌的分类任务,进行预测并输…...

oracle与MySQL数据库之间数据同步的技术要点

Oracle与MySQL数据库之间的数据同步是一个涉及多个技术要点的复杂任务。由于Oracle和MySQL的架构差异,它们的数据同步要求既要保持数据的准确性和一致性,又要处理好性能问题。以下是一些主要的技术要点: 数据结构差异 数据类型差异&#xff…...

Mac软件卸载指南,简单易懂!

刚和Adobe分手,它却总在Library里给你写"回忆录"?卸载的Final Cut Pro像电子幽灵般阴魂不散?总是会有残留文件,别慌!这份Mac软件卸载指南,将用最硬核的方式教你"数字分手术"&#xff0…...

【Web 进阶篇】优雅的接口设计:统一响应、全局异常处理与参数校验

系列回顾: 在上一篇中,我们成功地为应用集成了数据库,并使用 Spring Data JPA 实现了基本的 CRUD API。我们的应用现在能“记忆”数据了!但是,如果你仔细审视那些 API,会发现它们还很“粗糙”:有…...

BCS 2025|百度副总裁陈洋:智能体在安全领域的应用实践

6月5日,2025全球数字经济大会数字安全主论坛暨北京网络安全大会在国家会议中心隆重开幕。百度副总裁陈洋受邀出席,并作《智能体在安全领域的应用实践》主题演讲,分享了在智能体在安全领域的突破性实践。他指出,百度通过将安全能力…...

rnn判断string中第一次出现a的下标

# coding:utf8 import torch import torch.nn as nn import numpy as np import random import json""" 基于pytorch的网络编写 实现一个RNN网络完成多分类任务 判断字符 a 第一次出现在字符串中的位置 """class TorchModel(nn.Module):def __in…...

免费PDF转图片工具

免费PDF转图片工具 一款简单易用的PDF转图片工具,可以将PDF文件快速转换为高质量PNG图片。无需安装复杂的软件,也不需要在线上传文件,保护您的隐私。 工具截图 主要特点 🚀 快速转换:本地转换,无需等待上…...