MySQL的死锁系列- 锁的类型以及加锁原理

疫情期间在家工作时,同事使用了 insert into on duplicate key update 语句进行插入去重,但是在测试过程中发现了死锁现象: ERROR 1213 (40001): Deadlock found when trying to get lock; try restarting transaction 由于开发任务紧急,只是暂时规避了一下,但是对触发死锁的原因和相关原理不甚了解,于是这几天一直在查阅相关资料,总结出一个系列文章供大家参考。本篇是上篇,主要介绍 MyS
分类: 其他 发布时间: 04-01 22:50 阅读次数: 0

刚度 强度 硬度 ——到底你再说啥?

刚度、强度和硬度都是材料的力学性能(或称机械性能)指标。为了理解三者的意义,我们首先要知道: 弹性变形——当外力去掉后能恢复到原来的形状和尺寸的变形。 塑性变形——当外力去掉后不能恢复到原来的形状和尺寸的变形。 那么,再来理解刚度、强度和硬度,就比较容易了: 刚度——金属材料在受力时抵抗弹性变形的能力。 强度——金属材料在外力作用下抵抗塑性变形和断裂的能力。 硬度——金属材料抵抗更硬的物体压入其内的能力。 其实,三者之间没有必然的联系,不过,硬度是一项综合力学性能指标,一般:硬度高的材料,其强
分类: 其他 发布时间: 04-01 22:50 阅读次数: 0

【TCP/IP】入门学习笔记 六 - TCP/IP 协议系统之 传输层

专业术语 ACK:一个控制标记,表示TCP报头中“确认号”字段是有意义的。 “确认号”字段:TCP报头中的一个字段,表示计算机准备接收的下一个序列号。它实际上确认了之前的全部顺序字节的接收。 主动打开:TCP尝试发起一个连接时的状态。 面向连接的协议:通过在通信计算机之间建立连接来管理通信的协议。 无连接的协议:不与远程计算机建立连接就进行通信的协议。 控制标记:1位标记,表示关于TCP数据分段的特殊信息。 多路分解:把一路输入导向多个输出。 目的端口:目的计算机上的应用程序所使用的TCP或U
分类: 其他 发布时间: 04-01 22:50 阅读次数: 0

HDU6521 Party (线段树思维)

1.首先明确这道题想要求取的是在l-r中新认识的人的对数 如果想要知道新认识的人是多少,那么我们可能会考虑到上次认识的人的左右边界。并且可以想象到的是,在一个区间中,右边的人新认识的左边的人,其实就是左边的人新认识的右边的人 如果重复的计算,那么最后要/2。所以我们可以直接考虑有边界 2.有一个性质可以通过观察得到,也就是越往右的人的右边界一定大于等于左边的右边界,因为每次都是连续的一段区间,左边的人不可能绕过右边的人去认识更右边的人。所以这个维护的值是递增的 那么每次新认识的人其实就是找到最
分类: 其他 发布时间: 04-01 22:50 阅读次数: 0

http 带cookie值的Post请求(关联测试)

本文主要包含一下无点。 1、如何get请求如何获取cookie信息。 getCookieStore() 2、如何发送带cookie信息的post 请求。 setCookieStore(); HttpPost(); 3、testng依耐测试,带cookie信息的post请求需要依耐于获取cookie信息的get请求。 @Test(dependsOnMethods = {"getTestCookie"}) 4、如何使用moco框架构建带返回cookie信息的get请求和一个带cookie和json
分类: 其他 发布时间: 04-01 22:50 阅读次数: 0

go 基础 结构体

结构体是类型中带有成员的复合类型。go语言使用结构体和结构体成员来描述真实世界的实体和实体对应的各种属性。 go语言中的类型可以被实例化,使用new和&构造类型实例的类型是类型的指针。 结构体成员是由一系列成员变量构成,成员(字段)有以下属性: 字段名称唯一; 拥有类型和值; 成员的类型可以是结构体,甚至是字段所在结构体的类型。 go不支持”类“的概念,也不支持"继承"面向对象的概念。 go 语言不仅认为结构体能拥有方法,且每种自定义类型也可以有自己的方法。 在函数外部定义结构体,作用域是全局
分类: 其他 发布时间: 04-01 22:50 阅读次数: 0

中小型企业做网络营销推广的方法有哪些?

