自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Java并发基础

Java并发编程系列-基础篇

2022-10-19 09:47:45 259 1

原创 面试造航母系列之面对千万级、亿级流量怎么处理?

这是一道很常见的面试题,但是大多数人并不知道怎么回答,这种问题其实可以有很多形式的提问方式:面对业务急剧增长怎么处理? 业务量增长10倍、100倍怎么处理? 系统怎么支撑高并发的? 怎么设计一个高并发系统? 高并发系统都有什么特点?... ...诸如此类,问法很多,但是面试这种类型的问题,看着无处下手,但是可以有一个常规的思路去回答,就是围绕支撑高并发的业务场景怎么设计系统才合理?如果能想到这一点,那接下来就可以围绕硬件和软件层面怎么支撑高并发这个话题去阐述了。本质上,这个问题就是综合考验

2021-05-20 17:01:11 169

原创 浅析更新SQL执行过程

前面系统了解了一个查询语句的执行流程,并介绍了执行过程中涉及的处理模块。一条查询语句的执行过程一般是经过连接器、分析器、优化器、执行器等功能模块,最后到达存储引擎。那么,一条更新语句的执行流程又是怎样的呢?之前可能经常听DBA同事说,MySQL可以恢复到半个月内任意一秒的状态,惊叹的同时,是不是心中也会不免会好奇,这是怎样做到的呢?还是从一个表的一条更新语句说起,下面是这个表的创建语句,这个表有一个主键ID和一个整型字段c:mysql> create table T(ID int primary

2021-05-14 15:07:50 157

原创 浅析查询SQL执行过程

下面给出的是MySQL的基本架构示意图,从中可以清楚地看到SQL语句在MySQL的各个功能模块中的执行过程。 MySQL的逻辑架构图大体来说,MySQL可以分为Server层和存储引擎层两部分。 Server层包括连接器、查询缓存、分析器、优化器、执行器等,涵盖MySQL的大多数核心服务功能,以及所...

2021-05-13 17:00:19 148

原创 JVM

(1) 基本概念: JVM 是可运行 Java 代码的假想计算机 ,包括一套字节码指令集、一组寄存器、一个栈、 一个垃圾回收,堆 和 一个存储方法域。JVM 是运行在操作系统之上的,它与硬件没有直接的交互。 (2) 运行过程:我们都知道 Java 源文件,通过编译器,能够生产相应的.Class 文件,也就是字节码文件, 而字节码文件又通过 Java 虚拟机中的解释器,编译成特定机器上的机器码 。 也就是如下: ① Java 源文件—->编译器—-&g...

2020-10-16 14:13:23 437

原创 Spring Boot基础配置

定制BannerSpring Boot项目在启动的时候会有一个默认的启动图案:我们可以把这个图案修改为自己想要的。在src/main/resources目录下新建banner.txt文件,然后将自己的图案黏贴进去即可。ASCII图案可通过网站http://www.network-science.de/ascii/一键生成,比如输入alibaba生成图案后复制到banner.txt,启动项目,控制台输出如下:banner也可以关闭,在main方法中:public static v

2020-08-14 16:26:49 122

原创 开启Spring Boot

Spring Boot是在Spring框架上创建的一个全新的框架,其设计目的是简化Spring应用的搭建和开发过程。开启Spring Boot有许多种方法可供选择,这里仅介绍使用http://start.spring.io/来构建一个简单的Spring Boot项目。生成项目文件访问http://start.spring.io/,页面显示如下:这里选择以Maven构建,语言选择Java,Spring Boot版本为2.3.2。在项目信息里选择以jar包的方式部署,Java版本为8。.

2020-08-13 16:52:53 289

转载 NoSQL简介

NoSQL(NoSQL = Not Only SQL ),意即"不仅仅是SQL"。在现代的计算系统上每天网络上都会产生庞大的数据量。这些数据有很大一部分是由关系数据库管理系统(RDBMS)来处理。 1970年 E.F.Codd's提出的关系模型的论文 "A relational model of data for large shared data banks",这使得数据建模和应用程序编程更加简单。通过应用实践证明,关系模型是非常适合于客户服务器编程,远远超出预期的利益,今天它是结构化数据存储

2020-05-20 16:40:20 141

原创 从千万级数据查询浅谈MySQL索引结构和原理

慢SQL问题相信大部分开发都遇到过,对于这样的问题通常第一反应就是看看sql是否合理,比如:避免使用IN和NOT IN,否则可能会导致全表扫描 避免在where子句中对字段进行函数操作 避免在where子句中对字段进行左模糊查询 避免在where子句中对字段进行OR连接 避免SELECT * ...除此之外,还有一种常见的反应就是这个表有没有加索引?绝大部分情况下,加了个索引基本上就搞定了。首先就来构造一个千万级的表直观感受下。创建一张user表,然后新增1000万条数据,查询一下:

2020-05-19 14:00:11 440

原创 Spring Cloud全家桶

一、业务场景介绍先说一个业务场景,假设现在开发一个电商网站,要实现支付订单的功能,流程如下:创建一个订单后,如果用户支付了这个订单,需要将订单状态更新为“已支付” 扣减相应的商品库存 通知仓储中心,进行发货 给用户的这次购物增加相应的积分针对上述流程,需要有订单服务、库存服务、仓储服务、积分服务。整个流程的大体思路如下:用户针对一个订单完成支付之后,就会去找订单服务,更新订单状...

2020-05-07 18:10:16 215

原创 ArrayList之trimToSize方法

看过ArrayList源码的朋友有没有看到里面有个不常用的方法:这方法是干嘛的呢?说白了就是瘦身用的。

2020-05-07 11:07:03 1851

原创 JDK漏洞之6260652

看过JDK源码的童鞋可能会发现ArrayList和CopyOnWriteArrayList类中有如下源码注释:.这个see 6260652是个什么玩意呢?它其实是JDK的bug文档编号。https://bugs.java.com/bugdatabase/view_bug.do?bug_id=6260652这是个什么bug呢?假如有一个Object[]数组,并不代表可以将Ob...

2020-05-06 17:05:32 940

原创 Windows系统下搭建ELK(7.6.2)

◆ 安装ElasticSearch:https://blog.csdn.net/gzheclipse/article/details/105775503https://blog.csdn.net/gzheclipse/article/details/105775915https://blog.csdn.net/gzheclipse/article/details/105798573...

2020-04-30 16:58:43 1168 1

原创 Windows系统下安装filebeat

在官网下载filebeat安装包:解压:解压后新建图上圈红文件,写入以下内容:.\filebeat -e -c filebeat.yml修改filebeat.yml文件,保留如下配置:filebeat.inputs:- type: log enabled: true paths: - E:\blog\* #这里设置的是你需要操作的文件fi...

2020-04-30 16:42:43 1282

原创 Windows系统下安装Kibana

访问kibana官网下载安装包:解压:修改config目录下的kibana.yml文件,追加如下配置:server.port: 5601server.host: "127.0.0.1"server.name: "kibana"elasticsearch.hosts: ["http://127.0.0.1:9200"]xpack.reporting.encrypti...

2020-04-30 16:20:45 639

原创 Windows系统下安装Logstash

访问logstash官网下载安装包下载完成后解压:复制config目录下的logstash-sample.conf文件,粘贴在其同级目录并命名为logstash.conf# Sample Logstash configuration for creating a simple# Beats -> Logstash -> Elasticsearch p...

2020-04-30 16:12:02 1200

原创 ElasticSearch之分布式安装

前面介绍了ElasticSearch的单实例安装和head插件安装,下面来介绍一下ElasticSearch的分布式(一主两从)安装。修改elasticsearch.yml,追加如下配置:解释一下:★ cluster.name: boss -- 集群的名称★ node.name: master -- 当前节点名称★ node.master: true -- 设置当前节点为主...

2020-04-27 21:32:54 721

原创 ElasticSearch之head插件安装

ElasticSearch在没有安装head插件之前,其界面如下:这样的界面其实不是太友好,下面就来安装一下head插件,使其拥有可视化的界面,同时还可以实现基本信息的查看,rest请求的模拟以及数据的基本检索。访问elasticsearch-head的github仓库并下载,链接如下:https://github.com/mobz/elasticsearch-head下载完成...

2020-04-26 20:47:59 565

原创 ElasticSearch之单实例安装

在elastic官网中下载对应的安装包https://www.elastic.co/cn/downloads我演示的环境是Windows,所以下载的是zip压缩包,使用mac的同学请下载tar.gz的安装包下载完成后解压,这没什么好说的,使用mac的同学使用(tar -zxvf 文件名)解压即可解压完成后的目录列表:稍微解释一下各目录作用:★ bin目录存放的是...

2020-04-26 19:56:04 697

原创 ElasticSearch入门篇

什么是ElasticSearch● 基于Apache Lucene构建的开源搜索引擎● 采用JAVA编写,提供简单易用的Restful Api● 轻松的横向扩展,可支持PB级的结构化或非结构化数据处理ElasticSearch的由来:许多年前,一个刚结婚的名叫 Shay Banon 的失业开发者,跟着他的妻子去了伦敦,他的妻子在那里学习厨师。 在寻找一个赚钱的工作的时候,为了给...

2020-04-26 19:11:16 120

原创 Spring源码分析之AutowiredAnnotationBeanPostProcessor

大家用过spring的肯定都用过AutoWired注解,但是你想过自动注入的原理吗,这次就来说下自动注入是怎么实现的。在之前的spring的ioc容器启动过程中,我们都知道,ioc容器的启动是从AbstractApplicationContext的refresh方法开始的,在ioc容器启动时会初始化加载的BeanPostProcessor,那么BeanPostProcessor是什么呢?BeanP...

2020-04-26 18:44:33 4260

原创 elasticsearch之can not run elasticsearch as root

错误信息:解决方法:1.创建es用户组及es用户:2.更改es文件夹及内部文件的所属用户及组为es:es(在elasticsearch根目录执行此命令)3.切换到es用户再启动4:访问IP:9200即可查看elasticsearch基本信息:...

2020-04-26 18:39:37 15827

原创 MyBatis之SQL语句映射文件

1. select一个select 元素非常简单。例如:Xml代码select id,user_name,card_num,balance,creat_time from user where card_num = #{cardNum};这条语句就叫做‘getUser,有一个Long参数,并返回一个User类型的对象。注意参数的标识是

2017-05-07 17:20:47 611

原创 MyBatis主配置文件

在定义sqlSessionFactory时需要指定MyBatis主配置文件:Xml代码  bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">      property name="configLocation" value="classpath:mybatis-conf

2017-05-07 16:54:45 289

空空如也

空空如也

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

TA关注的人

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