加载中
NOSQL入门

什么是NoSQL? NoSQL (Not Only SQL),指的是非关系型的数据库。是对不同于传统的关系型数据库的数据库管理系统的统称。 轻量、开源、不提供SQL功能的关系数据库。 NoSQL用于超大规模数据的存...

GC后,内存地址变了,对象引用变了吗?

类似于有个引用维护表,gc对象发生移动后, 一般对于堆区或静态区的引用,直接修改引用的指向(A->B,直接修改为A->C); 其他的引用,通过修改映射关系来间接改变指向(A->映射关系AB->B,修改...

03/13 15:10
334
Python内存管理:垃圾回收

前言: 平时没接触过Python,但是关于垃圾回收面试时候被问到了,就学习一下为什么Python用的是引用计数法。 Python GC主要使用引用计数来跟踪和回收垃圾。在引用计数的基础上,通过“标记-...

03/12 16:36
97
JVM-调优

关于CPU过载 CPU占用率及对应进程ID(pid)可以通过top命令确定,100%占有率可能由于以下两点导致: 1、堆内存不足导致频繁Full GC A、sudo jmap -heap pid 查看堆内存的消耗情况; B、sudo ...

03/12 11:28
148
BIO、NIO、AIO

一、简介 BIO (Blocking I/O):同步阻塞I/O模式,数据的读取写入必须阻塞在一个线程内等待其完成。这里使用那个经典的烧开水例子,这里假设一个烧开水的场景,有一排水壶在烧开水,BIO的工...

数据库-死锁

死锁(Deadlock):是指两个或两个以上的进程在执行过程中,因争夺资源而造成的一种互相等待的现象,若无外力作用,它们都将无法推进下去。此时称系统处于死锁状态或系统产生了死锁,这些永远...

03/11 16:56
82
MySQL-binlog

一、初步了解binlog 1、MySQL的二进制日志binlog可以说是MySQL最重要的日志,它记录了所有的DDL和DML语句(除了数据查询语句select),以事件形式记录,还包含语句所执行的消耗的时间,MySQL...

03/11 12:35
326
JVM-参数

一、Trace跟踪参数 1、打印GC的简要信息: -verbose:gc -XX:+printGC 输出: [GC 4790K->374K(15872K), 0.0001606 secs] [GC 4790K->374K(15872K), 0.0001474 secs] //GC之前,用了4M左右的内...

03/06 14:45
151
2020年3月----面经  

线程系列 线程池基本组成部分 1、ThreadPool(线程池管理器):创建线程池、销毁线程池、添加新任务; 2、工作线程(PoolWorker):线程池中线程,在没有任务时处于等待状态,可以循环的执行任...

03/04 10:48
493
递归遍历磁盘文件路径、模拟抽奖、线上解析json

今天机试的三个小题目 1、递归遍历磁盘文件路径 使用递归方法,遍历D盘(也可以更换成别的目录,效果达到即可)下全部的文件(包括子文件夹下的文件),输出文件路径,文件修改时间,文件按修改...

03/02 21:28
2.4K
如何设计一个高并发系统?

 系统拆分 将一个系统拆分为多个子系统,用 Dubbo 来完成;每个系统连一个数据库。 缓存 大部分的高并发场景,都是读多写少,你完全可以在数据库和缓存里都写一份,然后读的时候大量走缓...

spring常问面试题

1、什么是Spring? Spring是一个开源的Java EE开发框架。Spring框架的核心功能可以应用在任何Java应用程序中,但对Java EE平台上的Web应用程序有更好的扩展性。Spring框架的目标是使得Java ...

02/14 13:31
546
mybatis面试热点

什么是Mybatis? Mybatis是一个半ORM(对象关系映射)框架,它内部封装了JDBC,开发时只需要关注SQL语句本身,不需要花费精力去处理加载驱动、创建连接、创建statement等繁杂的过程。程序员直...

02/13 16:30
417
如何设计一个消息队列

一、支持可伸缩性 可以快速扩容,提高吞吐量和容量。设计一个分布式系统,类似于Kafka broker -> topic -> partition,每个 partition 放一个机器,就存一部分数据;资源不够时,增加partiti...

02/13 16:03
462
消息队列过期、溢出、积压问题

大量消息在 mq 里积压 如果此时修复consumer执行速度,再等着一条条执行,那修复积压数据效率会很低。 一般这个时候,只能临时紧急扩容了,具体操作步骤和思路如下: 先修复 consumer 的问题...

02/13 15:55
784
如何保证消息不被重复消费

Kafka重复消费的场景 Kafka 实际上有个 offset 的概念,每个消息写进去,都有一个对应的 offset代表消息的序号。consumer 消费了数据之后,定时定期会把消费过的消息的 offset 提交一下,表示...

02/13 15:45
716
如何保证消息的顺序性

1.为什么要保证顺序 消息队列中的若干消息如果是对同一个数据进行操作,这些操作具有前后的关系,必须要按前后的顺序执行,否则就会造成数据异常。举例: 比如通过mysql binlog进行两个数据库...

消息中间件的高可用

RabbitMQ 的高可用性 RabbitMQ 是比较有代表性的,因为是基于主从(非分布式)做高可用性的。 RabbitMQ 有三种模式:单机模式、普通集群模式、镜像集群模式。 单机模式: Demo 级别、本地启动...

02/11 16:38
190
MQ消息传输可靠性/消息丢失

RabbitMQ 解决方案 1、生产者将消息传输给mq时丢失 A:可以使用 RabbitMQ 提供的事务功能; 生产者发送数据之前开启 RabbitMQ 事务channel.txSelect,再发送消息,如果消息没有成功被 Rabbit...

02/10 15:53
222
MQ优缺点及不同组件的区别

为什么使用消息中间件?消息队列核心使用场景<优点>:解耦、异步、削峰 (1)解耦 传统模式: 传统模式的缺点: 系统间耦合性太强,如上图所示,系统A在代码中直接调用系统B和系统C的代码,如果...

02/10 15:07
232

没有更多内容

加载失败,请刷新页面

返回顶部
顶部