自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(221)
  • 资源 (28)
  • 问答 (1)
  • 收藏
  • 关注

原创 Tomcat总结

Tomcat线程模型 Tomcat容器模型 Tomcat为什么要打破双亲委托类加载机制 Tomcat热部署如何实现 Tomcat处理一个请http求的过程 Connector初始化流程 Container初始化流程 Tomcat编解码过程和中文乱码问题 Tomcat Cookie支持问题 ...

2020-08-14 10:51:52 191

原创 idea springboot项目设置http代理

1. 背景1) 使用nacos配置中心,客户端侧2)想了解nacos动态更新配置的原理3) 抓取idea springboot项目的http请求2. idea具体配置-Dhttps.proxySet=true -Dhttp.proxyHost=localhost -Dhttp.proxyPort=8888Configuration--》配置3. 抓包mac系统采用Charles抓包...

2020-07-03 11:33:40 2972 1

原创 通用的前端nginx配置

erver { listen 8090; # 请修改为项目环境域名 set $domain_name xx.xx.com; error_log /xx/log/nginx/${domain_name}-error.log ; access_log /xx/log/nginx/${domain_name}-access.log; server_name $domain_name; set $html_dir /xx/bin/static/; root $html_di.

2020-07-01 16:37:17 323

原创 消息中间件压测工具

https://github.com/openmessaging/openmessaging-benchmark/

2020-04-30 10:34:36 647

原创 线上环境问题排查

1. 下载Jarcurl -O https://alibaba.github.io/arthas/arthas-boot.jar2. 运行普通机器java -jar arthas-boot.jardocker容器${containerId} /bin/bash -c " java -jar arthas-boot.jar"3. 排查问题...

2020-04-29 14:05:02 270

原创 redis cluster从节点的作用

1) 备份2) 容灾,若主节点fail, 通过投票选举其中一个从节点为主节点

2020-03-26 09:52:14 2181

原创 redis内存预估

1.背景 作为redis集群的维护者,对于新接入的业务使用redis集群的数据量级和内存占用量,需要有一定的估算,这样才能保证集群的正常运行。2. 内存预估1)set一个键值对,到底哪里占用了内存2)数据结构占用内存和实际分配的内存的关系3. 占用内存1) redis 本质是一个字典结构2)最外层是dict ,包含dicttype...

2020-03-26 09:50:31 341

原创 redis cluser查看每个主节点管理的slot和从节点

> cluster slots1) 1) (integer) 10923 // 管理的起始slot 2) (integer) 16383 // 管理的截止slot 3) 1) "10.38.162.110" // 主节点ip 2) (integer) 7007 // 主节点端口 3) "caf219cd84e345c8e6b4...

2020-03-25 10:53:01 4533

原创 redis cluser状态查询

> cluster infocluster_state:ok // 集群状态cluster_slots_assigned:16384 // 已分配sot数量cluster_slots_ok:16384 // 处于正常状态的slot数量cluster_slots_pfail:0 // pfail状态的slot数量cluster_slots_fail:0 //...

2020-03-25 10:44:11 859

原创 秒杀系统

1. 背景最近在设计一个秒杀系统,针对遇到的一些问题写了些体会2. 关注点秒杀系统1)高并发的问题 : 短时间内,大量用户访问2)高可用问题:如何保障秒杀系统不会挂掉3)库存问题: 如何保障不会超库存3. 解决3.1 高并发问题1) 运营预估流量峰值和均值2) 单节点流量压测+预估实例数量3)后端采用redis看流量,而不是数据...

2020-03-20 09:19:30 109

原创 git如何统计代码提交行数

1. 问题如何查看每个人的代码提交行数2. 实现2.1 查看git上个人代码量// 修改usernamegit log --author="username" --pretty=tformat: --numstat | awk '{ add += $1; subs += $2; loc += $1 - $2 } END { printf "added lines: %s...

2020-03-13 11:26:04 4754

