快来骂我两句
点赞 3

相关推荐

05-19 23:59
湖南大学 Java
1、慢SQL的具体内容;2、应用DB是如何确保事务的持久性;    写前日志机制:再事务对数据库进行修改之前,数据库系统回先将事务的操作信息记录到日志文件中。这些日志信息包括事务的开始,每个操作的细节(如修改了哪些数据、修改前后的值等)以及事务的结束等内容。日志文件通常被写入磁盘等持久化存储设备上。这样可以保证系统出现故障时,可以更具日志来恢复事务的执行状态;    在mysql中,事务的持久性主要通过1、利用InnoDB的存储引擎的日志机制,当事务对数据进行修改时,InnoDB存储引擎会先将这些修改记录记录到redolog中。redo log属于物理日志,它记录的是数据页的物理修改情况。例如,当更新一行数据时,redo log会记录该数据页中具体字节的修改内容。binlog时记录了所有数据库的修改操作,包括数据的增删改查。binlog是逻辑日志,记录的是sql语句或者行的变化。例如,执行一条“UPDATE table SET column = value WHERE condition”语句,binlog会记录这条语句的执行细节。2、通过事务提交时的磁盘写入操作:当事务提交时,mysql会将事务涉及的数据页从内存中的缓冲池刷新到磁盘。缓冲池是InnoDB用于缓存数据页和索引页的内存区域,数据的修改首先是在内存中进行的。写入操作不是完全同步的,而是结合了redo log机制,因为redo log已经保证了事务的持久性,数据页的最终写入磁盘可以在检查点过程中进行。3、事务的隔离级别4、自适应哈希索引流的机制    自适应哈希索引是一种用于优化数据库性能的机制,它可以根据数据库的负载和查询模式动态地创建和维护哈希索引,以下是具体介绍:工作原理    数据页监控 :InnoDB 存储引擎会监控对表中数据页的访问情况。当发现某些数据页被频繁访问时,就会考虑为这些页创建哈希索引。    哈希索引创建 :如果一个数据页被访问的次数超过了设定的阈值,并且内存中还有足够的空间来存储哈希索引结构,InnoDB 会自动在后台为该数据页上的某个索引创建一个哈希索引。    哈希索引维护 :随着数据的插入、删除和更新操作,哈希索引会自动进行维护,以保证其有效性和准确性。当数据页的访问频率降低,或者内存空间不足时,InnoDB 也会自动删除不再需要的哈希索引。5、网络协议http、https协议的区别6、timewait的作用7、TCP如何进行拥塞控制8、操作系统的内存管理机制    虚拟内存(虚拟内存是一种内存管理技术,使得程序可以使用比实际物理内存更大的地址空间。它通过将程序的地址空间分割成多个页面或者段,然后将这些页面或者段部分的存储在内存中,而将其他部分存储在磁盘外部存储器上。当需要访问一个不在内存中的页面时,由操作系统负责将其调入内存):分页式存储、段页式存储    地址映射:静态重定位(绝对地址映射)、动态重定位(相对地址映射)    内存保护:分区保护:在分区分配系统中,为每个分区设置保护机制来限制进程的访问范围;页表保护:在虚拟内存系统中,通过页表来实现内存保护。每个进程都有自己的页表,页表中除了包含虚页到物理块的映射关系外,还包含访问权限位。9、软链接和硬链接的区别软链接软链接是一个独立的文件,它包含了一个指向目标文件或目录的路径。从本质上来说,软链接就像是一个快捷方式,它有自己的 inode(文件系统用于存储文件元数据的结构)。例如,如果有一个文件 file1,创建一个软链接 symlink1 指向它,symlink1 有自己的 inode,其内容是指向 file1 的路径。软链接可以跨文件系统,也就是说,软链接可以位于与目标文件不同的文件系统上。例如,目标文件在 /dev/sda1 分区,软链接可以在 /dev/sda2 分区。硬链接硬链接是直接指向目标文件 inode 的链接。多个硬链接共享同一个 inode,它们是同一个文件的不同名称。例如,对于文件 file1,创建硬链接 hardlink1 后,hardlink1 和 file1 都指向同一个 inode,操作系统将它们视为同一个文件的两个入口。硬链接不能跨文件系统。因为硬链接依赖于目标文件的 inode,而 inode 号在不同的文件系统中是独立的,所以硬链接必须位于与目标文件相同的文件系统中。
查看9道真题和解析
点赞 评论 收藏
分享
05-08 15:16
已编辑
门头沟学院 golang
  某四线城市的0-20人的小厂,这里不多说全程接近50min面试问题:1、简要介绍一下你自己2、拷打项目:第一个项目做了一个类似于淘宝的电商网页(1)说说你的项目的注册登录,Session 和cookie怎么搞的。(2)你的项目注册流程,加密解密流程,用了什么算法,算法是怎么实现的?根据你回答的md5 码加密,说说用的什么算法,怎么实现的?你加密过后存储到数据库中,用户登录的时候是怎么取出判定用户登录的,解密一个还是全部都解密?项目答得一般,算法没答出来,加密解密流程给他扯了很久,自己都绕晕了。没搞明白面试官到底要扯什么……第二个项目,Linux的进程管理器(1)说说你的进程管理器主要有哪些功能?(2)能说说进程和线程的区别吗?(3) Linux系统中你的那个进程是如何实现这些操作的的?答:简单介绍了exec 族函数和系统调用方面,举例如:通过kill 命令传输一个值,传递信号然后实现追问:信号是怎么实现的,进程为什么收到信号呢?答:哥们不会🤡追问:Linux系统输入输出传递了什么信号?答:不会,煮波给面试官鬼扯了,我寻思输入输出不是系统调用?被大大的羞辱🤡(看来你Linux也不是很会啊)(4) 怎么创建一个父子进程?还行追问:说说父子进程怎么实现的,父子进程有哪些区别?答得还行追问: 子进程继承了父进程的那些东西?答得一般追问: 子进程那些东西是单独的不会被继承的?答得一般3、拷打408(1) 说说广度优先和深度优先的原理,怎么实现的?这里答得还算不错追问:会动态规划吗?讲讲动态规划?不会(2)哈希表底层是怎么实现的?数据结构是怎么样的?到这个问题我已经快红温了,说了哈希表底层是通过数组映射,然提了一下桶,后续的煮波不会🤡,被面试官说你哈希表都不会,羞辱x1🤡(3)说说有哪些排序算法,你熟悉的,给我讲讲。(4)操作系统之前和Linux那个项目拷打了,就没问了(5)说计算机网络吧,我从浏览器打开一个网页,网页显示出页面内容,这个的底层流程是怎么执行的?说出对应的协议。答:首先会经过域名解析协议找到ip 地址,通过ip 地址再去发送http/https请求,再经过层层封装tcp 或者udp ,ip 数报,经过数据链路层的封装最后以太网发出去。个人认为答得一般,被羞辱x2 🤡追问:TCP数据报有哪些内容?答:简单的提了一下首部字段20字节这种,后续有什么扩展,路由协议啥的。追问:域名解析用的什么协议,该协议用的什么传输层协议?还行4、八股(1) go中的哈希表和库函数中的哈希表有什么区别?这里还行(2) 这两个底层有什么不同?羞辱x3🤡(3) 说说channel 有缓冲和无缓冲的区别?还行(4)如果有1000个同时访问channel ,你该如何保持channel (记不清楚了,问的类似channel 怎么实现并发的)羞辱x4🤡会议时间不够了,没问了,感谢救我狗命反问: 1、实习最短要求多久?2、工作时间怎么样的?说5月加班还是有的,这个月项目做得差不多了就不会加班了(有点不信)3、公司是做什么的?4、了解了一下薪资:踢皮球,说HR才知道已挂……面试体验:没想到四线城市的小厂竟然问这么多,全方位的拷打,老实了      
查看28道真题和解析 面试问题记录
点赞 评论 收藏
分享

牛客热帖

更多
牛客网
牛客企业服务