自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(19)
  • 收藏
  • 关注

原创 git生产常用命令

/下面更新你的代码,会让你的所有代码变回master原样,但是你修改的代码已经在暂存区,push就可以了。下面解决修改代码后push,报错你的代码版本过久的问题。必须要email和name都对应修改才行。回退到master最新版本。

2025-01-20 10:00:41 304

原创 golang安装,常用框架安装,记忆点

如果没有需要找mcentral,mcentral共有67个等级,每个等级的预留缓存大小也不相同,程序根据自己的大小,去mcentral寻找是否有合适的缓存,由于可能有多线程,所以需要加锁处理,但是锁粒度较小。有一个64位的pallocsum,首位不用,剩下的分为3个部分,分别是start,max和end,表示首次出现空闲页的span序号,连续空闲空间最大的span序号,以及最后出现空闲span的序号。然而,对于较小的内存请求,Go 语言采用了特殊的优化技术来减少内存浪费,这就是所谓的“小对象分配优化。

2024-11-04 10:48:15 857

原创 sqllite学习

sqllite属于轻量级的嵌入式数据库,能支持的数据量为2TB,体积小,支持ACID事务。

2024-09-25 16:32:06 725

原创 grpc编程(新)

首先,服务端调用listen()函数,之后在客户端发送第一次握手后,创建tcb,并放入半连接队列中,之后由tcb完成后面的连接,握手是被动完成的。在连接完成后把tcb从半连接队列放到全连接队列,然后服务端调用accept()从全连接队列获取fd,并等待消息。accept()会把tcb从全连接队列取下,并且给连接分配一个fd。

2024-09-11 17:58:28 791

原创 TiDB学习教程

TIDB可以无限的扩容,并且可以实时的处理事务和分析(OLTP,OLAP)(OLTP可以处理100%,OLAP可以处理80%,剩下的需要TiDBSpark),可以算是mysql的升级版,并且相对于redis、rocksdb这种kv型数据库,可以更加适配mysql(TIDB也是kv数据库)。

2024-09-11 08:08:35 676

原创 docker使用

包含三种命令,build,share,run。有三个模块,包括client, docker主机和应用市场。其中主机安装和启动docker程序,应用市场保存上传的应用(镜像),client提供请求。我们的操作在client上进行。在需要启动镜像时,首先输入docker pull XX,把镜像从应用市场下载到主机。然后输入docker run XX,来启动主机内的镜像,生成的应用称为容器。

2024-09-09 16:10:52 1743 2

原创 rockdb

Lsm-tree比B+树更省空间,但不是一个数据结构,是一种存储方式,越热的数据越在上层。需要的头文件option用来调参。数据首先会被写入到一个内存结构(如跳表),当这个结构达到一定大小时,它会被flush到磁盘上形成一个新的SSTable(Sorted String Table)。之后的写操作会继续写入新的内存结构中,而多个SSTable会在后台进行合并(compaction),以减少查询时需要搜索的文件数量。

2024-09-08 20:29:28 781

原创 nginx使用

下载gcc sudo apt-get install build-essential下载nginx源码 git clone http://gitlab.0voice.com/2404_vip/nginx.git。

2024-08-26 15:47:43 1548

原创 redis使用方法

前者为redis基本数据结构,后者为适用于字符串的高效存储,并且buf需要适配非安全字符串(有\0的),所有共需20字节。rdb在断电时可能会有较多的数据丢失,因为rdb会在规定的时间间隔中创建快照,然后对快照使用保存,而aof在always时会一直保存,并且保存的是命令不是数据,所以文件大,损失少。看主库和库的run id是否相同,如果相同,使用增量更新,每次更新一个offset量,否则使用全量更新。由于lua脚本如果有先set,后lpush,这时set会成功,push会失败,所以lua没有一致性。

2024-08-18 15:46:49 1934

原创 spdlog用法

剩下的是对上面步骤的拆分,可自定义。sink为输出,logger连接registry和sink。两种绑定方法都可以。flush表示多久把用户缓冲区刷新到内核缓冲区。sink_it表示多久把数据刷新到用户缓冲区。第二个是输出到文件,参数分别为logger名,文件名,是否为清空数据,false为追加数据。第一行是在命令行输出。pattern格式化。

2024-08-16 11:49:17 212

原创 分布式redis语句

两者意思一样, nx表示在存在对应key时,其他客户端无法插入相同key数据。EX表示超时时间,到达时间后,会把nx的锁打开。

2024-08-15 14:36:43 81

原创 dpdk的实现,udp编程

首先 ifconfig 查看你的网卡名,如ens33然后cat /proc/interrupts |grep ens33如果是则不支持,需要打开配置文件,在虚拟机目录中,找到后缀为vmx文件,并打开修改或添加两行修改huge page设置。

2024-08-01 09:50:55 380

原创 用u_context实现协程

其中 如果有makecontext则跳入指定的函数,如果没有则跳入原先保存上下文的地方。

2024-07-25 21:01:07 124

原创 git从服务器克隆代码

裸仓库,可以避免直接在仓库中看到源码。

2024-07-15 13:56:29 548

原创 c++ atomic操作

atomic++;//非线程安全,不能写。

2024-07-15 08:14:48 109

原创 改变服务器的文件符个数限制

中间为默认值,小于等于默认值不会处理,超过默认值小于最大值会释放无用端口,大于最大值会禁止分配端口。设置最大文件符,防火墙最大文件符。

2024-07-08 10:52:43 125

原创 HTTP报文的实现

例子:头部字段名有很多种。

2024-07-05 17:01:57 310

原创 DNS和UDP编程的实现

在抓以太网包之后,通过筛选DNS并停止抓包,双击一个包,有:图1中从上到下,依次是物理层,链路层,网络层,传输层和应用层。Domain Name System和图一对应,并且request包和对应的response包的Transcation ID是一样的。In表示internat,代号为1。

2024-07-05 13:19:08 377

原创 安装WireShare出现的问题

选择安装winPcap。

2024-07-04 14:35:23 200

空空如也

空空如也

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

TA关注的人

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