原创 mac 查看Jar包

unzip -x -q trace-agent.jar -d trace-agent直接解压后查看

2020-03-06 18:41:30 8418

原创 gitlab上先创建项目并存在文件,本地代码如何提交到该仓库

1. 本地git initgit init2. 本地关联上远程$ git remote add origin https://github.com/user/repo.git3. 从远程拉取最新代码git pull origin master4. 本地addgit add .5. 本地commitgit commit -m 'init'...

2020-02-25 09:35:34 1931

原创 Linux 计算逻辑CPU个数(处理能力)

1. 介绍1) 每台计算机可能有多个物理CPU2) 每个CPU可以有多个核3) 每个核可以有多个超线程数2. 命令查看物理 cpu 数:cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l查看每个CPU有几个核cat /proc/cpuinfo | grep "cpu cores" ...

2020-01-21 17:23:35 549

原创 linux 查看CPU的个数

linux 系统查看物理 cpu 数:cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l查看每个物理 cpu 中 核心数(core 数):cat /proc/cpuinfo | grep "cpu cores" | uniq查看总的逻辑 cpu 数(processor 数):cat /proc/cpuinf...

2020-01-21 15:28:24 127

原创 maven 打包 过滤javadoc报错

mvn install -Dmaven.javadoc.skip=true

2020-01-20 17:16:57 366

原创 mysql 概念

1. 回表1)使用聚簇索引查询只需要查询一次 (叶子节点有该行数据)2) 使用覆盖索引查询,也只需要查询一次,无需回表3) 使用普通索引查询非索引字段,需要回表查询多次2.聚簇索引和覆盖索引1) 主键默认使用聚簇索引2) 没有主键的唯一索引也会使用聚簇索引3) 覆盖索引用于减少磁盘访问次数,避免回表查询3. 最左前缀列联合索引[A,B] 生效需要先使用...

2020-01-17 15:33:15 134

原创 mysql 高效的索引策略

1. 索引列独立使用,避免使用函数例如 where to_char(xx,xx)=xx2. 索引选择性尽量大一些索引选择性=不重复的索引值和总记录的比值,返回在0到1之间尽量选择接近1的列建立索引,例如性别 sex不适合作为索引,因为它本身就只有两种可能性,索引选择性很低3. 避免给很长的列建索引1) 索引本身也需要占用空间2) 列很长,查询的效...

2020-01-17 11:32:22 119

原创 Mysql InnoDB支持哈希索引吗

1. 问题Mysql InnoDB支持哈希索引吗上图可以看出: InnoDB使用哈希索引来实现自适应哈希索引功能2. 描述InnoDB引擎有一个页数的功能叫做自适应哈希索引。当InnoDB注意到某些索引值被使用非常频繁的时候,它会在内存中基于B-Tree索引之上再创建一个哈希索引,使得B-Tree索引也具有哈希索引的优点。这是一个完全自动,内部的行为,无法进行...

2020-01-17 10:46:58 540

原创 maven install 报错 javadoc问题解决

1. 背景api打包一直报错,javadoc生成失败2.解决办法mvn clean install -Dmaven.javadoc.skip=true

2020-01-16 16:14:06 1175

原创 linux vi查看末尾结束符

1. 背景在windows中经常使用notepad++查看末尾结束符,在linux下如何查看呢?原因: 在windows下创建的文件,内容在Linux下运行报错2. vi 查看只需要:set invlist即可以将不可见的字符显示出来,例如,会以^I表示一个tab符,$表示一个回车符等...

2020-01-14 11:15:51 3979

原创 grpc Java NANO_RUNTIME does not support services

1. 背景使用grpc的maven插件生成代码时,报错Java NANO_RUNTIME does not support services2. 插件信息3. proto文件内容syntax = "proto3";option java_multiple_files = false;option java_package = "com...

2020-01-13 16:29:19 843 1

