java
文章平均质量分 81
丧心病狂の程序员
不可回收的程序员
展开
-
【2021第二届云原生编程挑战赛2:实现一个柔性集群调度机制】基于docker容器的测试集群搭建
比赛链接:https://tianchi.aliyun.com/competition/entrance/531923/information比赛内容: Apache Dubbo 作为一款可拓展性极高的 RPC 框架,支持高度自定义化的集群调度机制,本次比赛要求参赛者基于 Dubbo 提供的集群调度自定义化能力,辅以调用过滤链机 制、自定义负载均衡机制等功能,设计一种柔性调度机制。本文主要介绍,如何在单台linux服务器中,使用docker部署测试环境。1. 安装启动NACOS1.1. 安装.原创 2021-09-17 18:42:19 · 420 阅读 · 0 评论 -
[面面面]搞定计算机面试常见知识点——Java篇
之前的一篇总结已经写到了十万字,阅读起来太不方便了,所以按照类别拆分成多个短篇分享给大家。文章目录2. 语言类2.1. 进程和线程的区别2.2. 协程与线程2.2.1. 协程的优势2.3. 线程安全的定义、线程的状态2.4. 多线程的实现方式(Runnable和Callable的区别)、start/run方法的区别2.5. 子线程异常捕捉2.6. wait()/notify()/sleep()/yield()/join()几个方法的意义2.7. notifyAll实现原理及等待池和锁池的概念2.8. 线程原创 2021-03-05 13:43:38 · 2088 阅读 · 0 评论 -
动态规划 | 最长上升字符串问题
题目描述首先定义上升字符串,对于任意的0<i<len(s),s[i]≥s[i−1],比如aaa,abc是,acbd不是给n个上升字符串,选择任意个拼起来,问能拼出来的最长上升字符串长度?思路这道题首先想到利用动态规划的思路,动态规划的基本思想就是:问题的最优解如果可以由子问题的最优解推导得到,则可以先求解子问题的最优解,在构造原问题的最优解;若子问题有较多的重复出现,...原创 2020-04-13 12:28:49 · 490 阅读 · 0 评论 -
Java技术点速记 | JVM字节码执行引擎
一、概述在不同的虚拟机实现里面,执行引擎在执行Java代码的时候可能会有解释执行(通过解释器执行)和编译器执行(通过即时编译器产生本地代码执行)两种选择,所有的Java虚拟机的执行引擎都是一致的:输入的是字节码文件,处理过程是字节码解析的等效过程,输出的是执行结果。每个字节码指令都由一个1字节的操作码和附加的操作数组成。二、运行时栈帧结构栈帧(Frame Frame)是用于支持虚拟机运行方...原创 2020-03-07 00:47:41 · 157 阅读 · 0 评论 -
Java技术点速记 | 虚拟机类加载机制
Java虚拟机把描述类的数据从Class文件加载到内存,并对数据进行校验、转换解析和初始化,最终形成可以被虚拟机直接使用的Java类型,这个过程被称作虚拟机的类加载机制。一个类从被加载到卸载,它的整个生命周期将会经历加载、验证、准备、解析、初始化、使用、卸载七个阶段。加载加载阶段由三个基本动作组成:通过类型的完全限定名,产生一个代表该类型的二进制数据流(没有指明从哪里获取、怎样获取)...原创 2020-03-05 20:38:51 · 131 阅读 · 0 评论 -
Java技术点速记 | 字节码与类文件
java之所以可以“一次编写,到处运行(Write Once, Run Anywhere)”,是因为java代码被翻译成各个平台的java虚拟机都可以理解的程序存储格式——字节码(Byte Code)。java语言中的各种语法、关键字、变量常量和运算符号的语义最终都会由多条字节码指令组合来表达,使用Java编译器可以吧Java代码编译成储存字节码的Class文件。Class类文件结构Cla...原创 2020-03-04 23:37:16 · 388 阅读 · 0 评论 -
Java技术点速记 | JVM性能优化
不适当的JVM参数设置往往会导致我们的java应用出现故障或者性能问题,下面简述了几点优化方向。减少GC时间调整内存设置控制垃圾收集频率通过分析出现Full GC的原因适当调整各类型堆空间容量。选择合适的收集器降低延迟根据应用使用场景选择最合理的垃圾收集器。可以参考JVM技术点速记 | 垃圾收集与内存分配。升级JDK版本JDK每一代新的版本都有一定量的性能提升,如果为了追...原创 2020-03-03 17:32:31 · 152 阅读 · 0 评论 -
Java技术点速记 | 垃圾收集与内存分配
1.1. 垃圾标记方法引用计数可达性分析1.2. 垃圾收集方法标记-清除标记对象后统一回收,存在回收效率和内存碎片的问题。标记-复制将存活对象统一移动到另一部分内存空间里去,问题是内存可用率降低。标记-整理移动存活对象向空间的某一端然后释放边界外空间,问题是计算负担较大。1.3. 垃圾收集器Serial :早期新生代垃圾收集器,简单高效内存消耗小但是存在停顿时间长的...原创 2020-03-01 20:34:43 · 193 阅读 · 0 评论 -
elasticsearch出现OutOfMemoryError故障分析及处理
最近我们的elasticsearch6.6.1集群出现了停止服务的故障,客户端提示多个节点连接无响应。检查服务器上的日志,发现如下错误日志:从错误日志可以看到,jvm首先进行了Full GC。一般老年代空间只有在新生代对象转入及创建为大对象、大数组时才会出现不足的现象。所谓大对象,是指需要大量连续内存空间的java对象,例如很长的数组,此种对象会直接进入老年代,而老年代虽然有很大的剩余空间,但...原创 2020-02-22 19:31:21 · 5944 阅读 · 2 评论 -
Spring Boot2配置Sqlite数据库JPA
什么是JPA?JPA是Java Persistence API的简称,中文名Java持久层API,是JDK 5.0注解或XML描述对象-关系表的映射关系,并将运行期的实体对象持久化到数据库中。The Java Persistence API provides a POJO persistence model for object-relational mapping. The Java Pe...原创 2019-10-07 23:41:46 · 1704 阅读 · 0 评论 -
使用 maven 解决 spring boot 整合 spark 依赖冲突问题
spring整合spark依赖冲突在配置spring和spark的整合开发环境时,出现了很多编译错误,将其整理如下首先在选择开发环境版本时,我们考虑了集群的编译版本:[root@manager01 ~]# spark-shellSetting default log level to "WARN".To adjust logging level use sc.setLogLevel(ne...原创 2019-07-11 21:20:48 · 1342 阅读 · 0 评论