自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(57)
  • 资源 (6)
  • 问答 (1)
  • 收藏
  • 关注

原创 mysql drop table 死锁

1.场景 mysql出现大量的drop table阻塞操作。

2023-09-08 19:59:04 353

原创 memcache

1.特性。

2023-06-05 19:08:36 115

原创 go语言汇编

go汇编

2023-03-14 21:51:18 279 1

原创 go 程序入口

go 程序入口

2023-03-14 19:35:43 192

原创 go 高效按照字符切割字符串

go 高效按照字符切割字符串

2023-03-09 19:56:23 178

原创 TCP的四次挥手

TCP挥手

2022-07-31 14:50:42 425

原创 tcp连接的细节

TCP连接

2022-07-31 14:14:15 491

原创 cookie and session

一:Cookie1.是什么?本质是存储客户端的有一定格式的文本数据,当访问服务器时,浏览器会自动把服务器返回的cookie全带上。但是每个cookie都有4kb的大小限制。每个域名或者ip下只能保存300个cookie2.为什么?经常结合session实现http会话。帮助服务器识别客户端信息。3.cookie的内容name:名称value:值domain:可以访问cookie的域名。如果不指定,默认为origin,不包含子域名。经常用于单点登录,在父域名登录,设置所

2022-03-27 11:14:59 144

原创 https CA自签证书

