自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 leetcode困难题

→l→i 则我们沿着环的方向,先交换i,j 的位置,再交换 j,k 的位置,以此类推。为了让第二行与第三行相&不为0,必须在后边的一列都为1,第四行为了与第二行和第三行相&不为0,必须拿出一列使得其与第一行、第二行和第三行都为1,这样算起来就需要6列数据,而题目所说列数小于等于5,所以不满足条件。0,因为上述

2023-11-19 22:42:15 413

原创 goland常用快捷键

控制光标的移动:fn+上下左右移至当前页的页头:ctrl+PgUp移至并选中光标到当前页头:ctrl+shift+PgUp移至当前页的页尾:ctrl+PgDn移至并选中当前光标到当前页尾:ctrl+shift+PgDn返回到当前的光标处:ctrl+m跳转到页首:ctrl+home跳转到页尾:ctrl+end。

2023-10-29 20:33:52 1020 2

原创 golang入门笔记——pprof性能分析

golang性能分析工具pprof的8个指标1.性能分析的5个方面:CPU、内存、I/O、goroutine(协程使用情况和泄漏检查)、死锁检测以及数据竟态分析2.两种程序性能指标采集pprof开启后,每隔一段时间(10ms)就会收集下当前的堆栈信息,获取各个函数占用的CPU以及内存资源;最后通过对这些采样数据进行分析,形成一个性能分析报告。3.交互式终端性能分析。

2023-09-18 16:39:57 502

原创 golang入门笔记——viper

BindEnv使用一个或者两个参数:第一个参数是键名称,第二个参数是环境变量名。Viper是golang的一个管理配置文件的工具,它支持JSON、TOML、YAML、HCL、envfile、Java properties。SetEnvPrefix:用于不知道环境变量名时,viper自动查找的时候加的前缀名,BindEnv和AutomaticEnv都将使用这个前缀。需要重新启动服务器以使配置生效的日子已经一去不复返了,viper驱动的应用程序可以在运行时读取配置文件的更新,而不会错过任何消息。

2023-09-18 09:59:56 1207

原创 golang入门笔记——nginx

Nginx是一个高性能的HTTP和反向代理服务器,特点是占用内存少,并发能力强,Nginx专为性能优化而开发,能经受高负载的考验,有报告表明能支持高达50000个并发连接数。正向代理:通过代理服务器访问目标服务器,我们知道目标服务器的链接,但无法直接访问目标服务器,必须通过代理的方式访问。反向代理:一个请求访问目标服务器时,请求先到达代理服务器,由代理服务器转发给目标服务器,此时反向代理服务器和目标服务器对外就是一个服务器,暴露的是代理服务器地址,隐藏了真实服务器IP地址。

2023-08-31 22:18:36 1523

原创 leetcode SQL题目

DATEDIFF()函数用于计算两个日期的天数差。

2023-08-23 22:55:22 618

原创 golang入门项目——打卡抽奖系统

用户加入群组之后,会在签到群组所设的签到地点进行签到和签退,并限制同一个设备只能签到一个用户,签到成功之后。会获取一定的限制在该群组使用的积分。该群组可以设置一些抽奖活动,用户可使用该群组内的积分来进行该群组的抽奖活动。

2023-04-19 10:38:29 1394 1

原创 golang入门笔记——logrus

下载依赖。

2023-04-09 13:53:01 203

原创 mysql整理

为什么要使用数据库?持久化(persistence)∶把数据保存到可掉电式存储设备中以供之后使用。大多数情况下,特别是企业级应用,数据持久化意味着将内存中的数据保存到硬盘上加以"固化”,而持久化的实现过程大多通过各种关系数据库来完成。持久化的主要作用是将内存中的数据存储在关系型数据库中,当然也可以存储在磁盘文件、XML数据文件中。DB:数据库(Database)即存储数据的“仓库”,其本质是一个文件系统,它保存了一系列有组织的数据。

2023-03-24 19:05:01 1070

原创 Redis高级篇

redis单线程时代性能依然很快的原因?1.基于内存操作:Redis的所有数据都存在内存中,因此所有的运算都是内存级别的,所以它的性能比较高2.数据结构简单:Redis的数据结构是专门设计的,而这些简单的数据结构的查找和操作的时间大部分复杂度都是O(1),因此性能比较高3.多路复用和非阻塞I/O:Redis使用I/O多路复用功能来监听多个socket连接客户端,这样就可以用一个线程连接来处理多个请求,减少线程切换所带来的开销,同时也避免了I/O阻塞操作4.避免上下文切换:因为是单线程模型,因此就避免

2023-03-18 15:40:47 2750 1

原创 leetcode(中等)

【代码】leetcode(中等)

2023-03-11 23:24:52 412

原创 RPC框架笔记

1.本地函数调用和RPC调用的区别:函数映射、数据转成字节流、网络传输2.RPC的概念模型:User、User-Stub、RPC-Runtime、Server-Stub、Server3.一次RPC的完整过程4.RPC带来好处的同时也带来了不少的问题,将由RPC框架来解决。

