自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(21)
  • 收藏
  • 关注

原创 java内部类

java内部类

2022-06-08 15:59:03 135

转载 Tomcat并发问题的思考

遇到这么个问题linux tomcat并发量限制,tomcat只能支持几百个线程并发的原因是什么?线程不是越多越好,假如你的业务逻辑全部是计算型的(CPU密集型),不涉及到IO,并且只有一个核心。那肯定一个线程最好,多一个线程就多一点线程切换的计算,CPU不能完完全全的把计算能力放在业务计算上面,线程越多就会造成CPU利用率(用在业务计算的时间/总的时间)下降。但是在WEB场景下,业务并不是CPU密集型任务,而是IO密集型的任务,一个线程是不合适,如果一个线程在等待数据时,把CPU的计算能力交给其.

2022-03-30 18:01:54 297

转载 面试总结之计算机网络

文章目录1. OSI协议应用层:传输层:网络层:数据链路层:物理层2. 应用层2.1 DNS协议2.2 DHCP协议2.3 其他常见应用层协议2.4 Web页面的请求过程1. OSI协议两个维度横向看,为哪两个平行的东西提供什么服务纵向看看,为上层提供了什么服务应用层:为应用程序间提供通信和交互协议DNS、HTTP、SMTP等传输层:为两台主机间的进程提供数据传输服务为上层提供服务:把应用层报文封装成TCP或UDP报文段,进行传输TCP、UDP网络层:为两台主机提供通

2022-03-14 18:18:07 248

原创 chapter02-链表

文章目录1. 力扣 203. 移除链表元素2. 力扣 707. 设计链表3. 力扣 206. 反转链表4. 力扣 92. 反转链表 II5. 力扣 24. 两两交换链表中的节点6. 力扣 19. 删除链表的倒数第 N 个结点7. 力扣 面试题 02.07. 链表相交8. 力扣 142. 环形链表 II1. 力扣 203. 移除链表元素tip:设置虚拟头结点while(cur != null)//不是cur.next2. 力扣 707. 设计链表tip:单纯考察代码能力。class ListNo

2022-02-25 15:18:04 124

原创 chapter01-数组

文章目录1. 力扣 704. 二分查找2. 力扣 27. 移除元素3. 力扣 977.有序数组的平方4. 力扣 209.长度最小的子数组5. 力扣 59. 螺旋矩阵 II6. 力扣 15. 三数之和7. 力扣 88. 合并两个有序数组n. 力扣 53. 最大子数组和1. 力扣 704. 二分查找入参:int[ ] nums, int val //一个数组,一个值前提:有序数组关键词:二分法//找该区间中间位置,比较target,//判断target落在左还是右区间,//选好区间重复上面操作w

2022-02-25 15:17:39 159

原创 chapter05-栈和队列

文章目录232.用栈实现队列225. 用队列实现栈20. 有效的括号1047. 删除字符串中的所有相邻重复项150. 逆波兰表达式求值239. 滑动窗口最大值347. 前 K 个高频元素232.用栈实现队列tip:栈模拟队列//输入栈和输出栈 // push: 压入输入栈 // pop: 输出栈 // ==null,输入栈全部push输出栈,然后从输出栈pop // !=null,直接从输出栈pop // peek

2022-02-25 15:17:07 75

原创 chapter03-哈希表/散列表/Hash table

文章目录242.有效的字母异位词1002. 查找常用字符349. 两个数组的交集核心:一般哈希表都是用来快速判断一个元素是否出现集合里。242.有效的字母异位词1002. 查找常用字符349. 两个数组的交集...

2022-02-25 15:16:14 766

原创 chapter04-字符串

文章目录1. 滑动窗口系列1. 滑动窗口系列https://leetcode-cn.com/problems/longest-substring-without-repeating-characters/solution/hua-dong-chuang-kou-by-powcai/无重复字符的最长子串串联所有单词的子串[困难]最小覆盖子串至多包含两个不同字符的最长子串长度最小的子数组滑动窗口最大值字符串的排列最小区间最小窗口子序列...

2022-02-25 15:15:39 434

转载 sentinel监控界面无显示

在做Sentinel的时候,Sentinel能够监控到服务,但是不管怎么访问接口,都实时监控都为空白,查看日志,报错信息如下:java.util.concurrent.ExecutionException: java.net.ConnectException: Connection timed out: no further information at java.util.concurrent.CompletableFuture.reportGet(Unknown Source) at

2022-02-14 20:00:22 1244

原创 三大排序——快速排序/归并排序/堆排序