原创 maven 使用命令的方式运行插件,查看错误详情

1.问题运行环境: idea描述: 我们经常使用idea的插件,常见的运行方式是直接点击插件的对应命令运行,比如mvn clean问题: 运行失败,无法查看日志详情2. 使用命令的方式运行-X 显示详情第一行就是运行的命令,直接复制即可然后在最后加上-X...

2020-01-13 16:24:51 978

原创 redis集群是如何组建的

1. 问题redis集群是如何组建的,新的节点如何加入集群2. 了解命令meet1) 首先节点各自独立启动,会选择以集群的方式启动2)该节点通过meet邀请其他节点加入集群3. 实现通过向节点A发送cluster meet命令,客户端可以让接受命令的节点A将另一个节点B添加到集群中cluster meet <ip> <port&gt...

2020-01-10 14:58:50 144

原创 redis 集群数据结构

1. 问题1) redis 集群的数据结构是怎样的?2. 节点状态clusterNode结构clusterNode表示一个节点的当前状态redis集群使用clusterNode结构来保存集群中某个节点的状态,包括1) 节点的名字 (40位16进制字符串)2) 节点的创建时间3) 节点对应集群当前的纪元4) 节点的IP和端口5) 节点的状态 (下线...

2020-01-10 14:33:16 258

原创 redis 集群容错策略

1. 问题1) redis 集群如果一个主节点挂了,会怎么处理2) redis集群如果一个从节点挂了,会怎么处理3) 如何判断整个redis集群挂了?2. 处理2.1redis 集群如果一个主节点挂了,会怎么处理在了解这个问题之前,我们需要知道redis集群如何判断一个主节点挂了?1) 集群中的每个节点都会顶起地向集群中的其他节点发送PING消息2) ...

2020-01-10 10:58:25 1110

原创 Redis 为什么会出现阻塞?

1. 介绍Redis是基于reactor模式的一种事件驱动框架。2. 事件分类文件事件: 读事件,写事件时间事件: 定时事件,周期性事件3. 文件事件连接事件:客户端连接到服务端,连接关闭等读写事件:socket读写4.事件处理器不同的事件对应不同的事件处理器,由事件分发器分派说明:IO多路复用一般借助操作系统自带的...

2020-01-07 18:19:49 2159

原创 dubbo check=true源码分析

1. 问题check=true到底检查的是什么?2. debug查看ReferenceConfig里面的createProxy方法if (shouldCheck() && !invoker.isAvailable()) { throw new IllegalStateException("Failed to check the statu...

2020-01-02 17:04:35 482 3

原创 dubbo 并发控制源码分析

1. 问题dubbo可以实现接口或方法层面的并发控制,它是如何实现的?2. 接口方法的并发控制(服务端)<dubbo:service interface="com.foo.BarService" executes="10" />限制该接口的每个方法并发执行不能超过10个<dubbo:service interface="com.foo.B...

2020-01-02 16:29:38 139

原创 Redis AOF持久化

1. 问题1) RDB为redis的一个全量的内存快照,但是每次都需要全量,耗时很长,如何实现增量的持久化?2)类似于Mysql的bin log日志,Row格式存储的是数据,Statement存储的是执行的命令语句,redis有没有?2. AOF流程1) 服务器每次执行完一个写命令,会以协议格式将执行的写命令追加到aof_buf缓冲区的末尾;2) 根据一定的策略,...

2020-01-02 14:53:58 73

原创 Redis RDB持久化

1. 问题1). redis作为一个以内存为基本的存储服务,如何保证可靠性呢?如果遇到断电,怎么处理2) redis有没有一种数据快照功能?3)redis主从同步,传输的是什么文件?2. 内存快照RDB可以说是一个内存快照,格式为二进制,内容为key,value信息文件结构:REDIS为固定开头,占5个字节。db_version为RDB文件的版本...

2020-01-02 14:22:10 107

原创 redis单线程为什么这么快

