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

几道面试题记录20231023

1, JVM优化

  -Xms=-Xmx

  -Xmn

  -Xss

  -XX:PermSize

  -XX:MaxPermSize

-NewRatio

-SuvriorRatio

收集器配置:

         一般:串行收集 Serial

         吞吐优先:并行收集Pramllel

响应优先:并发收集Conc

2,支付掉单如何解决?

因为网络等原因,支付网关未收到银行返回的操作结果(银行扣款未成功;银行扣款成功,故客户的虚拟账户及订单收款状态未发生变化,称为掉单。

可以通过后端程序轮询银行前置机的支付接口,查询支付状况,根据情况延迟更新客户的虚拟账户及订单收款状态。

3,行级锁如何解决?

通过存储过程

4,数据库事务的安全性?

         创建恢复点

         开始事务

         结束事务

         提交事务或回滚事物

5,假如给tomcat的内存只有40MB,数据库有20000条记录,一次性导出到客户端,内存不够用怎么办?

         将20000条记录分批次先后导出(分页查询)到不同文件,再合并到一个文件。

                                                                     

6,长时间的事务如何处理?

         收缩日志文件(修改日志文件大小),就是短时提交,这样保持会话的连续性。

7, 大量并发操作hashmap,如remove,put,get等,不能使用synchronized关键字来同步,也不能使用hashtable(线程安全耗时),如何解决?

         ThreadLocal(线程隔离,独立维护线程局部变量副本 HashMap) 在SSH框架应用较多,特别struts.Hibernate

8,分布式以及集群环境下,对大量小文件均衡同步分发,是什么原理,采用什么算法?

         经过HashTree(多次hash)来同步,hash算法,如TFS,GFS,HDFS.

9,MQ应用中,消息的消费处理低于消息生产,消息队列发生阻塞,如何处理?

         1,消息生产对消息分组打包发送,消息消费拆包消费,从而降低消息队列中的消息数量。

         2,设置相应的q,timeout值,xmitq值要设置大些。

10,有一张很大的银行卡表,因账务操作,使用频繁,并发量大,导数数据库压力增大,如何处理?

         使用缓存(应用缓存,数据库缓存),或表拆分

11,Oracle表分区的好处?

         通过对表进行分区,可以获得以下的好处: 

1) 增强可用性:如果表的某个分区出现故障,表在其他分区的数据仍然可用; 

2) 维护方便:如果表的某个分区出现故障,需要修复数据,只修复该分区即可;  

3) 均衡I/O:可以把不同的分区映射到磁盘以平衡I/O,改善整个系统性能;  

4) 改善查询性能:对分区对象的查询可以仅搜索自己关心的分区,提高检索速度

12,数据库表拆分(一主多从到多主多从)

两个维度:

 垂直拆分:是指按功能模块拆分,比如可以将群组相关表和照片相关表存放在不同的数据库中,这种方式多个数据库之间的表结构不同。

  水平拆分:而水平拆分是将同一个表的数据进行分块保存到不同的数据库中,这些数据库中的表结构完全相同。

13,线程间通信(数据传递或共享)?

  1. 注入回调接口;静态回调…
  2. 全局变量
  3. 系统环境变量,
  4. 虚拟机环境变量
  5. 文件形式
  6. 表状态
  7. JMS,MQ
  8. 管道流

相关文章:

几道面试题记录20231023

1, JVM优化 -Xms-Xmx -Xmn -Xss -XX:PermSize -XX:MaxPermSize -NewRatio -SuvriorRatio 收集器配置: 一般:串行收集 Serial 吞吐优先:并行收集Pramllel 响应优先:并发收集Conc 2,支付掉单如何解决? 因为网络等原…...

c++ 线程安全的string类

非安全string 说明 c标准未规定stl容器以及字符串的线程安全性&#xff0c;故std::string在多线程下是不安全的。 代码示例 #include <iostream> #include <stdio.h> using namespace std;std::string *sp nullptr;void Read() {for(int i 0; i < 100000;…...

linux上安装apktool反编译apk解析AndroidManifest.xml得到首页Activity

需求 在linux系统上反编译安卓app, 有些应用需要知道其主页Activity用于adb指令打开其主页。 安装 自动安装脚本 #!/bin/bashwget https://raw.githubusercontent.com/iBotPeaches/Apktool/master/scripts/linux/apktool -O ./apktool wget https://bitbucket.org/iBotPeac…...

代码随想录算法训练营第4天| 24. 两两交换链表中的节点、19.删除链表的倒数第N个节点、面试题 02.07. 链表相交 、142.环形链表II

JAVA语言编写 24. 两两交换链表中的节点 谷歌、亚马逊、字节、奥多比、百度 给你一个链表&#xff0c;两两交换其中相邻的节点&#xff0c;并返回交换后链表的头节点。你必须在不修改节点内部的值的情况下完成本题&#xff08;即&#xff0c;只能进行节点交换&#xff09;。…...

【面向对象程序设计】Java大作业 汽车租赁管理系统V4.0

