摘要:
一、Redis数据结构 Redis支持五种主要数据结构:字符串(String)、列表(List)、哈希表(Hash)、集合(Set)和有序集合(Sorted Set)。这些数据结构为开发者提供了灵活的数据操作方式,满足了不同场景下的数据存储需求。 字符串(String):最基本的数据类型,可以包含任 阅读全文
摘要:
简介 在黑客的世界里,当你拋出一个技术问题时,最终是否能得到有用的回答,往往取决于你所提问和追问的方式。本指南将教你如何正确的提问以获得你满意的答案。 不只是黑客,现在开放源代码(Open Source)软件已经相当盛行,你常常也可以由其他有经验的使用者身上得到好答案,这是件好事;使用者比起黑客来, 阅读全文
摘要:
一、top 能够实时(监控)显示系统中各个进程的资源占用状况,类似于Windows的任务管理器。 默认进入top时,各进程是按照CPU的占用量来排序,以K为单位显示内存大小,可通过大写字母E来切换内存信息区域的显示单位,如下按一下E切换到MB,再按一下E切换到GB。 注意:按shift+M使应用按内 阅读全文
摘要:
▶︎ 后台基础(初级):掌握牢固的后台基础(go、os、http、tcp、ip...)并能熟练运用,为后面的发展打下地基。 ▶︎ 工程素养(中级):写出一手好代码,有扎实的微服务工程能力,用云原生DevOps持续提升工程效率。 ▶︎ 项目架构(高级):有扎实严谨的系统架构设计能力,独立主导大中型项目 阅读全文
摘要:
不管你是否科班出身,需要从入门到精通开始进行学习并且进行实践,在实践中去积累和总结经验,这样才能够提高自己的编程认知和思维方式。 1、 理解需求; 编码之前必须先理解需求,知道你需要做什么,然后再开始编程。这一点很重要,就象你做题目一样,先理解了题目的意思,才能回答问题。需求方面,如果有不明白的,能 阅读全文
摘要:
一、Redis主要的功能 1、哨兵(Sentinel)和复制(Replication) Redis服务器毫无征兆的罢工是个麻烦事,如何保证备份的机器是原始服务器的完整备份呢?这时候就需要哨兵和复制。Sentinel可以管理多个Redis服务器,它提供了监控,提醒以及自动的故障转移的功能,Replic 阅读全文
摘要:
1.常见框架 1.1 框架排名 Gin 31k [Lite] Beego 22k Iris 16k Echo 15k [Lite] Revel 11k Martini 10k [×] buffalo 5k [Lite] 1.2 框架特性 Gin: Gin 是一个用 Go (Golang) 编写的 w 阅读全文
摘要:
在 Go 语言中,context 包提供了一种跨 API 和进程边界传递请求作用域值、取消信号以及超时信号的方式。使用 context 可以帮助更好地控制 goroutine,避免 goroutine 泄漏等问题。出现 “context deadline exceeded” 错误通常是因为在请求上下 阅读全文
摘要:
敏捷开发方法是一种软件开发方法论,旨在通过迭代、灵活性和协作来应对需求的不断变化,以及快速交付高质量的软件产品。下面对极限编程(XP)、水晶法(Crystal)、并列争球法(Scrum)和自适应软件开发(ASD)这四种常见的敏捷开发方法进行详细分析: 1. 极限编程(XP)极限编程(Extreme 阅读全文
摘要:
1、瀑布模型:瀑布模型是将软件生存周期中的各个活动规定为依线性顺序连接的若干阶段的模型,包括需求分析、设计、编码、运行与维护。 瀑布模型的特点是容易理解,管理成本低,每个阶段都有对应的成果产物,各个阶段有明显的界限划分和顺序要求,一旦发生错误,整个项目推倒重新开始。 适用于需求明确的项目,一般表述为 阅读全文
摘要:
1. 接口新增入参字段,并且有校验逻辑在日常开发中,经常会遇到的需求就是,在老的接口上,新增入参,并且需要校验。 这时候兼容性如何处理呢?我举个简单点的例子: 比如一个用户注册接口,突然加一个email的字段并且不能为空,且要校验是否符合邮箱格式 其实可以升级API版本,比如创建一个新的API版本, 阅读全文
摘要:
omitempty的作用是在json数据结构转换时,当该字段的值为该字段类型的零值时,忽略该字段。 package main import ( "fmt" "encoding/json" ) type Student struct { Name string `json:"name"` Age in 阅读全文
摘要:
Golang性能测试框架k6是一个新兴的性能测试工具,其特点在于使用JavaScript作为测试脚本语言,并且基于Golang的强大性能进行构建。1. 框架基础k6的启动框架使用了Golang的CLI标准框架cobra。cobra是一个用于构建CLI应用程序的库,它提供了丰富的命令解析和参数处理功能 阅读全文
摘要:
一、什么是不稳定性算法? 具有相同关键字的纪录经过排序后, 相对位置发生改变, 这样的算法是不稳定性算法。 一、不稳定排序算法有哪些1、堆排序2、希尔排序3、快速排序4、选择排序口诀:一堆(堆)希尔(希尔)快(快速)选(选择) 二、常见排序算法稳定性分析1、堆排序堆的结构是节点i的孩子为 2*i 和 阅读全文
摘要:
CPU核心数量对服务器性能有显著影响,尤其在处理多任务和并发工作负载时。以下是不同核心数量对服务器性能的具体影响: 1. 并行处理能力 1)多任务处理: 多核心CPU可以同时处理多个任务,因为每个核心都可以独立执行线程。这意味着服务器可以更高效地处理并发请求,减少响应时间。 对于多用户环境或高并发应 阅读全文
摘要:
游戏化设计(Gamification design)旨在将游戏设计中的元素应用到非游戏场景或系统中,以此来提高用户体验和参与度。 依照Google趋势搜索,Gamification这个涵盖行术语最早出现于2010年,是一个被重新定义的新兴学科。它像是博弈论的衍生品,遵循‘产生行为后给予奖励’这个最基 阅读全文
摘要:
唯一索引: 唯一性:唯一索引保证索引列的值是唯一的,不会有重复。比如,一个班级的学号,每个学生都有一个唯一的学号,不能有重复。可以有多个:一个数据库表中可以有多个唯一索引,就像一个班级可以有多个科目,每个科目都可以有一个唯一的成绩单。允许空值:唯一索引列中可以有一些空值(没有填写的数据)。就像在一个 阅读全文