自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

阿宅的技术博客

个人网站:zhaibo.ink

  • 博客(32)
  • 收藏
  • 关注

原创 SpringBoot整合Spring Data Elasticsearch(ES7.x),内附完整代码

前言本文讲述了SpringBoot整合Spring Data Elasticsearch的详细过程,主要使用了ElasticsearchRestTemplate、ElasticsearchRepository等类来实现Index、DocumentCRUD操作的Java Api。在开始之前,我们首先需要选择Es对应版本的jar包,本文所使用的Es版本为7.9.3,查看spring官网可知,对应的springboot版本为2.4.x。整合创建一个maven项目,就可以操作起来了。配置pom.xml

2021-09-07 14:50:12 2401

原创 MySQL查看Buffer Pool运行情况

执行命令:show engine innodb status复制出Status字段的值,以下就是Buffer Pool相关的:----------------------BUFFER POOL AND MEMORY----------------------Total large memory allocated 136970240 # 为Buffer Pool分配的总内存(单位:字节)Dictionary memory allocated 491025 # 为InnoDB 数据字典分配的总内

2021-10-12 11:01:40 2469

原创 Prometheus + Grafana搭建MySQL可视化监控系统详细教程

Prometheus、Grafana是什么?PrometheusPrometheus是一个开源的监控告警系统,最初构建在SoundCloud上,它使用监控数据采集组件从我们的各种系统中采集指标存储到自己的时序数据库,并且提供了良好的Web UI。下图为 Prometheus 的架构及一些生态系统组件:GrafanaGrafana是一个开源的可视化的数据监控系统,它为我们提供了多种数据源配置和大量精美的图表,我们只需要简单配置就可以将监控数据直观的展示出来。Grafana主要有以下功能:是

2021-10-09 14:58:11 954

原创 Spring Boot整合Spring Data MongoDB 常用API

环境MacOSMongoDB 5.0.2Spring Boot 2.4.0配置创建一个maven项目,引入依赖jar包,配置pom.xml。<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.4.0</versio

2021-09-24 17:49:30 703 2

原创 canal-adapter同步mysql数据到es