2023-03-04 14:12:43 471

原创 golang入门笔记——测试

1.所有测试文件以_test.go结尾3.初始化逻辑放到TestMain中。

2023-02-23 10:44:08 827

原创 golang入门笔记——内存管理和编译器优化

静态分析:不执行程序代码,推导程序的行为,分析程序的性质控制流(control flow):程序的执行流程数据流(data flow):数据在控制流上的传递通过分析控制流和数据流,我们可以知道更多关于程序的性质根据这些性质优化代码。

2023-02-19 21:38:23 555

原创 golang入门笔记——内存管理

1.动态内存2.自动内存管理(垃圾回收):由程序语言的运行时系统回收动态内存3.三个任务。

2023-02-19 17:22:57 511

原创 golang入门笔记——Hertz

Hertz是字节跳动研发的企业级微服务HTTP框架,具有高易用性、易扩展、低时延等特点。是基于自研网络库Netpoll开发的内部框架Hertz。Hertz框架整体上满足:1.极致性能优化的问题性2.面对未来不可控需求的扩展能力,Hertz采用了4层分层设计(应用层、路由层、协议层、传输层),保证各个层级功能内聚,同时通过层级之间的接口达到灵活扩展的目标。

2023-01-20 21:47:26 3278 4

原创 golang入门笔记——kitex

由于Kitex并不支持Linux,所以需要首先安装WSL2WSL一句话来说就是微软出的一个虚拟机工具Win11下安装WSL2的步骤为:1.“开始菜单”搜索功能,打开“启动或关闭Window功能”2.勾选以下功能1.适用于Linux的Window子系统2.虚拟机平台3.微软商店搜索wsl,点击安装4.安装完打开,安装完之后输入用户的账号密码如果安装过程中出现下面这种情况:说明内核没有更新,需要更新打开一个终端输入以下命令:wsl -l -vwsl。

2023-01-18 22:55:22 2029

原创 Kubernetes

Kubernetes是由谷歌用Go语言开发的一款轻量级、开源、弹性伸缩、负载均衡的。Kubernetes的本质是一组服务器集群,它可以在集群的每个节点上运行特定的程序,来对节点中的容器进行管理。它的目的就是实现资源管理的自动化,主要提供了如下的主要功能:自我修复:一旦某一个容器崩溃,能够在1秒中左右迅速启动新的容器弹性伸缩:可以根据需要,自动对集群中正在运行的容器数量进行调整服务发现:服务可以通过自动发现的形式找到它所依赖的服务。

2022-11-11 10:16:45 810

原创 Ceph

传统存储设备:直接附加存储(DAS):IDE,SATA,SCSI,SAS,USB网络附加存储(NAS):NFS,CIFS存储区局域网络(SAN):SCSI,FC-SAN,iSCSI分布式存储:跨机架冗余。

2022-11-03 17:51:48 1008

原创 golang高并发微服务项目——大转盘抽奖系统

gin+vue+redis+rabbitmq

2022-10-18 12:20:13 677 2

原创 golang入门项目——微商城

micro微服务项目:微商城,源码链接:https://github.com/zzssdd/shop

2022-09-28 12:08:44 760

原创 RabbitMQ

RabbitMQ是基于AMQP(Advanced Message Queuing Protocol)(高级消息队列协议),是一个网络协议,是应用层协议的一个开发标准,为面向消息的中间件设计。RabbitMQ基础架构图如下图:Broker:接收和分发消息的应用,RabbitMQ Server就是Message BrokerVirtual host:出于多租户和安全因素设计的,把AMQP的基本组件划分到一个虚拟的分组中,类似于网络中的namespace概念。

2022-09-12 11:29:38 874

原创 golang入门笔记——consul

github相关包:服务发现也是一个服务有服务发现后,client、server工作流程:1.每个server启动时,都将自己的IP、port和服务名 注册给“服务发现”2.当client向服务发现发起服务请求时,“服务发现”会自动找一个可用的服务,将其IP/port/服务名返回给client3.client借助服务发现发现服务,访问server服务发现的种类:consul:常应用于go-micro中mdns:go-micro中默认自带的服务发现etcd:k8s内嵌的服务发现zookeeke

2022-09-05 19:11:04 1386

原创 golang入门笔记——gRPC

实例://指定的当前proto语法的版本,有2和3 syntax = "proto3";path 表示生成的go文件的存放地址,会自动生成目录的name表示生成的go文件所属包名//指定等会文件生成出来的package//消息传输的对象}product.go//实现具体的业务逻辑 stock := p . GetStockById(request . ProdId) return & main . ProductResponse {service.go= nil {

2022-09-04 22:59:59 1350

原创 vue+gin前后端分离博客系统

源码地址:https://github.com/zzssdd/myblog

2022-08-26 16:40:33 1170

原创 Git笔记