瞬息万变的互联网时代,与互联网脱轨的企业注定会出局。拥抱互联网,才能拥抱企业发展的新可能。那么目前切实有效的网络营销推广方法有哪些呢? 1、搜索引擎营销 目前搜索引擎营销仍然是全网营销常用的推广手段之一。搜索引擎推广分作两种,一种是SEM(搜索引擎竞价广告),另一种是SEO(搜索引擎优化)。简单来说就是一个花钱,一个不花钱。对于建站初期的企业来说,没有关键词排名的情况下,SEM可以解决这个问题,但见效快的同时SEM成本也较高。相反,SEO具有周期长、速度慢、成本低、效果持久的特点。当然,对于有
分类: 其他 发布时间: 04-01 22:50 阅读次数: 0

servlet的之前与之后的基本使用

参见:https://www.cnblogs.com/xdp-gacl/p/4010328.html
分类: 其他 发布时间: 04-01 22:50 阅读次数: 0

接口测试常见面试题

网络模型 OSI有哪几层,分别包含哪些协议? 上三层 应用层 应用层 HTTP,FTP,SMTP,SSH 表示层 会话层 SSL 下四层 网络层 传输层 TCP/UDP 网络层 IP 数据链路层 物理层 协议 TCP,UDP的区别? 面向连接和无连接 资源耗费 UDP程序结构简单 流模式与数据报模式 确保数据正确性 TCP如何确保可靠传输? 确认和重传 数据校验 合理分片和排序 流量控制 拥塞控制 三次握手与四次挥手? 三次握手 请求连接 -> 服务端确认 -> 客户端确认 四次挥手 请求断开
分类: 其他 发布时间: 04-01 22:50 阅读次数: 0

数组和链表的区别,增删查改这些情况用哪个更好

数组是将元素在内存中连续存储的; 优点:因为数据是连续存储的,内存地址连续,所以在查找数据的时候效 率比较高; 缺点:在存储之前,我们需要申请一块连续的内存空间,并且在编译的时候就必须确定好它的空间的大小。在运行的时候空间的大小是无法随着你的需要进行增加和减少而改变的,当数据两比较大的时候,有可能会出现越界的情况,数据比较小的时候,又有可能会浪费掉内存空间。在改变数据个数时,增加、插入、删除数据效率比较低链表是动态申请内存空间,不需要像数组需要提前申请好内存的大小, 链表只需在用的时候申请就可
分类: 其他 发布时间: 04-01 22:50 阅读次数: 0

常见CTF中CSP绕过总结

0x00 前言 又看了一天的CSP,终于差不多理顺了。稍微总结一下,上一篇那么好的文章好像被和谐了。。明天的话开始学习一波反序列漏洞,先过一遍tp开发手册,然后去审tp框架吧。代码审计也得快点捡起来了。 比赛中常见的绕过 CSP 目前在比赛中常见的绕过 CSP 一般是: script-src 'self' 'unsafe-inline' script-src 'self' 'unsafe-eval' script-src 'nonce-*' xx-src self script-src
分类: 其他 发布时间: 04-01 22:50 阅读次数: 0

高并发高可用系统以及面试分析

1.高并发,高可用系统的一些思考 高并发依赖于场景和逻辑 不一定每个场景都会产生高并发,不要为了高并发而盲目的设计,过度设计带来 的问题远比意料之外的高并发要多很多,依赖于具体场景和行为进行分析,一个 购物类网站,抢购场景,会触发很多的读取商品详情,计算库存等操作,而且不 需要每个请求都到达支付页面,也不会在网站主页带来很多的请求,所以需要针 对抢购场景进行优化,而不是巨大的支付流程进行优化,当然商品数量多和用户 多的情况,才需要也优化一下支付流程。 抛开场景,不谈流量的盲目高并发设计,一般是
分类: 其他 发布时间: 04-01 22:50 阅读次数: 0

推荐几个jetbrains全家桶好用的插件,同时作为备忘

推荐几个jetbrains全家桶好用的插件,同时作为备忘 我这里是用了:CLion PyCharm GoLand,理论上所有jetbrains其他IDE也可以 Material Theme UI 主题插件,很多主题可以选,一个好看的界面可以大幅提升编码效率! Quick File Preview 单击文件即可打开预览,类似VSCode,再也不用双击打开文件了。 CodeGlance 类似VSCode的预览滚动条 String Manipulation 快速转换代码命名风格,如转换大小写,驼峰变
分类: 其他 发布时间: 04-01 22:50 阅读次数: 0

