- 博客(28)
- 资源 (2)
- 收藏
- 关注
原创 深入理解 Tomcat(一)源码环境搭建和 How Tomcat works 源码
1、深入理解 Tomcat(一)源码环境搭建和 How Tomcat works 源码
2021-08-20 10:07:22
217
原创 File转byte数组,对比
1、BIO方式 /** * 将文件转换成byte数组 * @param filePath * @return */ public static byte[] File2byteBIO(File tradeFile){ byte[] buffer = null; try(FileInputStream fis = new FileInputStream(tradeFile); ByteA
2021-07-07 18:45:39
588
原创 linux 安装Mycat 并测试 集成spring boot(详细)
1、下载mycathttp://dl.mycat.org.cn/1.6-RELEASE/
2021-06-18 16:56:08
306
原创 Ubuntu mysql8.x tar安装 (超详情)
1、使用华为云镜像https://repo.huaweicloud.com/mysql/Downloads/MySQL-8.0/
2021-06-08 14:27:46
1659
原创 mysql 存储引擎 坑
1、循环中不能declare,任何循环都不能(while,repeat.........)2、declare 之前不能有set语句3、存储过程开始生命了三个变量,这三个变量的声明顺序非常重要,首先要进行变量声明,然后声明条件,随后声明游标,再后面才是声明错误处理器,如果没有按照顺序声明,系统会提示错误信息...
2021-06-02 17:31:28
115
转载 uuid和自增_官方都不推荐?为什么MySQL不推荐使用uuid作为主键?究竟有什么坏处...
uuid和自增_官方都不推荐?为什么MySQL不推荐使用uuid作为主键?究竟有什么坏处...
2021-05-31 16:53:18
176
原创 为什么mysql innodDB中组合索引中范围查询后的条件索引会失效?
简单点来说,该组合索引是一个以a字段排序而b与c相对有序的B+树,引擎可以通过二分查找定位到a=1的数据,b在a=1确定得情况下是有序的(所以b的有序是相对的),依然可以通过二分查找取出所有b大于2的数据,但这些数据的b字段可能有很多个不同的值,所以c字段是无序的,无法用二分查找来查询c=3的数据,故c用不到索引。作者:一叶知秋链接:https://www.zhihu.com/question/431438631/answer/1601541529来源:知乎著作权归作者所有。商业转载请联系作者获
2021-05-31 15:36:49
743
转载 单服务器最大tcp连接数及调优汇总
转载:https://www.cnblogs.com/duanxz/p/4464178.html单服务器最大tcp连接数及调优汇总启动线程数:启动线程数=【任务执行时间/(任务执行时间-IO等待时间)】*CPU内核数最佳启动线程数和CPU内核数量成正比,和IO阻塞时间成反比。如果任务都是CPU计算型任务,那么线程数最多不超过CPU内核数,因为启动再多线程,CPU也来不及调度;相反如果是任务需要等待磁盘操作,网络响应,那么多启动线程有助于提高任务并发度,提高系统吞吐能力,改善系统性能。单机
2021-05-21 17:33:04
523
原创 mysql搜索不区分大小写
mysql搜索是不区分大小写的,这种情况下我们有两种方法解决知识前提:BINARYbinary不是函数,而是一个类型转换运算符,它用来强制字符串为一个二进制字符串,可以理解为在字符串比较的时候区分大小写。一般用于查询语句COLLATE即校验规则:*_bin: 表示的是binary case sensitive collation,也就是说是区分大小写的*_cs: case sensitive collation,区分大小写*_ci: case insensitive co
2021-05-21 13:43:59
485
原创 linux 环境下 Consul启动后 Service Check 报红叉的错误
1、环境介绍JDK:1.8spring-boot:2.2.2.RELEASEspring-cloud:Hoxton.SR1consul:1.9.52、问题描述使用springcloud搭建微服务,注册中心使用 Consul 包含三个服务,两个服务提供者(8005,8006),一个服务消费者(80) 分别启动服务后出现如图错误,服务分别注册成功,但是均 (Allservicechecksfailing),错误日志为: Get "http://xxx.xxx.com:800...
2021-05-17 14:04:00
1246
原创 Spring @Transactional 事务失效的场景?如何解决?
在项目开发中,如果涉及到多张表操作时,为了保证业务数据的一致性,大家都会采用事务机制;但是好多小伙伴可能只是简单了解一下,一旦遇到事务失效的情况,便会无从下手,此篇文章给大家整理了一下常见Spring事务失效的场景,希望开发过程尽量避免踩坑,造成时间精力的浪费。目录1、失效场景2、 解决方案1、非public权限修饰1、失效场景 @Transactional配置的方法非public权限修饰; @Transactional所在类非Spring容器管理的bean; .
2021-05-06 13:22:44
303
原创 很诡异的一件事情
下面这段代码是验证static的线程可见性的public class TestStatic { public static void main(String[] args) { Data data = new Data(); new Thread(() -> { System.out.println("线程启动a值为:"+data.a); try { Thread.sleep
2021-03-27 00:30:29
152
转载 Java多线程之Callable接口的实现
1.接口的定义:public interface Callable<V> { V call() throws Exception; }2.Callable和Runnable的异同先看下Runnable接口的定义public interface Runnable { public abstract void run();}Callable的call()方法类似于Runnable接口中run()方法,都定义任务要完成的工作,实现这两个接口时要分别重写这两个方法,主要的不
2021-03-18 10:03:28
260
转载 MySQL锁总结
转载:https://zhuanlan.zhihu.com/p/29150809锁是计算机协调多个进程或线程并发访问某一资源的机制。锁保证数据并发访问的一致性、有效性;锁冲突也是影响数据库并发访问性能的一个重要因素。锁是Mysql在服务器层和存储引擎层的的并发控制。加锁是消耗资源的,锁的各种操作,包括获得锁、检测锁是否是否已解除、释放锁等。锁机制共享锁与排他锁共享锁(读锁):其他事务可以读,但不能写。 排他锁(写锁) :其他事务不能读取,也不能写。粒度锁MySQL 不同的存储引擎
2021-03-11 17:04:48
123
原创 mysql 演示死锁的发生
0、初始化数据库表CREATE TABLE `tx` ( `id` int(2) NOT NULL AUTO_INCREMENT, `name` varchar(10) NOT NULL, PRIMARY KEY (`id`)) ENGINE=InnoDB AUTO_INCREMENT=14 DEFAULT CHARSET=utf8;-- ------------------------------ Records -- ----------------------------
2021-03-11 16:39:49
235
转载 [Mysql]——通过例子理解事务的4种隔离级别
转载:https://www.cnblogs.com/snsdzjlz320/p/5761387.html目录第1级别:Read Uncommitted(读取未提交内容)第2级别:Read Committed(读取提交内容)第3级别:Repeatable Read(可重读)第4级别:Serializable(可串行化)SQL标准定义了4种隔离级别,包括了一些具体规则,用来限定事务内外的哪些改变是可见的,哪些是不可见的。低级别的隔离级一般支持更高的并发处理,并拥有更低的系统开销。
2021-03-11 13:35:31
124
原创 记一次nginx Too many open files
1、问题线上举行活动,由于在线人数激增,导致服务拒绝服务2、查找问题排查思路:由于线上的服务第一道关卡就是nginx,所以第一时间去看了nginx的错误日志,果不其然2021/03/06 20:10:37 [crit] 26071#0: *345171208 open() "/usr/html/50x.html" failed (24: Too many open files), client: xxx.xxx.xxx.xxx, server: aa.xxx.com, request: "
2021-03-11 11:16:36
390
1
原创 JDK 工具使用
目录0、主要功能简介1、jps:虚拟机进程状况工具2、jstat虚拟机统计信息监控工具2.1、类加载统计 -class2.2、编译统计-compiler2.3垃圾回收统计 -gc2.4堆内存统计-gccapacity2.5新生代垃圾回收统计 -gcnew2.6新生代内存统计 -gcnewcapacity2.7 老年代垃圾回收统计 -gcold2.8老年代内存统计 -gcoldcapacity2.9JDK7 ...
2021-03-09 17:30:32
353
原创 设置mysql root账户远程访问权限
进入mysqlmysql -uroot -p切换mysql数据库use mysql;查看root信息SELECT `Host`,`User` FROM user where user="root";更新用户表:(其中%的意思是允许所有的ip远程访问,如果需要指定具体的某个ip就写上具体的ip即可)UPDATE user SET `Host` = '%' WHERE `User` = 'root' and host='localhost' LIMIT 1;强制刷新权限.
2021-02-23 17:18:14
7720
转载 Linux如何解决root用户Operation not permitted
在Linux系统中,拥有最高权限的用户root,在执行文件权限的修改,或者修改文件时也会出现如下错误:1.chmod: changing permissions of 'xxx': Operation not permitted;2.E45: 'readonly' option is set (add ! to override)接下来本文主要介绍如何解决root用户无权限修改文件的问题。一、问题背景 Linux环境下,在安装Oracle数据库时需要修改内核参数,这时.
2020-12-30 18:23:26
1242
原创 证明ArrayList是线程不安全的
import java.util.ArrayList;import java.util.Collections;import java.util.List;import java.util.concurrent.ConcurrentLinkedQueue;import java.util.concurrent.LinkedBlockingQueue;public class ConcurrectLinkedQueueDemos { static List<String> li.
2020-10-28 14:16:57
285
原创 举个小栗子,重新理解一下synchronized,volatile,wait(),notify(),join()
直接步入正题:1、若有一个方法需要实现多线程情况下一个一个访问,则可使用synchronized关键字来实现。2、若有一个工作是需要用两个或多个线程来共同协作完成,并且必须是完成某个动作之后才能执行下一个动作,则可使用 wait()和 notify() 结合来操作,也可使用volatile关键字来实现 。举个栗子:/** * @author HMM * */public class TestWait { String name = "QQQ";//随意 volat...
2020-09-03 18:19:27
942
原创 jfinal项目配置websocket出现404
直接上代码1、导入依赖包<dependency> <groupId>javax</groupId> <artifactId>javaee-api</artifactId> <version>7.0</version> <scope>provided</scope></dependency>2、配置websocketControlleri
2020-08-19 09:29:17
526
原创 使用 Docker 运行 redis 并加载 自定义配置文件
使用 Docker 运行 redis 并加载 自定义配置文件第〇步:修改自定配置第一步:仅启动容器,不运行redis第二步:检查容器是否运行成功第三步:进入到容器内部第四步:运行redis-cli 和 redis-cli –p 6380 检查Redis是没有运行的第五步:运行redis 并加载自定义配置文件第六步:检查自定义配置是否生效
2020-04-20 11:28:34
723
2017-10月份最全手机号归属地查询 txt 360570
2017-12-14
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人