代码改变世界

多线程高并发整套学习笔记(含源码)

2020-05-02 19:29 by hikoukay, 385 阅读, 0 推荐, 收藏, 编辑
摘要:一,基础概念 什么是线程 进程里最小的执行单元,程序里不通的执行路径 线程实现 继承thread 实现runnable 实现callable 用过线程池创建 ExecutorServices=Executors.newCachedThreadPool(); s.execute(()->{System 阅读全文

求一个范围内的质数或判断一个数是不是质数

2020-05-02 10:50 by hikoukay, 293 阅读, 0 推荐, 收藏, 编辑
摘要:package com.koukay.test; import java.util.ArrayList; import java.util.List; /** * 质数大于1的自然数,并且只能被1和它本身整除 */ public class T100_TestPrime { public stati 阅读全文

观察者模式

2020-04-28 13:35 by hikoukay, 197 阅读, 0 推荐, 收藏, 编辑
摘要:个人理解,观察者模式就是在一个事件触发之后观察者们做系列操作 1.定义一个接口,多个观察者都实现该接口重写其方法 2.在被观察的对象里定义一个观察者容器,当事件触发,一次执行每个观察者的操作方法 3.测试类里面测试,实例化孩子类(Child1),调用孩子醒了的方法(wakeUp()),运行结果 da 阅读全文

redis如何实现数据同步

2020-04-28 13:02 by hikoukay, 12621 阅读, 1 推荐, 收藏, 编辑
摘要:redis如何实现数据同步 两种,1全同步,2部分同步 全备份: 在slave启动时会向master发送sync消息,master收到slave这条消息之后,将启动后台备份进程,备份完成之后,将备份数据发送给slave 全备份机制 1.slave向master发送SYNC指令,master接收到该指 阅读全文

mysql调优学习笔记

2020-04-26 01:33 by hikoukay, 232 阅读, 0 推荐, 收藏, 编辑
摘要:性能监控 使用show profile查询剖析工具,可以指定具体的type 此工具默认是禁用的,可以通过服务器变量在绘画级别动态的修改 set profiling=1; 当设置完成之后,在服务器上执行的所有语句,都会测量其耗费的时间和其他一些查询执行状态变更相关的数据。 select * from 阅读全文

介绍一个好用的dao层与mybatis互跳的idea插件MyBatisCodeHelperPro

2020-04-23 23:04 by hikoukay, 852 阅读, 0 推荐, 收藏, 编辑
摘要:一次点击 File--> Settings --> Plugins -->搜索MyBatisCodeHelperPro,点击获取,重启idea即可 接下来看效果,点击小企鹅就可以相互跳转了 阅读全文

springboot执行流程

2020-01-07 23:44 by hikoukay, 1493 阅读, 1 推荐, 收藏, 编辑
摘要:构造方法初始化,创建一个新的实例,这个应用程序的上下文要从指定的来源加载bean public SpringApplication(ResourceLoaderresourceLoader,Class<?>...primarySources){ this.sources=newLinkedHashS 阅读全文

zookeeper

2019-12-28 20:17 by hikoukay, 241 阅读, 0 推荐, 收藏, 编辑
摘要:一,前言 与redis的联系 redis 单实例,数据在内存-读取快 鉴于雪崩击穿等问题 ->复制到集群 HA sentinel 哨兵实现高可用 不是绝对的实时同步,可能连最终一致性都算不上 集群模式 分片 完成分布式 协调分布式锁 二,zookeeper(不要把zk当做数据库用) 主从集群 主是单 阅读全文

redis击穿,穿透,雪崩,分布式锁,api(jedis,luttuce)

2019-12-28 00:59 by hikoukay, 401 阅读, 0 推荐, 收藏, 编辑
摘要:击穿:(redis做缓存用,肯定发生了高并发,到达数据库查询) 设置key 的过期时间,过期后没有这个key,找不到了,就穿过了(其中一个key过期导致并发访问数据库) LRU (LRU,即:最近最少使用淘汰算法(Least Recently Used)。LRU是淘汰最长时间没有被使用的页面。) L 阅读全文

Java创建数据库新建表及初始化表

2019-10-22 11:21 by hikoukay, 14456 阅读, 0 推荐, 收藏, 编辑
摘要:方法一 package com.crt.openapi; import java.sql.DriverManager; import java.sql.ResultSet; import java.io.InputStreamReader; import java.nio.charset.Chars 阅读全文