canal安装可参考:alibaba canal的安装配置及简单使用版本mysql 8.0.23elasticsearch 7.9.3canal 1.1.5创建表先创建要同步的表:DROP TABLE IF EXISTS `users`;CREATE TABLE `users` ( `id` varchar(64) NOT NULL, `username` varchar(20) NOT NULL COMMENT '用户名', `phone` varchar(64) NOT

2021-09-18 11:08:48 1538

原创 alibaba canal的安装配置及简单使用

canal的简介和适用场景可参考官方文档:github alibaba canal 依赖环境JDK1.8、mysql8.0.23本文使用单机方式本地安装canal,如果需要安装canal集群,需要先装好zookeeper。下载安装包由于从国内下载github release速度极慢,可以在canal release页面复制安装包地址去下面的地址下载:https://d.serctl.com/分别下载下面3个安装包:下载完成后使用tar -zxvf canal-xx.tar.gz命令解压备用

2021-08-27 10:53:40 1318

原创 MacOS安装Elasticsearch、Kibana

下载安装包Elasticsearch官网下载速度极慢,可以从华为云镜像站下载。Elasticsearch下载地址Kibana下载地址Elasticsearch安装启动tar -zxvf elasticsearch-7.9.3-darwin-x86_64.tar.gzcd elasticsearch-7.9.3/bin/./elasticsearch # 前台启动./elasticsearch -d # 后台启动停止jps -lkill -9 pid访问浏览器访问:localh

2021-08-11 20:58:04 222 1

原创 EasyExcel单元格设置下拉框、添加批注

ExcelExcel GitHub地址需求通过浏览器下载Excel模版,要求指定的单元格有下拉选项,指定的表头有批注。实现pom.xml<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> <version>2.0.3.RELEASE</ve

2021-08-03 17:00:44 7536 1

原创 Nginx的常用场景

静态文件服务器修改nginx.confserver { listen 80; server_name localhost; #charset koi8-r; #access_log logs/host.access.log main; location / { #配置静态文件目录 root /root/app/; #配置首页 index index.html index.htm; #autoindex在浏览器显示文件目

2020-07-21 10:32:04 197

原创 MySQL调优

哪些sql需要优化要优化sql,首先要知道哪些sql需要优化,两种场景:在开发阶段直接进行优化;在生产阶段通过慢查询日志分析;下面说下慢查询方式,有以下关键几步:开启慢查询:set global slow_query_log = on指定慢查询日志目录:set global slow_query_log_file='/var/lib/mysql/slow.log'指定慢查询时间阈值:set global long_query_time = 0.3分析工具:mysqldumpslow -

2020-07-21 10:23:54 188

原创 RocketMQ事务消息底层实现原理分析

事务消息实现原理流程RocketMQ 4.3后支持事务消息,采用了2PC的方案来提交事务消息,同时增加一个补偿逻辑来处理二阶段超时或者失败的消息,以下为事务消息实现原理图:事务消息发送及提交流程:发送消息(half消息)服务端响应消息写入结果根据发送结果执行本地事务(如果写入失败,此时half消息对业务不可见,本地逻辑不执行)根据本地事务状态执行Commit或者Rollback(Commit操作生成消息索引offset,消息写入commintlog)事务消息补偿流程:对没有Commi

2020-07-21 09:50:40 696

原创 基于Spring Cloud(Greenwich.SR2)搭建的微服务脚手架(适用于在线系统)

项目地址:https://github.com/ZhaiBo/microservice-scaffoldmicroservice-scaffold基于Spring Cloud(Greenwich.SR2)搭建的微服务脚手架,已集成注册中心(Nacos Config)、配置中心(Nacos Discovery)、认证授权(Oauth2 + JWT)、日志处理(ELK + Kafka)、限流熔断...

2019-12-08 00:21:48 1324

原创 Spring Cloud限流熔断:Spring Cloud Alibaba Sentinel

Spring Cloud限流熔断:Spring Cloud Alibaba Sentinel

2019-12-06 18:17:37 372

原创 Spring Cloud链路追踪:Pinpoint

Spring Cloud调用链监控:PinPoint

2019-12-04 21:03:20 2028

原创 Spring Cloud应用指标监控:Prometheus + Grafana

Spring Cloud应用指标监控:Prometheus + Grafana

2019-12-02 20:33:30 1617

原创 Spring Cloud日志集中化处理:ELK + Kafka

微服务日志集中处理:SpringCloud集成ELK

2019-11-30 17:01:09 1738

原创 Docker运行Alibaba Cloud Sentinel Dashboard

下载docker imagedocker search sentineldocker pull bladex/sentinel-dashboard后台运行Sentinel Dashboarddocker run --name sentinel-dashboard -p 9001:8858 -d bladex/sentinel-dashboard:latest 访问...

2019-11-16 17:16:51 2311

原创 Java Thread的start()和run()

start()使用start()才是真正意义上的启动一个新线程,调用start()之后,线程并不会立即进入到运行状态,而是会做一系列的准备工作,而是让自己处于就绪状态,此时会等待获取cpu资源,一旦获取到cpu资源,才会执行重写的run(),执行完后则会销毁线程。以下为线程调用start()的代码:public static void main(String[] args) { Run...

2019-11-13 00:01:37 462

原创 CentOS下Docker搭建ES、Kibana、Cerebro

安装Docker CE1、卸载旧版本dockeryum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \ docker-logrotate \ ...

2019-10-24 09:56:00 584 1

原创 分布式理论之BASE

分布式理论之BASE

2019-10-04 20:03:47 170

原创 分布式理论之CAP

分布式理论之CAP

2019-10-04 18:02:13 222

原创 java lambda用法示例

整理一下常用的lambada语法和示例。

2019-09-27 13:34:31 298

转载 九大Java性能优化工具

原文链接:http://www.toutiao.com/i6428519152259957250/ 在这篇文章中,我会带着大家一起看一下9个可以帮助我们优化Java性能的工具。有一些我们已经在IDR S...

2019-09-23 10:38:42 2443

原创 JVM性能监控和管理工具

JVM提供了丰富的性能监控和故障处理的工具,在生产环境中,我们可以使用这些工具进行JVM性能调优和故障处理。

2019-09-23 10:27:12 741

原创 tomcat自动部署war包到ROOT目录

需求部署war包到tomcat,访问路径为localhost:8080,不带项目名称。直接放到webapps下,自动解压后,访问路径需要带项目名称。部署步骤解压tomcat包。在根目录下创建一个新的文件夹wars,并将要部署的war包放进去。删除原本webapps下的所有文件。修改conf目录下server.xml,在文件末尾Host标签中加上如下配置:<Con...

2019-09-19 16:18:52 6544

原创 百度地图JS获取当前所在城市信息

function getCity() { var latlon = null; //ajax获取用户所在经纬度 $.ajax({ url: "http://api.map.baidu.com/location/ip?ak=YourAK&coor=bd09ll", type: "POST", dataType: "jso...

2019-09-16 17:41:17 3392

原创 堆内存空间和内存分配策略

堆内存空间和内存分配策略Java 堆主要分为2个区域-年轻代与老年代,其中年轻代又分 Eden 区和 Survivor 区,而Survivor 区又分 From 和 To 2个区。如下图:Eden区IBM 公司的专业研究表明,新生代中有98%的对象是“朝生夕死”,对象会在新生代 Eden 区中进行分配,当 Eden 区没有足够空间进行分配时,虚拟机会发起一次 Minor GC,Minor ...

2019-09-15 00:44:02 3542 1

原创 Java垃圾收集

在日常开发中,我们并不需要去关注垃圾回收,因为JVM动态内存分配和内存回收已经非常成熟了。但为了排查解决线上环境出现的内存泄漏和内存溢出问题,我们还是需要对JVM有一些深入的了解。哪些内存需要回收?在垃圾回收之前,我们需要先知道哪些垃圾需要被回收,在JVM中有两种判断“对象已死”的方法。引用计数法(Reference Counting)简单的描述就是:给一个对象添加一个引用计数器,每当有一...

2019-09-14 23:38:09 758

原创 JVM运行时数据区

简介JVM在执行java程序的过程中会把它管理的内存划分为若干个不同的数据区域。主要分为五个区域:堆(Heap)、栈(Stack)、本地方法栈(Native Stack)、方法区(Method Area)、程序计数器(Program Count Register)。如图:...

2019-08-27 17:28:04 458

原创 Executor线程池框架

Executor简介Executor是JDK1.5之后引入的,其内部使用了线程池机制,通过该框架来控制线程的启动、执行和关闭,可以简化并发编程的操作。如下为Executor相关类图:Executor使用Java提供了Executors工具类,实际使用中我们可以根据需要选择合适的方法去创建和使用线程池。以下为主要的方法:newFixedThreadPool(nThreads),创建一个...

2019-08-09 15:46:38 642

原创 Java线程池-ThreadPoolExecutor

什么是线程池?WIKI:线程池(ThreadPool)是一种线程使用模式。线程过多会带来调度开销,进而影响缓存局部性和整体性能。而线程池维护着多个线程,等待着监督管理者分配可并发执行的任务。这避免了在处理短时间任务时创建与销毁线程的代价。线程池不仅能够保证内核的充分利用,还能防止过分调度。可用线程数量应该取决于可用的并发处理器、处理器内核、内存、网络sockets等的数量。为什么要使用线...

2019-08-08 15:56:26 708

原创 CentOS下安装Zookeeper

下载http://mirror.bit.edu.cn/apache/zookeeper/zookeeper-3.4.13/zookeeper-3.4.13.tar.gz解压tar -zxf zookeeper-3.4.13.tar.gz -C /usr/local配置cd /usr/local/zookeeper-3.4.13mkdir datamkdir logscd con...

2019-08-05 14:29:42 447

空空如也

空空如也

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

TA关注的人

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