知识点总结专栏
文章平均质量分 87
知识点总结专栏
wanger61
这个作者很懒,什么都没留下…
展开
-
高并发商城秒杀项目总结
一. 项目概述二. 用户模块1. 模块功能用户模块分为以下功能:用户注册用户登录(*)更改密码从Session中获取用户信息¥2. 用户登录功能流程Controller接收用户id(手机号)和密码根据用户id获取用户信息(如果Redis缓存中有则从缓存中获取,没有则从数据库查出后放入Redis)将传来的密码MD5加密(利用用户的Salt值)后与用户的密码比较是否一致密码核对成功后,利用UUID生成token,在Response中添加值为token的Cookie,在Redis缓存原创 2021-02-26 16:08:29 · 1133 阅读 · 0 评论 -
Linux常用命令总结
Linux知识点总结1. Linux目录结构Linux采用层级式树状目录结构,全部文件至于一个根目录"/",在此根目录下再创建其它的目录。在Linux中,一切皆文件。目录存放的内容:/bin:存放常用命令/home:普通用户主目录(每个用户都有一个主目录,一般以用户名命名)/root:系统管理员主目录/etc:所有系统管理所需的配置文件和子目录/usr:放置用户的应用程序和文件...原创 2020-05-05 20:37:54 · 194 阅读 · 0 评论 -
消息队列与RabbitMQ常见面试题总结
一. 消息队列概述¥1. 为什么要用消息队列,消息队列的应用场景异步处理: 提高系统性能,减少响应所需时间应用解耦: 系统间通过消息通信,不用关心其他系统的处理。流量削锋 : 可以通过消息队列长度控制请求量;先将短时间高并发产生的事务消息存储在消息队列中,然后后端服务再慢慢根据自己的能力去消费这些消息,这样就避免直接把后端服务打垮掉。日志处理 :解决大量日志传输。消息通讯 :消息队列一般都内置了高效的通信机制,因此也可以用在纯的消息通讯。比如实现点对点消息队列,或者聊天室等。2. 使用消息原创 2021-01-15 19:08:23 · 198 阅读 · 0 评论 -
Redis知识点总结
一. 概述¥1. 什么是Redis?Redis的特点Redis是一个高性能非关系型(NoSQL)的键值对数据库。Redis的特点:数据均存放在内存中,读写性能优异所有的操作都是原子操作,保证线程安全支持数据持久化,支持事务,数据结构丰富,支持主从复制¥2. Redis的应用场景高速缓存,计数器,会话缓存(分布式Session),全页缓存消息队列(发布/订阅功能):List 通过 lpush 和 rpop 写入和读取消息分布式锁(SETNX 命令, RedLock )Set 可以实原创 2021-01-14 19:54:50 · 207 阅读 · 0 评论 -
SpringMVC常见面试题总结
1. MVC设计模式Model:系统涉及的数据,也就是 dao 和 bean。View:展示模型中的数据,只是用来展示。Controller:处理用户请求都发送给 ,返回数据给视图层并展示给用户。2. 什么是SpringMVCSpring MVC 是一款很优秀的 MVC 框架。Spring MVC 可以帮助我们进行更简洁的Web层的开发,并且它天生与 Spring 框架集成。Spring MVC 下我们一般把后端项目分为 Service层(处理业务)、Dao层(数据库操作)、Entity层原创 2021-01-13 19:07:06 · 125 阅读 · 1 评论 -
Java网络编程知识点总结
一. 概述¥1. 同步与异步同步 :两个同步任务相互依赖,并且一个任务必须以依赖于另一任务的某种方式执行。 比如在A->B事件模型中,你需要先完成 A 才能执行B。 再换句话说,同步调用中被调用者未处理完请求之前,调用不返回,调用者会一直等待结果的返回。异步: 两个异步的任务是完全独立的,一方的执行不需要等待另外一方的执行。再换句话说,异步调用中一调用就返回结果不需要等待结果返回,当结果返回的时候通过回调函数或者其他方式拿着结果再做相关事情¥2. 阻塞与非阻塞阻塞: 阻塞就是发起一个请原创 2021-01-10 15:06:08 · 167 阅读 · 0 评论 -
MySQL知识点总结
一. 通用模块1. MySQL体系结构连接器:管理连接,权限验证(连接分为长连接和短连接)解析器:词法分析,语法分析查询缓存:解析完后若命中则直接返回结果(由于对一个表的更新,这个表上所有的查询缓存都会被清空,导致命中率低,MySQL 8.0 后废除)优化器:执行计划生成,索引选择存储引擎:真正负责数据的存取(底层物理结构),是基于表而不是基于库2. ¥MyISAM和InnoDB存储引擎是否支持行级锁 : MyISAM 只有表级锁(table-level locking),而InnoD原创 2020-12-25 20:30:30 · 788 阅读 · 0 评论 -
计算机网络面试题总结
一.概述1. **OSI与TCP/IP各层的结构与功能,都有哪些协议?OSI分层 (7层):物理层、数据链路层、网络层、传输层、会话层、表示层、应用层。TCP/IP分层(4层):网络接口层、 网际层、运输层、 应用层。五层协议 (5层):物理层、数据链路层、网络层、运输层、 应用层。1.1 应用层(FTP、DNS、Telnet、SMTP、HTTP、NFS)(报文)应用层的任务是通过应用进程间的交互来完成特定网络应用。应用层协议定义的是应用进程(进程:主机中正在运行的程序)间的通信和交互的规则。原创 2020-12-06 21:38:50 · 2766 阅读 · 0 评论 -
操作系统面试题总结
操作系统知识点总结一.基础1. 什么是操作系统?用户与计算机硬件之间的接口控制和管理计算机资源的软件二.进程和线程1.什么是进程,什么是线程?单进程,单线程:MS_DOS, 多进程,单线程:Unix, 单进程,多线程:JVM,多进程,多线程:Linux, Windows,Android,IOS2.进程和线程的区别?一个进程可以有多个线程,多个线程可以并发,可以共享进程数...原创 2019-11-20 16:51:57 · 627 阅读 · 0 评论 -
JVM知识点总结
JVM常见问题0.什么是Java虚拟机?为什么Java被称作是“平台无关的编程语言”?Java虚拟机是一个可以执行Java字节码的虚拟机进程。Java源文件被编译成能被Java虚拟机执行的字节码文件。 Java被设计成允许应用程序可以运行在任意的平台,而不需要程序员为每一个平台单独重写或者是重新编译。Java虚拟机让这个变为可能,因为它知道底层硬件平台的指令长度和其他特性。1.Java类的...原创 2019-12-23 20:20:48 · 367 阅读 · 1 评论 -
Spring常见面试题总结
Spring1.Spring是什么?答:Spring是一个轻量级的IoC和AOP容器框架。是为Java应用程序提供基础性服务的一套框架,目的是用于简化企业应用程序的开发,它使得开发者只需要关心业务需求。2.Spring 的优点答:(1)spring属于低侵入式设计,代码的污染极低;(2)spring的DI机制将对象之间的依赖关系交由框架处理,减低组件的耦合性;(3)Spring提供了AOP技术,支持将一些通用任务,如安全、事务、日志、权限等进行集中式管理,从而提供更好的复用。(4)spring原创 2020-09-01 11:00:29 · 307 阅读 · 0 评论 -
Java基础面试题总结
基础语法1. ‘+’,StringBuilder,StringBuffer的区别使用+直接拼接,String 是final对象,不会被修改,每次使用 +进行拼接都会创建新的对象,而不是改变原来的对象,效率低,是线程安全的。使用StringBuffer可变字符串,效率较高,是线程安全的(StringBuffer的方法使用了synchronized关键字进行修饰)。使用StringBuilder可变字符串,效率最高,但是线程不安全。面向对象1.简述面向对象的特性封装:建议成员变量私有,然后提原创 2020-09-16 20:52:37 · 162 阅读 · 0 评论 -
设计模式的一点思考
关于设计模式总结的最好的一篇文章:https://javadoop.com/post/design-pattern设计模式看这一篇就够了原创 2020-09-22 19:48:46 · 84 阅读 · 0 评论 -
JavaWeb面试题总结
1.转发和重定向的区别?转发: 转发地址栏路径不变、 转发只能访问当前服务器下的资源、转发是一次请求,可以使用request对象来共享数据。重定向:地址栏发生变化、重定向可以访问其他站点(服务器)的资源、重定向是两次请求(告诉客户端去访问其他地址),不能使用request对象来共享数据。2.Cookie的特点Cookie是客户端会话技术,将数据保存到客户端。浏览器对于单个cookie 的大小有限制(4kb) 以及对同一个域名下的总cookie数量也有限制(20个),cookie一般用于存出少原创 2020-09-25 20:27:21 · 119 阅读 · 0 评论 -
Java多线程知识点总结
一. 多线程概述锁有什么作用?有哪些分类?①Java中的锁主要用于保障多并发情况下数据的一致性,线程必须先获取锁才能进行操作,可以保证数据的安全。②从乐观和悲观的角度可以分为乐观锁和悲观锁。③从获取资源的公平性可以分为公平锁和非公平锁。④从是否共享资源的角度可以分为共享锁和排它锁。⑤从锁的状态角度可分为偏向锁、轻量级锁和重量级锁。乐观锁和悲观锁①乐观锁采用乐观的思想处理数据,在每次读取数据时都认为别人不会修改该数据,所以不会上锁。但在更新时会判断在此期间别人有没有更新该数据。Java中的乐观原创 2020-10-18 16:33:31 · 583 阅读 · 1 评论 -
MyBatis面试题总结
一.MyBatis概述MyBatis是什么?MyBatis 是一款优秀的持久层框架,一个半 ORM(对象关系映射)框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以使用简单的 XML 或注解来配置和映射原生类型、接口和 Java 的 POJO(Plain Old Java Objects,普通老式 Java 对象)为数据库中的记录。ORM是什么ORM(Object Relational Mapping)转载 2020-10-28 19:57:35 · 202 阅读 · 0 评论 -
海量数据问题总结
一.频次统计/top1/topK/问题这种问题通用的四步解决:第一步:Hash映射。对要统计的对象取Hash值,将该Hash值对K取模,根据取模结果将原本的大文件分割为K个小文件。第二步:Hash统计。在每个小文件中,利用Hash表统计对象的频次,这里要保证内存足够存放所有不同对象。(也可利用trie树进行频率统计)第三步:堆排序。对于TOPK问题,建立大小为K的最小堆,然后逐个读入统计后的对象,如果对象频次大于堆顶,则移除堆顶,将该元素加入堆中。由于堆的调整时间为log(K),因此遍历所有元素的原创 2020-11-23 20:19:57 · 355 阅读 · 0 评论 -
Java集合类面试题总结
Java集合类面试题1、集合总结CollectionSetTreeSet:基于红黑树实现,支持有序性操作,例如:根据一个范围查找元素的操作。但是查找效率不如 HashSet,HashSet 查找的时间复杂度为 O(1),TreeSet 则为 O(logN)。HashSet:基于哈希表实现,支持快速查找,但不支持有序性操作。并且失去了元素的插入顺序信息,也就是说使用 Iterator 遍历...原创 2019-09-23 19:43:54 · 1147 阅读 · 0 评论