09 2020 档案
摘要:https://blog.csdn.net/weixin_45225595/article/details/106203264
阅读全文
摘要:在MYSQL的RR隔离级别下, MYSQL也解决了幻读的问题。 主要是依靠两个特性解决的, 一个是MVCC(一致性快照) 一个是间隙锁。 MVCC如何解决幻读 begin select count(*) from table where id >10 ...... 一系列的其他操作 ...... s
阅读全文
摘要:ThreadLocal主要有如下2个作用(在之前文章的基础上加了新内容) 保证线程安全 在线程级别传递变量 保证线程安全 最近一个小伙伴把项目中封装的日期工具类用在多线程环境下居然出了问题,来看看怎么回事吧 日期转换的一个工具类 public class DateUtil { private sta
阅读全文
摘要:TCP、Socket、WebSocket、HTTP 悬壶丈人 文艺的程序员,行走的歌者…… 关注他 10 人赞同了该文章 0、为什么需要WebSocket? Browser已经支持http协议,为什么还要开发一种新的WebSocket协议呢?我们知道http协议是一种单向的网络协议,在建立连接后,
阅读全文
摘要:http、TCP/IP协议与socket之间的区别下面的图表试图显示不同的TCP/IP和其他的协议在最初OSI模型中的位置:7 应用层 例如HTTP、SMTP、SNMP、FTP、Telnet、SIP、SSH、NFS、RTSP、XMPP、Whois、ENRP 6 表示层 例如XDR、ASN.1、SMB
阅读全文
摘要:图解TCP/IP详解(史上最全) 一、OSI参考模型 1.图示 2.OSI七层模型各自作用 应用层 为应用程序提供服务并规定应用程序中通信的相关细节。包括文件传输、电子邮件、远程登录等协议。 表示层 将应用处理的信息转换为适合网络传输的格式,或将来自下一层的数据转换为上层能够处理的格式。因此它主要负
阅读全文
摘要:如何保证外网开放接口的安全性。 使用加签名方式,防止数据篡改 信息加密与密钥管理 搭建OAuth2.0认证授权 使用令牌方式 搭建网关实现黑名单和白名单 一令牌方式搭建搭建API开放平台 方案设计: 1第三方机构申请一个appId,通过appId去获取accessToken,每次请求获取access
阅读全文
摘要:IDEA使用Git出现push to origin/master was rejected错误解决方案 在IDEA中配置码云的URL,如下图 切换到自己项目所在的目录,右键选择GIT BASH Here 在terminl窗口中依次输入命令: git pull git pull origin mast
阅读全文
摘要:1.设置header Content-Type application/json 2.body设置,需要三个
阅读全文
摘要:首先,是IDEA本身的问题,我这个程序是可以正常运行起来的,而这个studentMapper的Bean是存在的,并且可以自动注入 所以有强迫症的可以网上查找,如何取消该红色的错误提示,这里就不提供方案了。 这是我的DAO的注解,注意我使用的是@Mapper,后面会讲解@Repository 这是我的
阅读全文
摘要:在pom.xml里添加devtools依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> <optional>true</optional>
阅读全文
摘要:现在很流行springboot的开发,小编闲来无事也学了学,开发过程中遇见了log4j日志的一个小小问题,特此记载。 首先在pox.xml中引入对应的maven依赖: <!-- 引入log4j--> <dependency> <groupId>org.springframework.boot</gr
阅读全文
摘要:Zookeeper客户端Curator使用详解 前提 维护多个博客比较麻烦,简书和博客园放弃维护,后续在个人博客持续更新: coding-page:Zookeeper客户端Curator使用详解 github-page:Zookeeper客户端Curator使用详解 简介 Curator是Netfl
阅读全文
摘要:分布式锁的应用 分布式锁服务宕机, ZooKeeper 一般是以集群部署, 如果出现 ZooKeeper 宕机, 那么只要当前正常的服务器超过集群的半数, 依然可以正常提供服务 持有锁资源服务器宕机, 假如一台服务器获取锁之后就宕机了, 那么就会导致其他服务器无法再获取该锁. 就会造成 死锁 问题,
阅读全文
摘要:其实在学之前我也有个疑虑,我为啥要学curator,撇开涨薪这些外在的东西,就单技术层面来讲,学curator能帮我做些什么?这就不得不从zookeeper说起,上篇我已经大篇幅讲了zk是做什么的了,但真正要靠zk去实现多服务器自动拉取更新的配置文件等功能是非常难的,如果没有curator,直接去写
阅读全文
摘要:一、分布式锁介绍 分布式锁主要用于在分布式环境中保护跨进程、跨主机、跨网络的共享资源实现互斥访问,以达到保证数据的一致性。 二、架构介绍 在介绍使用Zookeeper实现分布式锁之前,首先看当前的系统架构图 解释: 左边的整个区域表示一个Zookeeper集群,locker是Zookeeper的一个
阅读全文
摘要:相信大家对 ZooKeeper 应该不算陌生,但是你真的了解 ZooKeeper 是什么吗?如果别人/面试官让你讲讲 ZooKeeper 是什么,你能回答到哪个地步呢? 我本人曾经使用过 ZooKeeper 作为 Dubbo 的注册中心,另外在搭建 Solr 集群的时候,我使用到了 ZooKeepe
阅读全文
摘要:(1)在机器上安装JDK环境(略) (2)从ZooKeeper官网下载ZooKeeper( http://zookeeper.apache.org/releases.html#download ) 这里我下载的是zookeeper-3.3.6.tar.gz。 下载完成后解压缩,这里我本地放的路径是D
阅读全文
摘要:Spring Cloud 组件: spring 和 Alibaba 组件图: 1.Eureka: 自我保护机制: Eureka Server: 主控制类 使用 @EnableEurekaServer 注解 Eureka client: 主控制类 使用 @EnableEurekaClient 注解 负
阅读全文
摘要:第一种方式: package mianshi.Thread; /** * 2个线程 循环打印 abab * 实现1: * note: 2个线程操作 Work类, work类里面 实现互斥的 2个打印方法 A B。 2个线程各自调用A,B */ public class ThreadA { publi
阅读全文
摘要:1.Rabbitmq 消息丢失怎么解决 https://www.cnblogs.com/flyrock/p/8859203.html Spring mvc运行过程 2.Springboot自动配置原理 springboot主程序的@SpringBootApplication注解其实是个组合注解,他包
阅读全文
摘要:什么是索引? 一个索引是存储的表中一个特定列的值数据结构(最常见的是B-Tree)。索引是在表的列上创建。所以,要记住的关键点是索引包含一个表中列的值,并且这些值存储在一个数据结构中。请记住记住这一点:索引是一种数据结构。 因此,首先你要明白的一点就是,索引它也是一个文件,它是要占据物理空间的。这个
阅读全文
摘要:什么是连接池 数据库连接池负责分配、管理和释放数据库连接,它允许应用程序重复使用一个现有的数据库连接,而不是再重新建立一个。 为什么要使用连接池 数据库连接是一种关键的有限的昂贵的资源,这一点在多用户的网页应用程序中体现得尤为突出。 一个数据库连接对象均对应一个物理数据库连接,每次操作都打开一个物理
阅读全文
摘要:MySQL常用存储引擎的锁机制 MyISAM和MEMORY采用表级锁(table-level locking) BDB采用页面锁(page-level locking)或表级锁,默认为页面锁 InnoDB支持行级锁(row-level locking)和表级锁,默认为行级锁 InnoDB和MyISA
阅读全文
摘要:https://www.zhihu.com/question/20794107
阅读全文
摘要:参考: https://javadoop.com/post/design-pattern
阅读全文
摘要:1.调整VM配置文件 -Xms128m, 16 G 内存的机器可尝试设置为 -Xms512m(设置初始的内存数,增加该值可以提高 Java 程序的启动速度。 ) -Xmx750m, 16 G 内存的机器可尝试设置为 -Xmx1500m(设置最大内存数,提高该值,可以减少内存 Garage 收集的频率
阅读全文
摘要:工作中多人使用版本控制软件协作开发,常见的应用场景归纳如下: 假设小组中有两个人,组长小张,组员小袁 场景一:小张创建项目并提交到远程Git仓库 场景二:小袁从远程Git仓库上获取项目源码 场景三:小袁修改了部分源码,提交到远程仓库 场景四:小张从远程仓库获取小袁的提交 场景五:小袁接受了一个新功能
阅读全文
摘要:1、导入项目 注意(导入顺序): 1、设置项目jdk file->project Structure->project->projeck sdk 2、配置maven仓库 file->setting->search maven->配置本地maven库 3、设置项目编码 file->setting->s
阅读全文
摘要:1,正常的push,只是在 Remote 那里填上 分支名:如 localBranchesC。
阅读全文
摘要:问题背景: 新项目还在开发阶段,没有正式对外发布,所以开发同事合并代码到develop上(或者其他名称分支上),而不是到master分支上 通过git拉取代码的时候,默认拉取的是master分支,如下图: 拉取指定分支代码解决方案: 以拉取develop分支的代码为例, 要拉取其余分支代码类似操作
阅读全文
摘要:接下来是使用tortoiseGIT 二、图解使用tortoiseGIT 这里只是做一些最基本的功能的演示: 创建版本库,提交(commit)文件,推送(push)文件,更新文件,创建分支。 简介:git属于分布式版本控制器,其实每个人的电脑都是一个完整的版本库;比如两个人在局域网写一个项目,那么这两
阅读全文
摘要:修改 网络
阅读全文
摘要:前言 作为一个软件开发人员,不可能不知道Git。Git作为一个复杂的版本控制系统,命令之多,即使经常使用,一些命令也记不住,一般只记住几个常用的命令,不是所有使用Git命令行都是高效的。本教程不讲Git命令,而是先让你用上git,再去学习git。本教程应该称作TortoiseGit入门指南。因为下面
阅读全文