Java面试系列
文章平均质量分 80
着手于Java全栈的面试,面试题准备以及其他面试资料
CodeMartain
有阳光 却感觉冷
展开
-
如何排查CPU飙升的问题所在
我们在线上排查问题的时候发现系统的CPU直接爆红了,如何排查问题呢?怎么快速定位问题的所在呢?原创 2023-11-09 14:34:04 · 137 阅读 · 0 评论 -
一致性hash算法
这样我们在新增节点的时候,只需要通过hash算法将下一个节点的部分数据分配给新增的节点即可,减少节点的时候,只需要将减少的节点的数据插入到顺时针的下一个节点即可;但是这样随着数据量的增多,如果数据库实例要增加,那么就要重新及逆行数据的分配(即之前用户的数据路由到的库的数据可能要做数据迁移,这要付出时间和代价,对企业来讲成本很高;结果显示数据库的数据量明显分配不均匀呀,这是因为使用 hash值划分hash环不太平均,导致区间大的分配到的数据就多,划分小的分配到的数据就小;如果没有大于当前节点的哈希值的数据。原创 2023-10-27 12:00:59 · 250 阅读 · 0 评论 -
【SpringCoud】
大部分情况下都不需要自定义;全局配置:FUNDribboneager-loadenable: trueclients连接超时时间: 1000请求超时时间: 3000最大连接数: 500每个服务提供者的最大连接数: 100是否所有操作都重试: false重试其他实例的最大重试次数不包括首次所选的server: 2同一实例的最大重试次数不包括首次调用: 1。原创 2023-10-22 21:39:30 · 137 阅读 · 0 评论 -
【工作流引擎】Activiti的使用03
/ 获取部署时的信息//根据表 act_re_procdef 表中的key查询部署的流程定义@Test//先获取已经部署的;//1当流程没走完的时候,这种方式是不可以的,我们可以用级联删除的方式。原创 2023-10-11 19:06:36 · 84 阅读 · 0 评论 -
【工作流引擎】Activiti的使用02
Activiti的使用主要分三步:按照bpmn规范定义一个流程,模板文件BPMN规范中的流程符号1, 事件Event2,活动Activity3,网关GateWay网关用来处理决策所有路径会被同时选择综合网关事件网关在idea中下载actiBPM插件,在插件库中可能找不到该插件actiBPMN插件下载在resource文件夹下创建一个流程文件 **.bmpn文件,然后使用插件绘制业务流程在流程中添加每个流程相关的人(申请人,审批人…)之后我们查看evection.bpmn文件我们可以看到,原创 2023-10-11 11:57:02 · 92 阅读 · 0 评论 -
【工作流引擎】Activiti的使用01
创建数据库表创建工作表引擎需要的数据库表:创建方式—使用processEngine 创建这里需要配置所需的xml文件,该文件位置在resource文件夹下,而且文件名必须为生成数据表表的作用生成的25张表:有了这么多表,我们需要去操作这些表,activiti已经封装好了一些操作的api;上面得到的**service,之后可以通过这些service去操作数据表:比如但是在这之前我们要了解这些service是管理哪些表的;repositoryService—>资源管理服务(带re的表)原创 2023-10-09 16:10:12 · 59 阅读 · 0 评论 -
Tomcat调优【精简版】
情况3:接受一个请求,此时tomcat起动的线程数已经到达maxThreads,等待队列中的请求个数也达到了acceptCount,此时tomcat会直接拒绝此次请求,返回connection refused。情况2:接受一个请求,此时tomcat起动的线程数已经到达maxThreads,tomcat会把此请求放入等待队列,等待空闲线程。情况1:接受一个请求,此时tomcat起动的线程数没有到达maxThreads,tomcat会起动一个线程来处理此请求。2,io较多的,增加线程数。优化tomcat缓存。原创 2023-09-20 10:20:58 · 369 阅读 · 0 评论 -
Java高并发包里atomic包
java并发包里实用程序类在并发编程中通常很有用。此包包括一些小型的标准化可扩展框架,以及一些提供有用功能但其他方面繁琐或难以实现的类。原子包下提供了原子操作类------该包下主要提供了(boolean,int,long以及引用类型的的Reference)提供了其包装类的的原子操作类---- 对于数组有对应的原子操作类 对于类中 字段的原子操作类 对于数据更加精准控制的 对于累加操作atomic包下的类代码敬上—》》分析—>>两个线程,其中一个线程通过whi原创 2022-06-19 22:14:10 · 202 阅读 · 0 评论 -
记录一下我的刷题实录
开始—>>1,主要是 map.merge(m, n, Integer::sum)方法指定的 key 是否存在,如果不存在,则添加键值对到 hashMap 中。如果 key 对应的 value 不存在,则返回该 value 值,如果存在,则返回通过 remappingFunction 重新计算后的值。发一个他人写的另一个解法---->>但总感觉怪怪的解题思路就是:两个数最新小公倍数,他的范围在较大那个数到两数之乘积那个数之间,然后通过循环开始找呗;如果原创 2022-06-09 14:36:25 · 150 阅读 · 0 评论 -
用着用着就过时了~WebSecurityConfigurerAdapter
今天在写Spring(最新版本)框架,控制前端登录,配置类在继承WebSecurityConfigurerAdapter时,报告说过时了,几个月前好用的好好的,说过时就过时了!技术变化还真是快!既然过时了,那以后该怎么写呢?对于普通小白程序员虽然我们无法写出那些大佬底层的代码,咱也得确保咱会用不是!于是乎,网上查API,写代码-变化就是不需要继承WebSecurityConfigurerAdapter,而是注入一个过滤链的Bean,通过这个过滤链去处理用户登录的请求;该过滤链返回值为–SecurityFi原创 2022-06-06 16:54:55 · 8413 阅读 · 0 评论 -
JVM中的二进制文件---class文件(NO.2)----10.1更新
java的发展史就不必多说了,现在的java可以说是由跨平台到现在的跨语言,实现了跨越式的发展,jvm功不可没呀,现在的Jvm有很多版本,Hotspot 官方版本 Jrockit 被Oracle收购了,合并在Hotspot中J9 IBM公司的开发的 MicrosoftVM TaoBao VM hotspot淘宝深度定制版(阿里官方对java有很高的要求)LiqudVm–直接针对硬件层面的虚拟机,运行速度快azul zing --垃圾回收机制很棒.但是目前我们用的最多的时hotspot原创 2021-07-19 23:23:48 · 153 阅读 · 0 评论 -
Tomcat的优化
Tomcat的优化Tomcat 内存优化Tomcat并发优化面试被问到了Tomcat的优化,咋整,我们没准备,就瞎扯了亿点点;关于优化的问题,始终是面试一项必问的问题,然而我没想到的是竟然问的是tomcat优化…就是这只猫 …先来整理一下吧!Tomcat 内存优化由于tomcat使用java写的,所以我们像配置jvm那样去配置一下tomcat的参数;在 tomcat 的启动脚本 catalina.bat中设置一些参数JAVA_OPTS参数说明 -server 启用jdk 的 .原创 2022-05-28 20:57:17 · 125 阅读 · 0 评论 -
JAVA中的锁[研究小结]
JAVA中的锁什么是java中的锁?自旋锁自旋锁的开启Synchronized锁偏向锁jvm开启/关闭偏向锁轻量级锁轻量级锁的释放synchronized的执行过程总结锁优化锁细化锁粗化缓存行的伪共享看了那么多关于锁的文章,对于java中的锁还是单独整理一下吧,以便后来复习用;另一个整理一遍加深理解与印象吧!本文章仅供粉丝参考,如有不当之处还请指出,以作改正什么是java中的锁?一个不太那啥的例子:java中的锁就像是一个看厕所的大爷,有人进去方便了,他就把门上锁了,即别的人就不能进去.原创 2022-05-27 13:22:09 · 133 阅读 · 0 评论 -
浅析OutofMemoryError与StackOverFlowError
编译时异常 checked Exception即编译期间就可以发现可能存在异常的情况比如IOException,ClassNotFoundException等原创 2022-05-15 21:31:42 · 213 阅读 · 0 评论 -
面试题[51-100]
51.如何跳出多重循环// break,内层循环想要跳出外层循环 int i=0; int j=0; a: for(;i<10;i++){ b:for(;j<10;j++){ if(j==4){ break a; //跳出a所在的循环 }52.使用spring的好处?//能够实现依赖注入和控制反转;//由Spring自动管理bean的生命周原创 2022-05-12 23:45:22 · 227 阅读 · 0 评论 -
面试题[1-50]
java三大特性;//继承,封装.多态线程和进程的区别;//进程可以包含多个线程,线程共享本进程的地址空间,进程之间是独立的地址空间;ajax的优缺点;//异步请求机制,使得页面不用刷新即可完成动态交互,减少了冗余的请求,减轻服务器的压力缺点—暴露了与服务器的交互细节,浏览器的机制被破坏----后退和历史记录功能被打破;read方法为什么返回int类型;//读取的字节数据,hashmap和hashtable的区别//hashmap 底层是 数组 +链表+红黑树 允许一.原创 2022-05-12 00:13:18 · 120 阅读 · 0 评论