自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Web应用cpu过高

**每一个技术难点的攻坚,都是你一次完美的蜕变**前言整体项目架构基于lengleng开源pig项目做开发,现状表现为 auth服务单纯搜索列表,cpu维持在40左右,85条数据导入达到了更为夸张的三位数,其实其他操作cpu也会上升得不正常,阔怕~本文将针对数据导入以及导入后列表查询展开SQL 层分析 找到对应的底层sql后,客户端看执行时间,确实很慢,展开对应的执行计划进行分析,话不多说,上图,上干货~这么多行的Result,sql 确实也很复杂,针对这段时间sql层优化做出一下总

2021-05-17 23:42:55 802

原创 TCP协议 && Http 协议 && Https 机制

TCP协议 && Http 协议 && Https 机制Http请求全过程:在Http工作之前,Web浏览器通过网络和Web服务器建立链连接,该连接是通过Tcp来完成的,该协议和Ip共同组成了Internet,即著名的Tcp/Ip协议族,因此Internet也被称为Tcp/Ip网络,Http是比Tcp更高的应用层协议,一般Tcp接口的端口好是80。Web浏览器想Web服务器发送请求命令,这个命令中包含: Web服务器发送响应数据给Web浏览器,这个包含:

2020-10-29 12:19:22 761

原创 Spring事务隔离级别与传播特性

Spring事务隔离级别相对于数据库的事务隔离级别,多了一个default一:DEFAULT (默认)这是一个PlatfromTransactionManager默认的隔离级别,使用数据库默认的事务隔离级别。另外四个与JDBC的隔离级别相对应。二) READ_UNCOMMITTED (读未提交)这是事务最低的隔离级别,它允许另外一个事务可以看到这个事务未提交的数据。这种隔离级别会产生脏读,不可重复读和幻像读。三) READ_COMMITTED (读已提交)保证一个事务修改的数据提交后才能被另外

2020-10-29 10:44:37 185

原创 RDS数据库cpu过高分析

百因必有果,你的报应就是我!早上醒来发现顶顶群20+报警,异常奇怪,具体看看吧,是cpu过高,相信很多小伙伴也遇到过自己数据库cpu大于80甚至100的时候,究竟是为什么呢?来自一java dev的笔记 WhyCase 1—> 慢sql大多数的cpu过高都是由慢sql导致的,尤其是涉及到计算函数之类的,例如全表扫描或者说数据量过大,内存排序 && 磁盘排序 以及 锁竞争等待…那我们看到的又是什么呢?此时CPU上升QPS趋于稳定甚至有下降趋势这类问题归功于慢sq

2020-06-19 12:16:50 1598

原创 分布式锁与Redission实现

为什么会引出分布式锁原始项目单tomcat运行,不会存在这种情况,系统分布式架构部署时候,便于资源的锁定,例如多台服务器执行定时任务线上就可能会引发问题。Synchornized 是针对于 java进程锁,基于JVM,当一个系统部署在多个节点,多个实例的时候,也无法完成锁对线程的控制,因此引出分布式锁。首先看一个基于最基本的redisTemplate实现的分布式锁:需要注意一下几点:...

2020-03-13 11:22:38 464

原创 Git本机配置以及初始化项目

Git:是一个开源的 分布式 版本控制系统,更加便于管理项目版本。相对于SVN有什么优点呢?适合分布式开发,强调个体,任意两个Developer之间可以很容易的解决冲突,更加的灵活,支持离线工作,介入本地库的概念。Git下载地址:WindowsMac安装步骤:a: 检查SSH key打开终端,运行cd ~/.ssh如果路径下无文件,直接跳过下一步,如果有代表有ssh key...

2020-01-03 15:45:11 143

原创 深入浅出HashMap的设计与优化

一:常用的数据结构众所周知, ArrayList 是基于数组的数据结构实现的,LinkedList 是基于链表的数据结构实现的,而 HashMap 是基于哈希表的数据结构实现的。我们不妨一起来温习下常用的数据结构。数组:采用一段连续的存储单元来存储数据。对于指定下标的查找,时间复杂度为 O(1),但在数组中间以及头部插入数据时,需要复制移动后面的元素。链表:一种在物理存储单元上非连续、非...

2019-12-12 17:34:52 119

原创 还在一直用ArrayList吗?使用不当性能差之万里

你是否在面试时候也被问及List集合实现ArrayList与LinkedList区别?相信大部分同学都能回答上:ArrayList 是基于数组实现,LinkedList 是基于链表实现。而在回答使用场景的时候,我发现大部分同学的答案是:“ArrayList 和 LinkedList 在新增、删除元素时,LinkedList 的效率要高于 ArrayList,而在遍历的时候,ArrayList ...

2019-12-12 12:04:50 371

原创 Java Summarize

Ssm的独立搭建:1,依赖1.1.servlet1.2.spring ---------spring- context -core-beans1.3.springmvc1.4.mybatis1.5.mybatis-spring1.6.mysql-connector1.7.dbcp1.8.spring-jdbc2.配置web.xml2.1.spring的核心容器的启动2.2...

2019-12-10 17:12:03 280

原创 MySql索引分析&&比较

MySql理论知识点:概念:索引是帮助mysql高效获取数据排好序的数据结构,索引数据结构包括二叉树,红黑树,Hash表和B-tree。二叉树:数据存储为key-value,key是所查询字段的值,value是整个数据对象磁盘所对应的指针。红黑树:平衡版的二叉树,数据量大时候也不合适。B-Tree: 通过解决数的深度问题,避免磁盘IO查询。MySql底层是B+Tree索引结果 (B...

2019-12-02 15:57:11 173

原创 ElasticSearch通过head创建设置max_result_window

Step1首先打开head插件连接es库,关闭要修改的索引库Step2打开复合查询,输入以下参数,如图所示http://127.0.0.1:9200/ PUTzichan360_repayment_new/_settings?preserve_existing=true{“max_result_window”: “2000000000”}Noted: zichan36...

2019-07-13 09:32:27 1045

原创 Springcloud学习之路

前言开发工具以及版本IntelliJ IDEA 2018.2.5SpringCloud:Greenwich.SR1SpringBoot:2.1.3 RELEASESpringCloud 和 SpringBoot 版本对应关系官网地址: https://projects.spring.io/spring-cloud/一:服务注册与发现1.Eureka-Server(服务注册)依赖:...

2019-06-13 16:47:14 209

原创 自动内存管理机制

一: 内存区域1:程序计数器内存空间较小,可以看做是当前线程所执行的字节码行号指示器,其多线程是通过线程轮流切换并分配处理器执行时间,一个特定的时刻,为了保证切换后能回到指定的执行位置,他们的程序计数器都是独立的,即一个处理器只执行一条程序的命令。2:Java虚拟机栈同1一样,归属线程私有,同时生命周期与线程相同,Java方法执行的内存模型,堆栈中的栈指的就是虚拟机栈,或者说是虚拟机栈中...

2019-06-13 16:07:29 137

空空如也

空空如也

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

TA关注的人

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