分支切换是让head直接指向切换到的分支。拉取: git pull 别名 分支。

2022-08-20 11:08:37 193

原创 leetcode(简单)

解法1:解法2:回文数解法1:解法2:罗马数字转整数最长公共前缀解法1:分治解法2:纵向扫描解法3:横向扫描有效的括号合并两个有序链表删除有序数组中的重复项移除元素实现strStr解法1:暴力解法2:KMP搜索插入位置最大数组和解法1:贪心解法2:分治最后一个单词长度加一二进制求和x的平方根解法1:直接调库解法2:袖珍计算器算法解法3:二分法爬楼梯解法1:非递归解法2:非递归解法3:矩阵快速幂删除排序链表中的重复元素合并两

2022-07-31 00:28:29 2219 2

原创 golang入门笔记——排序

我们给定一个排序规则安装第index列大小进行排序,当第index列出现值相等时,参照index+1列。

2022-07-29 10:22:27 402

原创 Docker

服务相关命令镜像相关命令容器相关命令。

2022-07-22 19:47:27 624

原创 Redis

redis是一个key-value的数据库,key一般是String类型,不过value的类型多种多样。

2022-07-21 16:25:06 334

原创 shell入门

number=10echo$numbera='10'echoab="$number"echobc=`date`c2=$(date)//输出当前时间使用变量只读变量readonly变量名删除变量unset变量名。

2022-07-20 12:50:39 73

原创 linux入门

useradd[选项]用户名//创建用户passwd[选项]用户名//用户口令usermod选项用户名//修改用户userdel[选项]用户名//删除用户groupadd[选项]用户组名groupmod[选项]用户组名groups用户名//查询用户所属用户组名groupdel用户组名gpasswd[选项]组名//用于将一个用户添加或者从组中删除选项-a向组GROUP中添加用户USER-d显示当前登录用户。............

2022-07-19 16:12:01 1594

原创 golang入门笔记——jwt

jwt全称(JSON WEB TOKEN),是一种后台不做存储的前端身份验证的工具。分为三部分:Header、Claims、Signature

2022-06-11 12:08:12 763

原创 JavaScript入门

初识JSJS的引入1.行内式的js 直接写到元素的内部<body> <input type="button" value="唐伯虎" onclick="alert('秋香姐')"></body>2.内嵌式的js <script> alert('zyj'); </script>3.外部js<script src="my.js"></script>JS输入输

2022-05-14 15:50:54 496

原创 品优购页面

文章目录页面截图index.htmllist.htmlregister.htmlbase.csscommon.cssindex.csslist.cssregister.css页面截图index.html<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge

2022-05-05 22:57:30 595

原创 html5和css3提高

文章目录html5新增语义标签vedio视频标签audio音频标签html5新增的input表单CSS3属性选择器css3结构伪类选择器css3伪元素选择器盒子模型滤镜filter计算盒子宽度calc函数过渡html5新增语义标签vedio视频标签audio音频标签html5新增的input表单CSS3属性选择器类选择器和属性选择器 伪类选择器 权重都是10<!DOCTYPE html><html lang="en"><head>

2022-05-05 00:25:51 132

原创 CSS常用汇总

标签选择器 <style> /*标签选择器:写上标签名*/ p { color: red; /*将p标签内容改成红色*/ font-size: 25px; } </style>类选择器语法.类名{属性1:属性值1;…}一个类可以有多个类名,类名之间要用空格隔开 <head> <meta charse

2022-05-04 21:59:55 2474 1

原创 前端入门——学成在线页面

准备素材和工具1.psd文件psd文件搬运地址2.开发工具=ps(切图)+vscode(代码)+chrome(测试)案例准备工作

2022-05-04 00:32:29 277

原创 html常用标签

<!DOCTYPE>文档类型声明,作用就是告诉浏览器使用哪种HTML版本来显示网页用来定义当前文档显示的语言1.en定义语言为英语2.zh-CN定义语言为中文其实对于文档显示来说,定义成en的文档也可以显示中文,定义为zh-CN的文档也可以显示英文这个定义对浏览器的搜索引擎会有作用来表示字符集合的选用,不写这个会引起乱码-代表几级标题 特点:1.加了标题的文字会变的加粗,字号也会依次变大2.一个标题独占一行html不会分段,标签用于定义段落,它可以将整个网页分为若

2022-05-01 18:15:46 588

原创 golang入门笔记—Gorm

Gorm是go语言编写的一个ORM框架,是中国人开发的框架(自豪)偷懒不写sql语句数据库操作神器ORM的优缺点:优点:提高开发效率缺点:牺牲执行功能牺牲灵活性弱化SQL能力Gorm基本操作package mainimport ( "fmt" "github.com/jinzhu/gorm" _ "github.com/jinzhu/gorm/dialects/mysql")type UserInfo struct { Id uint Name stri

2022-04-28 17:22:03 3056

空空如也

空空如也

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

TA关注的人

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