文章目录快速排序归并排序堆排序本来不想写的,因为现在面试卷中卷,就总结一下吧。对这常考的三大排,进行重新梳理。以后有时间可能在写些别的排序。这里目的只为快速解题,java写的代码,有帮助的点个赞。快速排序class Solution { //选中轴pivot,左边界 //双指针遍历序列,比pivot小的放左边,比pivot大的放右边,直到两指针相遇 //相遇位置赋值pivot //切割成左右子序列,循环上面三步 public int[] sortArray

2022-02-03 17:03:50 449

转载 Java线程-中断Interrupt细节

原文很细中断线程线程的thread.interrupt()方法是中断线程,将会设置该线程的中断状态位,即设置为true,中断的结果线程是死亡、还是等待新的任务或是继续运行至下一步,就取决于这个程序本身。线程会不时地检测这个中断标示位,以判断线程是否应该被中断(中断标示值是否为true)。它并不像stop方法那样会中断一个正在运行的线程。判断线程是否被中断判断某个线程是否已被发送过中断请求,请使用Thread.currentThread().isInterrupted()方法(因为它将线程中断标.

2022-01-26 16:43:19 582

原创 git命令大全

关系图命令集$ git init #创建本地仓库$ git clone [url] #下载一个仓库$ git status #查看状态$ git add . #将当前目录所有文件添加到git暂存区$ git commit -m "my commit" #提交并备注提交信息$ git lo

2021-12-31 12:16:03 150

转载 雪花算法生成id引发的惨案

一、现象是这样的下面我把异常的现象给大家描述一下,小伙伴建了一张表,表的主键是id BigINT,用来存储雪花算法生成的ID,嗯,这个没有问题!CREATE TABLE user(id BIGINT(20) NOT NULL COMMENT ‘主键ID’,#其他字段省略);使用Long 类型对应数据库ID数据。嗯,也没有问题,雪花算法生成的就是一串数字,Long类型属于标准答案!@Datapublic class User {private Long id;//其他成员变量省略在后端

2021-11-30 23:53:28 1746

转载 Java之加密工具类java.security.MessageDigest或org.apache.commons.codec.digest.DigestUtils

Java之加密(信息摘要)工具类(依赖:java.security.MessageDigest或org.apache.commons.codec.digest.DigestUtils)1. java.security.MessageDigest支持MD5,SHA-1,SHA-256import java.security.MessageDigest;import java.security.NoSuchAlgorithmException;/** * CiphertextUtil * *

2021-11-05 22:26:06 1539

转载 QPS TPS 要理清

QPS、TPS是什么QPS:全名 Queries Per Second,意思是“每秒查询率”,是一台服务器每秒能够响应的查询次数,是对一个特定的查询服务器在规定时间内所处理流量多少的衡量标准。简单的说,QPS = req/sec = 请求数/秒。它代表的是服务器的机器的性能最大吞吐能力。在网上,我看到有人在介绍 QPS 时,这样说:QPS 代表的是单个进程每秒请求服务器的成功次数。但是 QPS 在百度百科中或维基百科中并没有强调单个进程,它主要是强调服务器的处理能力。服务器的 QPS 一般我们可以

2021-11-04 17:03:56 176

原创 Java NIO - 基础详解

文章目录流与块通道与缓冲区1.通道2.缓冲区缓冲区状态变量文件NIO实例选择器1.创建选择器2.将通道注册到选择器上3.监听事件4.获取到达的事件5.事件循环套接字NIO实例内存映射文件对比Standard IO是对字节流的读写,在进行IO之前,首先创建一个流对象,流对象进行读写操作都是按字节,一个字节一个字节的来读或写。而NIO把IO抽象成块,类似磁盘的读写,每次IO操作的单位都是一个块,块被读入内存之后就是一个byte[],NIO一次可以读或写多个字节。流与块I/O 与 NIO 最重要的区别是数

2021-09-21 21:07:15 110

原创 Java BIO - 阻塞式IO详解

文章目录重要概念传统的BIO通信方式传统的BIO的问题多线程方式 - 伪异步方式BIO通信方式深入分析重要概念阻塞和同步,非阻塞和异步,这两组词的关联度是很高的,是不能分开讲的,像多线程并发往往也会论述这些概念。下面会从IO的角度切入。阻塞IO 和 非阻塞IO这两个概念是程序(进程线程)级别的。主要描述的是程序请求操作系统IO操作后,如果IO资源没有准备好,那么程序该如何处理的问题: 前者等待;后者继续执行(并且使用线程一直轮询,直到有IO资源准备好了)同步IO 和 非同步IO这两个

2021-09-21 17:09:27 670

原创 IO模型-Unix IO 模型

文章目录IO模型-Unix IO 模型Unix IO 模型简介- 阻塞式I/O- 非阻塞式I/O- I/O复用- 信号驱动I/O- 异步I/OI/O模型比较- 同步I/O与异步I/O- 五大I/O模型比较I/O多路复用- I/O多路复用工作模式- LT模式- ET模式- 应用场景- select应用场景- poll应用场景- epoll应用场景IO模型-Unix IO 模型Unix IO 模型简介一个输入流程数据准备好(如套接字,等数据从网络到达)内核拿到数据存入缓冲区,在把数据复制给进程的缓冲

2021-09-21 16:01:20 128

转载 Get与Post请求的差别

作者:采诗人链接:https://www.zhihu.com/question/48725585/answer/1592933916来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。GET和POST是HTTP请求的两种基本方法,要说它们的区别,接触过WEB开发的人都能说出一二。最直观的区别就是GET把参数包含在URL中,POST通过request body传递参数。你可能自己写过无数个GET和POST请求,或者已经看过很多权威网站总结出的他们的区别,你非常清楚知道什么时候

2021-09-14 22:40:50 84

原创 CentOS 7 防火墙设置

在CentOS 7或RHEL 7或Fedora中防火墙由firewalld来管理添加firewall-cmd --zone=public --add-port=80/tcp --permanent (--permanent永久生效,没有此参数重启后失效)firewall-cmd --zone=public --add-port=1000-2000/tcp --permanent重新载入firewall-cmd --reload查看firewall-cmd --zone=pu

2021-05-09 21:43:48 202

转载 spring容器启动的三种方式

在Web项目中,启动Spring容器的方式有三种,在web.xml中配置ContextLoaderListener、ContextLoadServlet、ContextLoaderPlugin。1.1 监听器方式:<context-param> <param-name>contextConfigLocation</param-name> <param-value>/WEB-INF/classes/applicationContext-

2021-04-13 21:07:04 523

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除