Java
SSLSocketImpl导致内存飙高
SSLSocketImpl导致内存飙高 问题现象 所有服务容器内存都飙高,基本都到98%,但是一直不挂,但是有个节点,是xxljob一直调用的,到达98%以后,xxljob继续调用,就会oom重启,并且内存是缓慢的一直提升。 MAT内存快照分析 使用MAT,打开hrpof内存快照文件 查看Overview Pane 就是点击小i 点击Leak Suspects Heap Dump Overv
JSON WEB TOKEN - 简单的token认证方式 - 告别session和cookie - Java Demo
JWT简介 jwt非常适合前后分离 和 分布式的应用 不必在服务端存储session,本地也不用存储cookie 直接存两段信息即可 localStorage["jwt"] = jwt; // token localStorage["name"] = json.name; // token中加密的某个字段,用于后期请求带上校验token是否被改 可以把认证相关的信息都存储在
Java入门学习——day4(基础语法)
一、关键字 Java语言自己用到的一些词,有特殊作用的,我们称之为关键字,如:public、class、int、double ...... 注意:关键字是Java用了的,我们就不能用来作为:类名、变量,否则会报错! 注意:关键字很多,不用刻意去记,因为会报错。 二、标识符 标识符就是名字,我们写程序时会起一些名字,如类名、变量名等等都是标识符。 标识符的要求 基本组成:右数字、字母、下
java之手搓简单ORM框架--SQL的SELECT
1.手搓简单SQL增删改查框架-查询(id) 1.1创建简单类,并使用泛型类,这里可能使用到之间写的三篇知识的内容,如果不了解的小伙伴可以去 java高级之泛型 java高级之映射 java高级之反射 当然,前提是必须要把数据库相关连接弄好,这里会专门出一篇 java之jdbc 现在咱们继续手搓框架开始叭! 1.2 前期的准备工作 这里已经在【手搓简单SQL增删改查框架-插入】的时候准备完成,如果
map()和filter()的用法
1.map()函数 (1)map()适用于映射新的数组 let arr1 = [1, 4, 9, 16]; let NewArr = arr1.map((x) => x * 2); console.log(NewArr); // [2, 8, 18, 32]; 但是,当用if条件返回时,会出现undefined let arr1 = [1, 4, 9, 16]; let NewA
openssl 生成证书
生成证书 转换证书格式为 java 用 openssl pkcs8 -topk8 -inform PEM -in private_key.pem -outform PEM -nocrypt 生成公钥 openssl rsa -in private.key -pubout -out fd-public.key
【SpringCloud技术专题】「Resilience4j入门指南」(1)轻量级熔断框架的入门指南
推荐超值课程:点击获取 基础介绍 Resilience4j是一款轻量级,易于使用的容错库,其灵感来自于Netflix Hystrix,但是专为Java 8和函数式编程而设计。轻量级,因为库只使用了Vavr,它没有任何其他外部依赖下。相比之下,Netflix Hystrix对Archaius具有编译依赖性,Archaius具有更多的外部库依赖性,例如Guava和Apache Commons Conf
【Alibaba中间件技术系列】「RocketMQ技术专题」帮你梳理RocketMQ或Kafka的选择理由以及二者PK
推荐超值课程:点击获取 前提背景 大家都知道,市面上有许多开源的MQ,例如,RocketMQ、Kafka、RabbitMQ等等,现在Pulsar也开始发光,今天我们谈谈笔者最常用的RocketMQ和Kafka,想必大家早就知道二者之间的特点以及区别,但是在实际场景中,二者的选取有可能会范迷惑,那么今天笔者就带领大家分析一下二者之间的区别,以及选取标准吧! 架构对比 RocketMQ的架构 Rock
JDK,JRE,JVM区别
JDK,JRE,JVM JDK包括 JRE和 JVM jdk:java开发者工具 java,javac编辑运行java,javadoc生成java文档,jar打包成一个应用。 jre:java的运行环境。包含jvm, jvm:模拟cpu去编译代码。
自定义springboot-starter包
前言 我们都知道可以使用SpringBoot快速的开发基于Spring框架的项目。由于围绕SpringBoot存在很多开箱即用的Starter依赖,使得我们在开发业务代码时能够非常方便的、不需要过多关注框架的配置,而只需要关注业务即可。 例如我想要在SpringBoot项目中集成Redis,那么我只需要加入spring-data-redis-starter的依赖,并简单配置一
实现一个spring boot starter(二)——手写一个简易的starter
你好,我是leo,在上一篇文章中,介绍了java SPI机制的原理,它是理解spring boot starter的基础。那么spring boot starter是怎么使用SPI的,又是如何实现的呢? 一:SPI机制 二:手写一个简易的starter 三:自动装配功能扩展 还是先来看看最常用的spring-boot-starter是如何运作的 初始化的spring boot项目,默认会添加s
Node不同系统的安装方式
Node.js是一个基于V8引擎的JavaScript运行时环境,是现代前端工程化的基石,它不光能让JavaScript开发服务端应用,更提供了一个庞大的生态圈,前端开发各种第三方库的使用都离不开Node。 Node的版本分为长期维护版(LTS)和最新尝鲜版,开发时建议使用长期维护版。 Node的安装不难,难得是Node的版本控制,在开发中经常会因为Node的版本不同造成一些兼容性问题,为了方便切
告警通知全面提升,一键接入多渠道 - 轻松管理,时刻掌控
叮~~ 叮~~,你们听到什么声音了吗?没错,那是我们全新升级的告警系统带来的惊喜和能量!我们像闪电侠一样快速优化了告警通知功能,它将帮助你避开所有的系统故障陷阱,像超级英雄一样守护系统安全! 序集 INFINI Console 1.6.0 版本终于上线啦!我们深知及时、有效的告警通知对于系统的稳定运行至关重要。因此在这个版本中,我们花了很多心血来全面提升我们的告警模块,让告警变得更智能、更便捷。相
使用框架前webpack的基本了解
01.webpack简介 Webpack 是一个静态模块打包工具,从入口构建依赖图,打包有关的模块,最后用于展示你的内容 静态模块:编写代码过程中的,html,css, js,图片等固定内容的文件 📌只有和入口有直接/间接引入关系的模块,才会被打包 Webpack 的作用:把静态模块内容,压缩,转译等(前端工程化) 把 less/sass 转成 css 代码 把 ES6+ 降级成 ES5
Vue3_Vite_kbnet.eap程序框架
一、准备 这篇文章本应该于2023年7月底发出来,在家里忙来忙去没顾得上,直到今天才有时间写这段文字。 原来web项目的开发是基于Vue2+Webpack+ElementUI技术栈,Vue官方也说了Vue2会支持到2023年12月31日,所以是时候升级技术了,于是就有了本篇文章内容Vue3+Vite+ElementPlus的升级过程。 废话不多说了,直接上项目源码: Gitee:https://g
问题排查Hive本地计算模式失败
问题排查Hive本地计算模式失败 查看hive.log后发现是java space heap,也就是java内存溢出。 解决方案: 配置yarn集群的资源分配。 由于是本地计算,因此container一定是申请在本地的,限制AM申请container容器资源的大小很重要。机器节点的资源可用通过配置NodeManager,所以第一步是配该节点的NodeManager资源。 我的服务器是8G2
深入MapReduce计算引擎
深入MapReduce计算引擎 MapReduce整体处理过程 MapReduce的运行需要经过input(作业输入)--mapper(业务处理接口)--shuffle(map到reduce之间的数据传输环节)--reducer(业务处理接口)--output(作业输出) 整个过程由Driver作为主入口,如下示例代码: Driver code Input 作业输入的核心是InputForma
elasticsearch初识
初识elasticsearch 了解ES elasticsearch的作用 elasticsearch是一款非常强大的开源搜索引擎,具备非常多强大功能,可以帮助我们从海量数据中快速找到需要的内容 例如: 在GitHub搜索代码 在电商网站搜索商品 在百度搜索答案 在打车软件搜索附近的车 ELK技术栈 elasticsearch结合kibana、Logstash、Beats,也就是elastic
springboot中tomcat线程池
一、Tomcat中的默认配置 线程任务就是一个连接的请求,每个请求都会尝试创建线程来处理。 最大工作线程数,默认200。 server.tomcat.max-threads=200 最大连接数默认是10000,同时支持的并发连接数 server.tomcat.max-connections=10000 等待队列长度,默认100。 server.tomcat.accept-count=10
《深入理解Java虚拟机》读书笔记:内存分配策略
Java技术体系中所提倡的自动内存管理最终可以归结为自动化地解决了两个问题:给对象分配内存以及回收分配给对象的内存。关于回收内存这一点,我们已经使用了大量篇幅去介绍虚拟机中的垃圾收集器体系以及运作原理,现在我们再一起来探讨一下给对象分配内存的那点事儿。 对象的内存分配,往大方向讲,就是在堆上分配,对象主要分配在新生代的Eden区上,如果启动了本地线程分配缓冲,将按线程优先在TLAB上分配。