前言 自己大二时候使用JavaMysql写的租车系统大作业V4.0黑窗口版的一个记录&#xff0c;简简单单的黑窗口&#xff0c;不是炫酷的前后端分离也没用GUI&#xff0c;但功能完善&#xff0c;该有都有&#xff0c;当时得分也还是挺不错的 技术栈 Java (jdk8)Mysql 资源包内容 …...

golang模拟QQ退出后自动重启

模拟QQ退出后自动重启&#xff0c;go build xxx.go 打包成exe运行。 processName 为你所需要的进程exe processNamePath 为你所需要的进程路径 package mainimport ("bytes""errors""fmt""os""os/exec""regexp"&…...

jQuery中ajax如何使用

jQuery中ajax如何使用及代码详解 1. 引言 在现代Web开发中&#xff0c;使用Ajax进行异步数据交互变得非常普遍。而在jQuery中&#xff0c;提供了便捷的方法来实现Ajax请求&#xff0c;简化了开发过程。本文将介绍jQuery中如何使用Ajax以及通过代码详解其使用方法。 2. Ajax简介…...

redis集群的多key原子性操作如何实现?

1、背景 在单实例redis中&#xff0c;我们知道多key原子性操作可以用lua脚本或者multi命令来实现。 比如说有一个双删场景&#xff0c;要保证原子性同时删除k1和k2。 可以用lua双删 EVAL "redis.call(del, KEYS[1]);redis.call(del, KEYS[2])" 2 k1 k2也可以用事务…...

密码学与网络安全:量子计算的威胁与解决方案

第一章&#xff1a;引言 在当今数字化世界中&#xff0c;网络安全一直是一个备受关注的话题。密码学作为网络安全的基石&#xff0c;扮演着至关重要的角色。然而&#xff0c;随着科学技术的不断进步&#xff0c;特别是量子计算的崛起&#xff0c;传统密码学的基础受到了严重威…...

GoLong的学习之路(十二)语法之标准库 flag的使用

上回书说到&#xff0c;fmt的标准库的一些常用的使用函数。这次说flag的使用&#xff0c;以下这些库要去做了解。不然GG&#xff0c;Go语言内置的flag包实现了命令行参数的解析&#xff0c;flag包使得开发命令行工具更为简单。 文章目录 os.Argsflag包flag.Type()flag.TypeVar(…...

mac git ssh

1.作用 1.不用账号密码拉取git项目 2.使用 1.检查是否生成ssh的公钥和私钥 命令&#xff1a; cd ~/.ssh表示没有 No such file or directory 2.如果没有就生成公钥和私钥 ssh-keygen -t rsa -C "帅哥***.com"后面的是git邮箱地址 然后一直按enter&#xff0c;…...

栈、共享栈、链式栈(C++实现)

文章目录 前言1. 栈的顺序存储&#xff08;顺序栈&#xff09;2. 栈的基本操作&#x1f351; 入栈操作&#x1f351; 出栈操作&#x1f351; 获取栈顶元素&#x1f351; 获取栈的长度&#x1f351; 判断是否为空栈&#x1f351; 判断栈是否满了&#x1f351; 打印栈内的元素&am…...

MySQL实战2

文章目录 主要内容一.回访用户1.准备工作代码如下&#xff08;示例&#xff09;: 2.目标3.实现代码如下&#xff08;示例&#xff09;: 二.如何找到每个人每月消费的最大天数1.准备工作代码如下&#xff08;示例&#xff09;: 2.目标3.实现代码如下&#xff08;示例&#xff09…...

【面试经典150 | 栈】简化路径

文章目录 Tag题目来源题目解读解题思路方法一&#xff1a;字符串数组模拟栈 其他语言python3 写在最后 Tag 【栈】【字符串】 题目来源 71. 简化路径 题目解读 将 Unix 风格的绝对路径转化成更加简洁的规范路径。字符串中会出现 字母、数字、/、_、. 和 .. 这几种字符&#…...

无线电编码和记录和静音检测器 PlayOutONE LiveStream 5.0

直播编码器&#xff0c;随处流式传输。LiveStream 应用程序的多色图案屏幕截图&#xff0c;显示一波进入&#xff0c;四路流出来&#xff0c;LiveStream是一站式应用程序&#xff0c;可让您的电台在需要的地方输出。 对音频进行编码以进行流式传输&#xff0c;使用您最喜欢的V…...

React中useEffect Hook使用纠错

引言 React是一种流行的JavaScript库&#xff0c;用于构建用户界面。它提供了许多强大的功能和工具&#xff0c;使开发人员能够轻松地构建交互式和可重用的组件。其中一个最常用的功能是React的useEffect Hook&#xff0c;它允许我们在函数组件中执行副作用操作。然而&#xf…...

0049【Edabit ★☆☆☆☆☆】【修改Bug代码】Buggy Code

0049【Edabit ★☆☆☆☆☆】【修改Bug代码】Buggy Code bugs language_fundamentals Instructions The challenge is to try and fix this buggy code, given the inputs true and false. See the examples below for the expected output. Examples has_bugs(true) // &qu…...

javaswing/gui的科学计算器