ZJOI2018 树

分类: 其他 发布时间: 04-01 22:50 阅读次数: 0

Linux常用的命令收藏

摘要 Linux现在已经是大部分草根站长不可缺少的一部分,想要维护好你的网站就必须懂得常用的linux命令,这个可以加快你对服务器的维护,运营;同时Linux在嵌入式系统开发中有不可替代的优势,越来越多的年轻人已经青睐Linux环境下嵌入式功能的开发。 常用指令 ls   显示文件或目录 -l 列出文件详细信息l(list) -a 列出当前目录下所有文件及目录,包括隐藏的a(all) mkdir 创建目录 -p 创建目录,若无父目录,则创建p(parent) cd 切换目录 touch 创建空
分类: 其他 发布时间: 04-01 22:50 阅读次数: 0

【C++】find函数的两种不同类型

find 主要有两种find。 第一种为C++头文件中的函数,这种函数find格式如下: find(start,end,val); 如果查找到了,会返回元素的引用或者指针,而不是返回下标,因为为了兼顾不同的数据结构,可能有的不是按照地址顺序存储的。 //容器写法: find(a.begin(),a.end(),val); //如果查找失败返回a.end() //数组 find(a,a+lengh,val); 第二种为容器的成员函数 例如string ,返回的为下标值。若
分类: 其他 发布时间: 04-01 22:50 阅读次数: 0

《C++11/14高级编程Boost程序库探秘》之第1章全新的C++语言(二)学习记录

《C++11/14高级编程Boost程序库探秘》之第1章全新的C++语言(二) 1.4面向过程编程 1.4.1空指针 nullptr明确表示空指针概念,可以完全替代NULL,它可以隐式转化为任意类型的指针,也可以与指针进行比较运算,但决不能转化为非指针的其他类型。比如,10>=nullptr会提示编译错误,不能与整数等类型进行运算。 在编写代码时,应总使用nullptr来初始化或比较指针,尽量避免使用NULL宏。 1.4.3新式for循环 [root@localhost C++11]# cat
分类: 其他 发布时间: 04-01 22:50 阅读次数: 0

前端笔记 2020.4.1 (nodejs文件读写、最简nodejs搭建http服务器,数据转型)

nodejs文件读写: //读取文件流 function readStream(){ var fs=require("fs"); var data=""; var readerStream=fs.createReadStream("input.txt"); readerStream.setEncoding("utf-8"); readerStream.on("data",function(chunk){ data+=chunk;
分类: 其他 发布时间: 04-01 22:50 阅读次数: 0

腾讯云服务器的搭建

因为项目上的需要,似乎需要一个服务器,emmmmm不管反正先搞一个,反正只要便宜,就可以直接报销,几百块的经费在那不用白不用啊。显示想到了阿里云,去逛了一眼,但是好像没看见学生机(可能和ladder有关系?),想想还是用腾讯云吧,上次随手买了个域名,绑定一下多好就可以直接外网访问了。而且最重要的是有学生机,10r/月不要太香,赶紧过去搞了一年。 Ubuntu自带ssh,直接连上去就好了,我用的Remmina,反正也是自带的软件,看上去差不多,就是配色方案是在是不太行,将就一下吧,配置服务器才是
分类: 其他 发布时间: 04-01 22:50 阅读次数: 0

蓝猫微会视频会议系统在医疗行业的应用优势

我国目前不同地区的医疗水平并不均衡,在不发达的地区人们很难享受到一线城市发达的医疗技术,患者无法在第一时间获得最好的治疗方案。但随着视频会议逐渐深入各行各业,帮助企业提高效率节约成本的同时,也为医疗行业开起来一盏明灯。尤其是在疫情期间,线上问诊和医疗行业学习和交流的需求明显增强,蓝猫微会已为医疗机构和公立医院提供多套解决方案和落地实施。 为患者开启绿色通道 通过远程会诊,专家能够及时的查看病人的病历、救治过程等,综合分析之后可以讨论出最合适的治疗方案,不仅省力省时,而且不会错过最佳的治疗时间。
分类: 其他 发布时间: 04-01 22:50 阅读次数: 0