所谓redis很快,到底是指的什么?响应时长很短那么响应时长由什么组成呢?响应时长=网络耗时+redis自身耗时网络耗时正常和运营商相关,一般为近似固定的延时redis自身耗时=接受请求+分发请求+处理请求总结redis单线程比较快的原因:1) 使用IO多路复用,例如epoll (提升吞吐量)2) 纯内存操作 (处理请求耗时短,单位时间内处理的请求数...

2019-12-31 10:46:58 99

原创 redis info详解2

统计# Statstotal_connections_received:3940602610 #总共接受到的连接数total_commands_processed:8487340070#总共处理的连接数instantaneous_ops_per_sec:160 #每秒处理的请求total_net_input_bytes:215986712412 #总网络流入字节...

2019-12-31 09:00:29 178 1

原创 redis info详解

1. 背景最近在研究redis的配置信息,想了解为什么这么配置以及如何优化这些配置2. 配置信息10.38.162.118:7004> info# Server 服务器信息redis_version:3.2.9 #redis版本redis_git_sha1:00000000 #git上版本redis_git_dirty:0 #git代码是否修改...

2019-12-30 20:20:45 126

原创 redis底层数据结构之压缩列表

1. 问题压缩列表在Redis中用来存储哪些类型的数据?2. 介绍压缩列表是redis为了节省内存而开发的,由一系列特殊编码的连续内存块组成的有序数据结构。用途: zset键,哈希键3. 底层实现说明:ziplist_bytes: 四个字节,记录占用总字节数ziplist_tail_offset: 四个字节,代表第一个节点距离最后一个节点的字节数...

2019-12-30 15:51:11 150

原创 redis底层数据结构之整数集合

1. 问题当我们使用redis的set结构存储一些数量不多的数字时,底层是什么数据结构?2. 数据结构typedef struct intset{ //编码方式 uint32_t enconding; // 集合包含的元素数量 uint32_t length; //保存元素的数组 int8_t contents[];}...

2019-12-30 15:04:39 136

原创 redis 慢查询日志

1. 问题 我们在数据库sql经常会统计并优化慢查询语句,同样的,redis中也存在一种慢查询;作用也是一样,列出操作很慢的命令,这里的很慢是指超过某个指定的时间,用户可以自定义。2. 使用通过slowlog get来获取redis的慢查询日志slowlog get 1指定查询一条慢查询日志3. 日志分析慢查询日志分为id, 时...

2019-12-30 14:19:44 147

原创 redis 查看字符串Value数据类型

1. redis中存储的字符串到底是什么数据类型测试如下:10.38.162.118:7004> set quickapp_test 123OK10.38.162.118:7004> OBJECT type quickapp_test(error) ERR Syntax error. Try OBJECT (refcount|encoding|idletime)...

2019-12-27 16:42:52 4126 3

原创 iftop 过滤IP展示

iftop 实时统计流量需要过滤IP查看1. 输入H 查看使用说明2. 再输入H 回到显示页面3. 输入l4. 输入过滤的ip,回车5. 输入q结束

2019-12-27 15:09:53 4927

原创 mac 下安装iftop

1. 安装homebrew2. 安装iftopsudo安装报错直接brew install iftop安装3. 链接brew link iftop 报错 没有权限brew list iftop 显示iftop安装的目录链接 :sudo ln -s xx /usr/bin/iftop...

2019-12-27 14:47:23 940

jmeter-plugin-dubbo-jar-with-dependencies.jar

dubbo jmeter插件,直接导入jar到lib/ext目录,打开jmeter即可使用 目前支持jmeter5.1, dubbo版本为2.7.3

2019-12-17

JQuery-1.7.1.js免积分下载

JQuery-1.7.1.js免积分

2016-01-23

Java实现字节流与图片的转化

Java实现字节流与图片的转化

2016-01-09

java 实现十六进制数转为图片

java 实现十六进制数转为图片实例,含代码和测试数据

2016-01-09

quartz2.2定时器实例

quartz框架,Java代码实现定时器功能

2015-12-25

mybatis,log4j打印日志到后台和文件

mybatis,log4j打印日志到后台和文件

2015-12-25

mybatis打印日志实例

mybatis打印日志,后台显示日志信息,直接运行test包下的测试程序,即可在后台查看到日志信息

2015-12-25

mybatis-generator-core-1.3.2.jar免费下载

最新的,免费的,mybatis-generator-core-1.3.2.jar免费下载

2015-12-22

commons-pool2-2.4.2.jar下载

最新的,完整的,官方的commons-pool2-2.4.2.jar包下载,免费下载

2015-12-19

spring+quartz+maven项目实例

本代码是定时器的实例,两种运行模式,一种是直接以Java程序的形式运行,指定加载的配置文件;另一种是在tomcat下运行

2015-12-19

jenkins权威指南 文字版pdf

Jenkins是一个开源软件项目,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能。Jenkins是基于Java开发的一种持续集成工具,用于监控持续重复的工作

2015-08-02

HTTP协议文档

超文本传输协议(HTTP,HyperText Transfer Protocol)是互联网上应用最为广泛的一种网络协议。所有的WWW文件都必须遵守这个标准。设计HTTP最初的目的是为了提供一种发布和接收HTML页面的方法。1960年美国人Ted Nelson构思了一种通过计算机处理文本信息的方法,并称之为超文本(hypertext),这成为了HTTP超文本传输协议标准架构的发展根基。Ted Nelson组织协调万维网协会(World Wide Web Consortium)和互联网工程工作小组(Internet Engineering Task Force )共同合作研究,最终发布了一系列的RFC,其中著名的RFC 2616定义了HTTP 1.1。

2015-08-02

JSON的jar包

JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。它基于ECMAScript的一个子集。 JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯

2015-07-31

hibernate 3.3.2.jar

适应于那些使用SSH开发的项目,此资料从官网下载,望对下载者有所帮助

2015-06-27

httpclient4.3登陆人人

最新版httpclient自动登录人人代码,内含有代码,httpclient4.3包,只需要修改账户和密码,就可以登陆

2014-11-14

java 1.7版的API

免费下载最新版的Java API文档,需要的请进入,下载完成后,如果打不开,右键属性----解除锁定 即可使用

2014-09-11

hibernate实例

包含整个项目,jar包,数据库以及怎样简单修改

2014-03-02

jsp图片操作

对于初学者有所帮助,望相互勉励,文件里面是具体的实例项目,不需要额外加入jar包

2013-12-04

commons-fileupload-1.3.jar

实现上传功能所需要的jar包,最新版的,免费下载,不需要积分,希望能给大家有所帮助

2013-11-14

jsp页面不同frame间调用

对于初学者有一定帮助,希望他们能有所收获,不会一直纠结

2013-10-15

jsp分栏显示

对于初学者有所帮助,希望他们能有所收获,谢谢

2013-10-15

javabean连接数据库

对于初学者有所帮助,我用的是mysql数据库,用其他数据库时需要改动驱动等等

2013-10-15

jsp操作文件

对于初学者有所帮助,望他们和我一样能少走些弯路

2013-10-12

jsp内置对象

对于初学者有所帮助,可以避免调试过程中出现的一些瓶颈

2013-10-11

jsp动作标识

对于初学者有所帮助,可以避免调试过程中出现的一些瓶颈

2013-10-11

jsp调用servlet

对于初学者有所帮助,可以避免调试过程中出现的一些瓶颈

2013-10-11

jsp连接数据库

对于初学者有所帮助,可以避免调试过程中出现的一些瓶颈

2013-10-11

javabean测试代码

对于javabean的初次使用者有所帮助,避免出现调试出现瓶颈的问题

2013-10-11

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

TA关注的人

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