一个使用javajavaswing/gui的科学计算器程序。 支持加减乘除&#xff0c;函数运算&#xff0c;清空&#xff0c;退回等操作。 还支持进制运算。 源码下载地址 支持&#xff1a;远程部署/安装/调试、讲解、二次开发/修改/定制...

Chapter1:C++概述

此专栏为移动机器人知识体系的 C {\rm C} C基础&#xff0c;基于《深入浅出 C {\rm C} C》(马晓锐)的笔记&#xff0c; g i t e e {\rm gitee} gitee链接: 移动机器人知识体系. 1.C概述 1.1 C概述 计算机系统分为硬件系统和软件系统。 硬件系统&#xff1a;指组成计算机的电子…...

实战经验分享FastAPI 是什么

FastAPI 是什么&#xff1f;FastAPI实战经验分享 ![在这里插入图片描述](https://img-blog.csdnimg.cn/7e9e23e6fe3444238413d91f37064b65.png](https://fastapi.tiangolo.com/) FastAPI 是一个先进、高效的 Python Web 框架&#xff0c;专门用于构建基于 Python 的 API。它是…...

Vue3 + Element Plus + TypeScript中el-transfer穿梭框组件使用详解及示例

使用详解 Element Plus 的 el-transfer 组件是一个强大的穿梭框组件&#xff0c;常用于在两个集合之间进行数据转移&#xff0c;如权限分配、数据选择等场景。下面我将详细介绍其用法并提供一个完整示例。 核心特性与用法 基本属性 v-model&#xff1a;绑定右侧列表的值&…...

Android15默认授权浮窗权限

我们经常有那种需求&#xff0c;客户需要定制的apk集成在ROM中&#xff0c;并且默认授予其【显示在其他应用的上层】权限&#xff0c;也就是我们常说的浮窗权限&#xff0c;那么我们就可以通过以下方法在wms、ams等系统服务的systemReady()方法中调用即可实现预置应用默认授权浮…...

根据万维钢·精英日课6的内容,使用AI(2025)可以参考以下方法:

根据万维钢精英日课6的内容&#xff0c;使用AI&#xff08;2025&#xff09;可以参考以下方法&#xff1a; 四个洞见 模型已经比人聪明&#xff1a;以ChatGPT o3为代表的AI非常强大&#xff0c;能运用高级理论解释道理、引用最新学术论文&#xff0c;生成对顶尖科学家都有用的…...

JAVA后端开发——多租户

数据隔离是多租户系统中的核心概念&#xff0c;确保一个租户&#xff08;在这个系统中可能是一个公司或一个独立的客户&#xff09;的数据对其他租户是不可见的。在 RuoYi 框架&#xff08;您当前项目所使用的基础框架&#xff09;中&#xff0c;这通常是通过在数据表中增加一个…...

【7色560页】职场可视化逻辑图高级数据分析PPT模版

7种色调职场工作汇报PPT&#xff0c;橙蓝、黑红、红蓝、蓝橙灰、浅蓝、浅绿、深蓝七种色调模版 【7色560页】职场可视化逻辑图高级数据分析PPT模版&#xff1a;职场可视化逻辑图分析PPT模版https://pan.quark.cn/s/78aeabbd92d1...

LangFlow技术架构分析

&#x1f527; LangFlow 的可视化技术栈 前端节点编辑器 底层框架&#xff1a;基于 &#xff08;一个现代化的 React 节点绘图库&#xff09; 功能&#xff1a; 拖拽式构建 LangGraph 状态机 实时连线定义节点依赖关系 可视化调试循环和分支逻辑 与 LangGraph 的深…...

深度学习之模型压缩三驾马车:模型剪枝、模型量化、知识蒸馏

一、引言 在深度学习中&#xff0c;我们训练出的神经网络往往非常庞大&#xff08;比如像 ResNet、YOLOv8、Vision Transformer&#xff09;&#xff0c;虽然精度很高&#xff0c;但“太重”了&#xff0c;运行起来很慢&#xff0c;占用内存大&#xff0c;不适合部署到手机、摄…...

springboot 日志类切面,接口成功记录日志,失败不记录

springboot 日志类切面&#xff0c;接口成功记录日志&#xff0c;失败不记录 自定义一个注解方法 import java.lang.annotation.ElementType; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.lang.annotation.Target;/***…...

【Kafka】Kafka从入门到实战:构建高吞吐量分布式消息系统

Kafka从入门到实战:构建高吞吐量分布式消息系统 一、Kafka概述 Apache Kafka是一个分布式流处理平台,最初由LinkedIn开发,后成为Apache顶级项目。它被设计用于高吞吐量、低延迟的消息处理,能够处理来自多个生产者的海量数据,并将这些数据实时传递给消费者。 Kafka核心特…...

32单片机——基本定时器

STM32F103有众多的定时器&#xff0c;其中包括2个基本定时器&#xff08;TIM6和TIM7&#xff09;、4个通用定时器&#xff08;TIM2~TIM5&#xff09;、2个高级控制定时器&#xff08;TIM1和TIM8&#xff09;&#xff0c;这些定时器彼此完全独立&#xff0c;不共享任何资源 1、定…...