openssl genrsa -out rootca.key 4096openssl req -new -out rootca.csr -key rootca.keyCountry Name (2 letter code) [AU]:cnState or Province Name (full name) [Some-State]:szLocality Name (eg, city) []:szOrganization Name (eg, company) [Internet Widgits

2022-03-21 09:16:34 601

原创 http和https

一:http的不安全性http是超文本传输协议,使用的是明文传输,有可能被中途拦截窃听 可能被第三方恶意拦截篡改,替换发送报文或者返回异常报文(http劫持) 无法验证通信双方身份,有可能被伪装(dns劫持)二:https如何解决上述问题1.明文传输问题(加密)加密算法:对称性加密和非对称性加密,其中对称性加密性能好于非对称性加密。对称加密:使用公钥加密,使用公钥解密非对称加密:使用公钥加密,只有私钥能解密(使用私钥加密,所有公钥都能解密)(1):使用对称加密,公开..

2022-03-16 11:45:07 2393

原创 http基础之http发展史

对比http1.0短连接,有有限的缓存机制,后期集成了长连接,也有连接并发数限制http1.1:在连接上(使用了tcp长连接,存在tcp连接池子,后面该功能http1.0也集成支持了),connection:keep-alive/close,可减少创建来连接的时间在多路复用上(没实现流多路复用,但是支持管道),存在极限性,很多浏览器默认禁用该功能。通过增加tcp连接数,以减轻head-of-line的问题,但是出与减轻服务器负担和因为客户端的软硬件资源有限,浏览器限制了站点(域名..

2022-03-06 15:02:13 2728

原创 Session会话

Session会话1.cookie与session2.session的生命周期(2.1)server主动调用销毁的方法Session.invalidate()(2.2)设置会话超时时间3.cookie的两种存储方式(3.1)客户端磁盘(3.2)浏览器进程里面(也叫会话cookie,保存sessionId信息的cookie就保存在进程里面)4.啥时候session会话关闭(4.1)浏览器关闭的,在打开,发送相同的请求是不同的会话(4.2)浏览器同一.

2022-03-03 17:23:01 80

原创 浏览器的缓存机制

浏览器的缓存机制1是什么?把已经请求过一次的web资源(比如html页面,图片,js,data等),拷贝一份到浏览器缓存中。key=资源标识,value:数据。当下一次请求同样的资源一样,如果缓存数据没过期,会重缓存数据里面获取2:为什么?减少网络IO,减少宽带,降低服务器压力,响应更快,用户体验更好3.缓存的规则(1)新鲜度 优先级高于校验值在两种情况下会取缓存数据:(1.1)含有完整过期时间控制head信息,并且没有过期(1.2)浏览器已经使用过该缓存

2022-03-02 20:19:14 540 2

原创 http 基础知识

一:HTTP1.http状态码(1)分类(2)常见的http状态码(3)nginx 常用的http状态码最近了解下Nginx的Code状态码,在此简单总结下。一个http请求处理流程:一个普通的http请求处理流程,如上图所示:A -> client端发起请求给nginxB -> nginx处理后,将请求转发到uwsgi,并等待结果C -> uwsgi处理完请求后,返回数据给nginxD -> nginx将处理结果返回给客户...

2022-03-01 19:32:23 66

原创 tornado服务某个实例核吃满问题

tornado底层epoll陷入死循环,cpu100%该进程所有fd详情信息:其中fd对应信息如下所示4:tornado的epoll监听树的(epfd)句柄3:listen监听socket5:怀疑是gevent启动的epoll监听树的(epfd)句柄 lrwx------ 1 root root 64 Feb 22 15:42 0 -> /1lrwx------ 1 root root 64 Feb 22 15:42 1 -> /1lrwx------ 1 ...

2022-02-25 19:47:57 807

原创 计算机组成原理之系统总线

1系统总线的概念1.1:什么是总线? 连接各个部件的信息传输线1.2总线传输方式 (1)串行 (2)并行1.3总线结构(1)单总线:(2)面向CPU的双总线:(3)以存储器为中心的双总线2.总线的分类3.总线特性及性能指标4.总线结构5.总线控制...

2021-12-27 16:28:50 339

原创 计算机的基本组成2

计算机存储器:寄存器,缓存,主存,辅存现代的计算机,指令和数据主要都是存放在主存里面,缓存是加速用的。最终把数据加寄存器里面去。1.存储器的基本组成MAR:Memory AddressRegister,存储器地址寄存器反映存储单元的个数MDR:Memory Data Register, 存储器数据寄存器反映存储字长2.运算器的基本组成及操作过程3.控制器的基本结构3.1控制器的功能 (1)解释指令 (2)保证指令的按序执行3.2控制器的基本组...

2021-12-27 14:53:56 135

原创 计算机组成入门

1.红诺依曼体系计算机5部分(1)控制器,运算器,输入,输出,存储器2.框架图3.计算:ax^2 + bx + c假设现在数据都已经加载到内存(1)取x至运算器(累加器acc中,一种寄存器)(2)计算x^2在运算器中(3)乘以a在运算器中(4)运算结果放到存储器(内存)中(5)取b至运算器中(6)乘以x在运算器中(7)+ax^2在运算器中(8)+c在运算器中优化:优化了存储和时间(ax+b)x + c(1)取x至运算器中(2)计算ax.

2021-12-13 20:29:15 317

原创 kafka

1.kafka是什么

2021-07-19 09:53:52 166

原创 Linux系统结构

1.Linux内核的主要模块(1)进程调度(2)内存管理(3)虚拟文件系统(4)网络接口(5)进程间通信

2021-04-18 16:04:30 108

原创 linux网络编程之part1:GCC

1.概念:GCC:是Linux下编译命令的工具集,全程GNU Compiler Collection 的缩写,包含gcc2.gcc可支持的默认扩展名3.程序编译流程流程:预编译,编译和优化,汇编,链接,gcc把这四个步奏合成一个(1)预编译,将源文件的宏进行替换及将引用文件包含进源代码中(2)编译,汇编:将预编译后的源文件编译为汇编代码,在编译成机器可识别的二进制代码(3)链接:目标文件组合及相关库链接源文件:存放c,c++或者汇编的源代码文件目标文件:源..

2021-04-18 15:31:25 224

原创 通信协议

1.HTTP:web应用层网络通信协议,涉及概念1.资源2.媒体类型3.URL4.方法5.报文6.状态码2.HTTPS:https则是一种加密的超文本传输协议,它与HTTP在协议的本质上是一样的,多了一个“s”,差异就在于对数据传输的过程中,https对数据做了完全加密。3.REST和RESTfulRest:REST ( REpresentational State Transfer ),State Transfer 为 “状态传输” 或 “状态转移 ..

2021-04-11 22:13:11 82

原创 zookeeper

1.zookeeper出现的历史及其原因Zookeeper 最早起源于雅虎研究院的一个研究小组。在当时,研究人员发现,在雅虎内部很多大型系统基本都需要依赖一个类似的系统来进行分布式协调,但是这些系统往往都存在分布式单点问题。所以,雅虎的开发人员就试图开发一个通用的无单点问题的分布式协调框架,以便让开发人员将精力集中在处理业务逻辑上。2.zookeeper的作用(1)注册中心(2)分布式锁(3)负载均衡,集群扩展等......3.数据模型可以看出来非常向..

2021-04-01 21:50:19 145

原创 redis

redis:实际上是一个大map,数据模型为key,value,而且键值可以设置超时时间redis实现分布式锁:(1)方案1利用命令 : setNx key value存在key值则设置值,否则失败释放锁 del key获取A锁: setNx A "xxxxx"func GetLock(A string) bool { for { if redis.SetNx(A, "uuid") { return true ..

2021-04-01 20:02:57 54

原创 读写锁

读写锁规则:读写锁拥有两把锁,读锁和写锁。读写锁的特点是:同一时刻允许多个线程对共享资源进行读操作;同一时刻只允许一个线程对共享资源进行写操作;当进行写操作时,同一时刻其他线程的读操作会被阻塞;当进行读操作时,同一时刻所有线程的写操作会被阻塞。对于读锁而言,由于同一时刻可以允许多个线程访问共享资源,进行读操作,因此称它为共享锁;而对于写锁而言,同一时刻只允许一个线程访问共享资源,进行写操作,因此称它为排他锁阻塞试实现:共享资源:Atype A struct { ReadClient

2021-04-01 16:42:03 492

原创 CAS

CAS:CAS的全称为Compare-And-Swap,它是一条CPU并发原语。它的功能是判断内存某个位置的值是否为预期值,如果是则更改为新的值,这个过程是原子的。func CAS(old interface{}, new interface{}, expect interface{}) { if old == expect { update old to new } return 更新失败 }现在的CAS更多的是一种范称呼,指的是一种算法思想

2021-04-01 13:55:56 84

原创 初始zookeeper

1.zookeeper出现的历史及其原因Zookeeper 最早起源于雅虎研究院的一个研究小组。在当时,研究人员发现,在雅虎内部很多大型系统基本都需要依赖一个类似的系统来进行分布式协调,但是这些系统往往都存在分布式单点问题。所以,雅虎的开发人员就试图开发一个通用的无单点问题的分布式协调框架,以便让开发人员将精力集中在处理业务逻辑上。2.分布式协调比如一个电商系统有user服务,订单服务,商品服务构成,三个服务为了高可用都是集群部署。那么服务之间调用需要一个中间件统一管理。比如user服.

2021-01-31 18:17:28 93

原创 布隆过滤器原理和使用场景

1.什么是布隆过滤器百度的概念:布隆过滤器(Bloom Filter)是1970年由布隆提出的。它实际上是一个很长的二进制向量和一系列随机映射函数。布隆过滤器可以用于检索一个元素是否在一个集合中。它的优点是空间效率和查询时间都比一般的算法要好的多,缺点是有一定的误识别率和删除困难。2.优点相比于其它的数据结构,布隆过滤器在空间和时间方面都有巨大的优势。布隆过滤器存储空间和插入/查询时间都是常数。另外,Hash函数相互之间没有关系,方便由硬件并行实现。布隆过滤器不需要存储元素本身,在某些对..

2021-01-24 18:34:13 174 1

原创 面向对象

一:内存分配问题1.成员变量可以赋初值,不赋值系统自动赋默认值2.局部变量不赋初值不能使用,否则报错二:命名规则1:类名首字母大写2:方法和变量名的首字母小写3:使用驼峰标记(private int youngPeopleNum)三:方法重载(overload)使用条件(函数名相同,返回类型可不同)1.参数个数不同2.参数类型不同3.参数不同位置的类型相同四:this关键字1.表示对自身对象的引用2.处理方法中成员变量与参数变量同名的情况3.可作为变量,值是当前对象

2021-01-24 17:47:08 71

原创 go乐观锁和悲观锁和分段锁

1.为啥要使用锁?防止多个用户同时对数据的并发操作时会带来以下数据不一致的问题

2021-01-09 15:15:03 757

原创 2020-12-30

网络I/O模型1.网络IO的概念: 本质就杀socket的读取,socket在linux系统被抽象为流,I/O可以理解为对流的操作,实际就是读取对端(另外一个网络节点服务器)通过网络传过来的二进制流2.网络IO模型分类:同步模型阻塞IO非阻塞IO多路复用IO信号驱动式IO异步IO3.网络IO的两个阶段:(1)等待数据准备(数据由对端传输到内核(TCP/IP协议栈在内核)的缓存区) (2) 数据由内核缓存区复制到用户进程缓存区4.各种类型IO模型概...

2020-12-30 21:07:39 52

原创 go几个小技巧

1.常量分类go里的调用单位是包,如何把常量分类又放到一个包下,通过映射是一种手段package testcaseimport ( "fmt" "testing")type Currency intconst ( USD Currency = iota // 美元 EUR // 欧元 GBP // 英镑 RMB // 人民币)func T...

2020-12-27 16:02:42 327

原创 进程不报错死亡原因排查

当服务器进程被杀死而且后台没有报任何错误?如何排查?1.有可能是因为进程大量申请系统内存(几乎把系统内存耗尽),操作系统会杀掉该进程及该进程下的子进程(1)在服务器执行命令:dmesg可以看到main程序确实是因为把内存耗尽导致被内核直接杀掉...

2020-12-18 18:18:12 628 1

原创 工厂模式

属于创建型设计模式:分为简单工厂模式,方法工厂模式和抽象工厂模式简单工厂模式:可以类比小作坊(只有一个车间,可以生产多种产品),用一个类来负责产生所有继承公共父接 口的产品类的实例,让用户可以只关心结果,不再关心生产的过程,直接告诉工厂类(类似到小作坊购买就行) 需求,隐藏了产品类的具体实现过程。(具体实现是:定义抽象产品可生产多个...

2018-09-06 17:00:46 152

原创 java之正则表达式

1.涉及到的三个类:java.lang.String/java.util.regex.Pattern/java.util.regex.Matcher 2:String 类有几个相关的方法1.boolaen matches(String regex);2.String replaceAll(String regex,String replacement) 3.Pattern(指定...

2018-08-07 09:13:08 131

原创 java之线程

1.概念1.线程是一个程序内部的顺序控制流2.线程和进程区别1.每个进程都有独立的代码和数据空间(进程上下文),进程间的切换有较大开销2.线程可以看做轻量级进程(只占用所属进程的少量资源),同一类线程共享代码和数据空间,每个线程有独立的运行栈和程序计数器,线程切换开销小3.多进程:在操作系统中同时运行几个任务(程序)4.多线程:在同一应用程序中有多个顺序流同时执行3.通过java...

2018-08-07 09:11:26 110

原创 java之网络(TCP和UDP)

1.Socket(插座)1.两个应用程序可通过一个双向的网络通信连接实现数据交换,这个双向链路的一端称为一个Socket2.Socket 通常用来实现client-server连接3.java.net包中定义两个类Socket和ServerSocket,分别用来实现双向连接的client-server4.建立连接时所需的地址信息为远程计算机的ip地址和端口号(Port number)(自定...

2018-08-07 09:10:00 358

原创 java之事件

1.ActionEvent1.触发动作分为4种:(1)点击按钮(2)双击列表中选项(3)选择菜单项(4)在文本框输入回车常用方法String getActionCommand()/返回与动作相关的命令字符串/没有设定的话返回按钮标签值long getWhen()/获得事件发生事件int getModifiers()/返回事件发生期间按下的修改建(shit/ctrl/alt/m...

2018-08-07 09:08:27 226

原创 java之容器

容器(API)(java.util)1.概念(用于在程序中存放类的实例对象)API结构图              Collection(interface)Set(interface)                List(interface)               Map(interface)     (集合,没顺序,不能重合)      (有顺序可重复)HashSe...

2018-08-07 09:07:43 123

原创 java之日期处理

java.utii.TimeZone/(抽象类)时区类java.util.Calendar/时间格式化(获得年/月/日)java.util.GregorianCalendar(父类:Calendar)/处理不同时区时间java.util.Date(有三个子类):java.sql.Date/java.sql.Time/java.sql.Timestamp(和数据库相关的三个时间...

2018-08-07 09:06:31 114

微服务相关大全资料,goland 语言相关

微服务相关大全资料

2024-07-02

OAuth2实战课.zip

OAuth2实战课.zip

2024-06-25

网络编程,linux内核编程实战

网络编程,linux内核编程实战

2024-06-25

uibot 文档手册低级+高级

uibot 文档手册低级+高级

2024-06-16

后端工程师面经(1).zip

后端工程师面经(1).zip

2024-05-16

linux最小rootfs busybox

linux最小rootfs busybox

2024-03-24

手写docker源码,非常全面的介绍原理及实现

手写docker源码,非常全面的介绍原理及实现

2024-03-24

kubernetes-learning.zip

kubernetes-learning.zip

2024-03-05

云原生相关资料,包括docker和k8s

云原生相关资料,包括docker和k8s

2024-03-02

系统架构课程,后端通用知识体系

系统架构课程,后端通用知识体系

2024-01-20

系统架构课程,后端通用知识体系,推荐如何设计

系统架构课程,后端通用知识体系

2024-01-20

系统架构课程,后端通用知识体系,主要是高并发系统设计

系统架构课程,后端通用知识体系,主要是高并发系统设计

2024-01-20

系统架构课程,后端通用知识体系,动态算法

系统架构课程,后端通用知识体系,动态算法

2024-01-20

数据结构与算法体系课程

数据结构与算法体系课程

2024-01-20

程序员必知必会的分布式,mysql,DDD等知识大全

程序员必知必会的分布式,mysql,DDD等知识大全

2022-12-11

linux 性能优化文档大全,各方各面

linux 性能优化文档大全,各方各面

2022-12-04

序列化和反序列化doc文档.rar

详细介绍序列化和反序列化知识

2021-06-16

序列化和反序列化等相关知识.rar

详细介绍序列化和反序列化等相关知识

2021-06-16

linux网络编程系统知识.rar

详细描述了linux系统编程,网络编程等编程知识

2021-04-20

系统编程_网络编程_web编程.rar

python核心编程,进程线程,网络编程,web编程详细概述文档及正则表达式

2019-10-24

tornado入门大全

tarnado,详细介绍了tornado的创建下载

2019-10-24

动力节点ssm框架视频及讲义,javascript+jquery+ajax视频

动力节点ssm框架视频及讲义,javascript+jquery+ajax视频

2018-11-23

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除