![](https://img-blog.csdnimg.cn/20190918140053667.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
杂乱无章
文章平均质量分 83
学习
成长的小牛233
一个很菜,仍然热爱技术热爱生活的程序猿
展开
-
管理实践-教练技术的应用
文章目录简介课程学习的工具总结深度倾听3R原则倾听地图:开放式提问层次提问和SMART提问框架BIA积极性反馈GROW模型简介最近在参加管理培训课程,学习《教练式指导》一课,现将内容总结分享一下。课程学习的工具总结深度倾听3R原则工具使用场景:适用于倾听他人谈话时,如何深入倾听对方诉求,理解对方的情绪、情感和需求。注意点:深度倾听注意的3R原则使用注意要点1.Rreceive(接收):放下自己的想法和判断,一心一意的聆听别人,并观察对方表现出的信息。2.Respond(反应):使用肢体和原创 2022-04-04 22:56:52 · 1626 阅读 · 0 评论 -
Docker 部署java服务
Docker作业预留Docker作业预留Docker作业预留原创 2020-10-11 00:38:56 · 435 阅读 · 0 评论 -
Elasticsearch Java Low Level REST Client(通用配置)
Elasticsearch Java Low Level REST Client(通用配置)通用配置正如初始化中所解释的,RestClientBuilder支持提供RequestConfigCallback和HttpClientConfigCallback,它们允许Apache Async Http Client公开的任何自定义。这些回调可以修改客户端的某些特定行为,而不会覆盖RestClient初始化的所有其他默认配置,本节介绍一些需要为低级别Java REST Client进行其他配置的常见方案转载 2020-10-10 12:06:40 · 1062 阅读 · 0 评论 -
Solr实战篇
1.在MySQL数据中建立lagou_db数据库, 将position.sql中的数据导入到mysql 数据中。2.使用Solr的DIH 将mysql中的数据导入到Solr中。3.使用SpringBoot 访问Solr 使用positionName 字段检索职位信息 如果检索到的职位信息不够5条 则需要启用positionAdvantage 查找 美女多、员工福利好 的企业职位信息进行补充够5条。依赖包:<?xml version="1.0" encoding="UTF-8"?&g原创 2020-10-09 18:50:38 · 1563 阅读 · 1 评论 -
常见压缩算法学习
文章目录无损压缩算法理论基础信息熵熵编码字典编码综合通用无损压缩算法相关常见名词说明java对几种常见算法实现Snappydeflate算法Gzip算法huffman算法Lz4算法Lzo算法使用方式无损压缩算法理论基础信息熵信息熵是一个数学上颇为抽象的概念,在这里不妨把信息熵理解成某种特定信息的出现概率(离散随机事件的出现概率)。一个系统越是有序,信息熵就越低;反之,一个系统越是混乱,信息熵就越高。信息熵也可以说是系统有序化程度的一个度量。熵编码:根据消息中每个符号出现的概率,然后通过某种映射原创 2020-09-25 13:54:40 · 4860 阅读 · 0 评论 -
基于rocketMq秒杀系统demo
作业描述:基于RocketMQ设计秒杀。要求:1.秒杀商品LagouPhone,数量100个。2.秒杀商品不能超卖。3.抢购链接隐藏4.Nginx+Redis+RocketMQ+Tomcat+MySQL实现接口说明:https://www.liuchengtu.com/swdt/#R9f978d0d00ef9be99f00258c3035b648实现代码:订单接口:package com.lagou.roc...原创 2020-09-23 21:52:31 · 1449 阅读 · 0 评论 -
RabbitMQ TTL、死信队列在订单支付场景的应用
生产者:配置类package com.lagou.config;import org.springframework.amqp.core.*;import org.springframework.context.annotation.Bean;import org.springframework.context.annotation.Configuration;import java.util.HashMap;import java.util.Map;/** * @Date 2020原创 2020-08-28 17:49:25 · 1020 阅读 · 0 评论 -
mysql搭建手册
mysql搭建手册主从搭建搭建mysql关闭防火墙:systemctl stop firewalld 如果失败先安装 yum install iptables-services配置数据库 /etc/my.cnf,配置同步数据库等主库配置信息[mysqld]datadir=/usr/local/mysql/datalog-error=/usr/local/mysql/data/error.logport = 3306sql_mode=NO_ENGINE_SUBSTITUTI原创 2020-06-18 23:36:50 · 199 阅读 · 0 评论 -
MySQL学习笔记
MySQL学习1.InnoDB和MyISAM对比事务和外键innoDb支持事务和外键,具有安全性和完整性,适合大量insert或update操作MyISAM不支持事务和外键,它提供高速存储和检索,适合大量的select查询操作锁机制InnoDB支持行级锁,锁定指定记录。基于索引来加锁实现。MyISAM使用非聚簇索引(非聚簇索引),索引和记录分开索引结构InnoDB使用聚集索引(聚簇索引),索引和记录在一起存储,即缓存索引,也缓存记录MYISAM使用非聚集索引(非聚集索引),索原创 2020-06-18 23:29:32 · 188 阅读 · 0 评论 -
【转载保存】dubbo学习笔记
DubboDubbo简介首先,我理解的Dubbo,从大的方向来看是单体应用到分布式应用过度期的一个产物,具体来说应该是分布式应用从早期的SOA到微服务过度的一个产物。在编写分布式场景下高并发、高扩展的系统对技能的要求很高,因为这个过程会涉及到序列化/反序列化、多线程、网络编程、设计模式、性能优化等众多专业知识。而Dubbo框架对这些专业知识做了更高层的抽象和封装,提供了开箱即用的特性。所以换句话说Dubbo是为了解决大流量、高并发场景下提供高可用、提升系统性能的这样一个服务治理方案,也是优秀的RPC框原创 2020-05-14 15:26:45 · 201 阅读 · 0 评论 -
zookeeper学习总结
一、介绍轻量级集群框架,协同服务,保证高可靠、高可用,集中式服务,用于配置信息,名称服务,分布式同步处理树形层次结构,znode,动物管理员二、zk组件client 向server周期性的发送消息,表明自己还活着,server向client回应确认消息,client没有收到回应,自动重定向消息到其他serverserver 一个zk节点,向client提供所有服务,通知client ,se...原创 2020-04-29 23:09:55 · 215 阅读 · 0 评论 -
什么叫死锁?死锁案例?死锁必须满足哪些条件?如何定位死锁问题?有哪些解决死锁策略?哲学家问题?
死锁是什么?死锁一定发生在并发环境中,死锁是一种状态,当两个(或者多个线程)相互持有对方所需要的资源,却又都不主动释放手中持有的资源,导致大家都获取不到自己想要的资源,所有相关的线程无法继续执行。死锁案例import java.util.concurrent.ExecutorService;import java.util.concurrent.Executors;/** * @au...原创 2020-04-28 11:07:50 · 485 阅读 · 0 评论 -
分布式学习-总结
分布式理论分布式系统定义以及面临的问题分布式系统定义分布式系统是一个硬件或软件组件分布在不同的网路计算机上,彼此之间仅仅通过消息传递进行通信和协调的系统。分布式面临的问题通信异常由于网络本身的不可靠性,出现消息丢失、消息延迟网络分区由于网络发生异常情况,导致分布式系统中部分节点之间的网络延迟不断增大,最终导致组成分布式系统中有部分节点能够正常通信,网络之间出现了网络不连通,但各...转载 2020-04-21 22:18:47 · 2002 阅读 · 1 评论 -
分布式集群架构场景解决方案学习笔记
课程学习一致性哈希算法 集群时钟同步问题 分布式ID解决方案 分布式任务调度问题 session共享(一致性)问题一致性哈希算法一致性哈希算法在1997年由麻省理工学院的Karger等人在解决分布式Cache中提出的,设计目标是为了解决因特网中的热点(Hot spot)问题,初衷和CARP十分类似。一致性哈希修正了CARP使用的简单哈希算法带来的问题,使得DHT可以在P2P环境中...原创 2020-04-12 23:20:38 · 292 阅读 · 0 评论 -
本地缓存之LIFO、LRU、FIFO、LFU实现
LRU算法全称 The Least Recently Used,最近最久未使用算法,是一种常见的缓存算法,在很多分布式缓存系统(Redis、Memcached等)使用。算法核心如果一个数据在最近一段时间没有被访问到,那么可以认为在将来它被访问的可能性也很小。当缓存满时,将最久未使用的数据置换掉,也就是首先淘汰最长时间未被使用的。实现最简单做法是用数组+时间戳,不过效率太低,因此我们用双向链表LinkedList + HashMap 实现(链表用来表示位置,哈希表用来存储和查找),在Java中对应原创 2020-08-04 13:51:22 · 1095 阅读 · 0 评论 -
本地缓存之Guava简单使用
使用场景随着互联网用户越来越多,并发量、吞吐量越来越大数据库存储原创 2020-08-03 16:24:44 · 1257 阅读 · 0 评论 -
教你如何使用redis分布式锁
方法一:利用set nx命令实现分布式锁 Jedis jedis = new Jedis("127.0.0.1", 6309); public boolean getLock(String lockKey, String requestId, int expireTime) { //NX:保证互斥性 //hset 原子性操作 只要lockKey有效 则说明有进程在使用分布式锁 // key:lockKey value:requestId N原创 2020-07-31 16:45:05 · 983 阅读 · 1 评论 -
如何利用redis实现秒杀系统
利用Watch实现Redis乐观锁乐观锁基于CAS(Compare And Swap)思想(比较并替换),是不具有互斥性,不会产生锁等待而消耗资源,但是需要反复的重试,但也是因为重试的机制,能比较快的响应。因此我们可以利用redis来实现乐观锁。具体思路如下:利用redis的watch功能,监控这个redisKey的状态值获取redisKey的值创建redis事务给这个key的值+1然后去执行这个事务,如果key的值被修改过则回滚,key不加1场景:开启20个线程,模拟100个用户秒杀原创 2020-07-30 13:31:56 · 734 阅读 · 0 评论 -
为什么是先更新数据库再删除缓存,而不是更新缓存?
一开始看很多人说更新数据库后删除缓存,然后有人说是更新缓存时需要遍历list或者hash查找导致慢,我!@#&((&(&^%&%&m&*&()&,然后百度一堆。。。。。。。,然后用Bing搜索找到了想要的结果,就想着总结一下开始正文!业务场景编辑新建了一篇新闻,在数据库news表中存储新闻信息,但是客户端查询新闻到缓存的时候会关联多个表,有评论信息、浏览量、点赞、点击量等等,如果在数据添加新闻后,然后为了更新缓存查出这么多信息再插入,岂原创 2020-07-29 19:37:58 · 2616 阅读 · 3 评论 -
redis主从搭建和分片集群搭建
redis主从搭建目标搭建一主一从:下载安装redis:两台机器都需要操作redis下载地址 https://redis.io/downloadtar -zxvf redis-5.0.5.tar.gzmv redis-5.0.5 redismakecd redis/srcmake installcd ..mkdir binmv src/redis* bin/修改master redis.conf:#开启守护线程,后台启动daemonize yes # 开启远程访问bin原创 2020-07-27 21:59:03 · 449 阅读 · 0 评论 -
FastDFS学习笔记
FastDFS课程内容第一部分:FastDFS基础回顾为什么要有分布式文件系统、分布式文件系统对比、FastDFS特性、linux安装、java访问FastDFS第二部分:FastDFS系统架构和功能原理架构详解、架构设计的概念、设计理念、功能原理(上传、下载、文件同步、删除、断点续传、http访问)第三部分:FastDFS集群和配置优化如何搭建FastDFS集群、配置优化对于的参数第四部分:FastDFS项目实战SpringBoot访问FastDFS集群、业务场景中如何使用...原创 2020-07-07 14:24:10 · 192 阅读 · 0 评论 -
MongoDb安装配置
Mongodb学习Mongodb安装1.下载社区版 MongoDB 4.1.3去官网下载对应的MongoDB 然后上传到Linux虚拟机2.将压缩包解压即可tar -zxvf MongoDB-linux-x86_64-4.1.3.tgz3.启动mkdir -p /data/db./bin/mongod4.指定配置文件方式的启动配置文件样例:dbpath=/data/mongo/port=27017bind_ip=0.0.0.0fork=truelogpat =/data/原创 2020-07-01 11:43:47 · 143 阅读 · 0 评论 -
Neo4j学习笔记
任务:绘制关系图常用指令创建表:CREATE (person:Person)添加数据节点:CREATE (person:Person {cid:1,name:"范闲",age:24,character:"A",money:10000})CREATE (person:Person {cid:2,name:"林婉 儿",age:20,gender:1,character:"B",money:800});CREATE (person:Person {cid:3,name:"庆 帝",age原创 2020-06-30 19:02:49 · 207 阅读 · 0 评论