千恋*万花

  • 首页
  • 个人简历
  • 文章分类
    • 后端开发
    • 运维
    • 基础知识
    • 笔记
    • 工作运维记录
    • 随笔
    • 未分类文章
后端开发
MySQL

MySQL 创建索引的一些注意事项

创建索引 那些字段适合创建索引 不为null的字段 被作为条件查询的字段 需要排序的字段 频繁用于链接的字段 使用 limit、offset查询缓慢时,可以借助索引来提高性能 涉及到分组或统计的字段 那些字段不适合创建索引 where 中用不到的字段无需创建索引 数据较少的表可以不建索引 数据分布均匀的表不适合建索引(比如:性别) 需要被计算的列不适合建索引,对字段使用函数,会导致索引无法被命中 创建索引的注意事项 被频繁更新的字段应谨慎建立索引 尽可能创建联合索引,而不是单列的索引 为了节约硬盘空间 减少回表次数…

2023-02-08 0条评论 3773点热度 1人点赞 初音萌奈 阅读全文
golang

通过实践 总结 golang defer 的用法

前言 用golang也用了挺长时间了,我对 defer 这个设计还比较满意,而且对其使用也产生了一些依赖,在使用其他编程语言写的入迷的时候,经常写出来 unknow type defer 的操作。 项目中,我用defer,一般是在 io 的时候使用,开启文件后,紧跟一个关闭,现在已经成为我的一种习惯了。 最近面试的时候,被问到了defer一些不常用的用法,虽然我都答出来了,但是答的过程有点曲折。我能把defer的大白话说出来,但是还是缺少总结语言的能力。 所以今天我想把 defer 用法的大白话,用代码让自己记住。…

2023-02-03 0条评论 4002点热度 1人点赞 初音萌奈 阅读全文
golang

基于 go-redis 与 Lua 实现简易且高效的分布式锁

分布式锁的应用场景 在分布式业务中,若涉及到共享的资源,未防止多个进程同时访问、处理该资源,那么则需要一个分布式锁 来保证该共享资源在同一时刻只能被一个对象进行处理。 设计理论 为了实现锁互斥能力,则一定涉及到 Redis 的SETNX指令(SET if Not eXist) 锁只能由创建锁的对象解开,所以需要记录锁是由哪个对象创建的,解锁时需要验证锁的所有权 为了防止死锁,第一 需要允许强制解除锁,第二 每个锁必须要有 超时时间 综上,便可以编写出一个锁的定义了 type lock struct { contex…

2023-01-03 0条评论 4461点热度 2人点赞 初音萌奈 阅读全文
golang

记 leetcode Q1805 解题思路

题目连接 Q1805 题目详情: 给你一个字符串 word ,该字符串由数字和小写英文字母组成。 请你用空格替换每个不是数字的字符。例如,"a123bc34d8ef34" 将会变成 " 123  34 8  34" 。注意,剩下的这些整数为(相邻彼此至少有一个空格隔开):"123"、"34"、"8" 和 "34" 。 返回对 word 完成替换后形成的 不同 整数的数目。 只有当两个整数的 不含前…

2022-12-06 0条评论 4118点热度 0人点赞 初音萌奈 阅读全文
Elasticsearch (ES)

Elasticsearch DSL与MySQL的基础语法对比

作者第一次使用 ES 进行数据查询,目前仅总结了一些本次用过的查询语法,后续用到其他的语法,会再在本文中更新 总述 Elasticsearch 使用的是 Query DSL 进行查询的,相比SQL而言…… (好吧,我也不知道二者之间孰强孰弱)总之,语法差别很大。 为了后续可以温故知新,所以我总结了一些常用的SQL语句进行对比。 查询 基础查询结构 $dsl = [ 'index' => 'index_name', // FROM index_name '_source_include' => 'orde…

2021-12-26 0条评论 5032点热度 12人点赞 初音萌奈 阅读全文
Elasticsearch (ES)

Elasticsearch 关于唯一ID的表设计实践

订单列表搜索实现 电商平台的订单列表中,一般都会有搜索的功能,这次我具体谈一谈 针对订单Id 表搜索的设计。 在ES的表设计中,订单Id,我保存了两份,一份是 keyword 类型,另一份是 long 类型。 'mappings' => [ '_order' => [ 'properties' => [ 'orderIDKeyword' => ['type' => 'keyword'], 'orderIDLong' => ['type' => 'long'], ......…

2021-12-26 0条评论 4747点热度 0人点赞 初音萌奈 阅读全文
MySQL

MySQL 转 PostgreSQL (holo)

语法区别 3. 关于日期、时间的提取 将 timestamp 类型的数据,把小时、分钟等提取出来。 --mysql SELECT hour(time) AS timeHour FROM cart WHERE ......; --PostgreSQL (holo) 方法一 SELECT DATE_PART('hour', time) as timeHour FROM cart WHERE ......; --PostgreSQL (holo) 方法二 SELECT EXTRACT(hour FROM time) AS…

2021-04-01 0条评论 6069点热度 21人点赞 初音萌奈 阅读全文
PHP

PHP的摸索学习

写在前面   的确,这个博客之前一直都只在写golang的一些框架或者心得。但是从最近一段时间可能是需要换一种分隔了,毕竟新公司的后台开发主业务是用的PHP。   不过好消息是,公司配给我的开发机上有go的相关环境,这意味着我可以不用太放弃这门语言,在写一些工具的时候还可以继续用到,之前学到的东西也没有白白浪费。 今日活动 早上到公司办理入职,简单地了解了一下公司各部门的工作。公司的环境整体不错,安排了一台新的笔记本电脑 (吐槽:8GB内存,只开一个IDE就系统就已经占用了70%,用起来太难受了。) 。 电脑是Wi…

2021-03-25 0条评论 5413点热度 0人点赞 初音萌奈 阅读全文
golang

深入探讨 Go 多变量赋值

使用go语言时,会经常把一些变量放在同一行来声明、赋值或计算。那么,这种赋值方法到底是以什么样的实现方法来赋值的呢? 先说结论,就两步: 一、先计算等号右侧所有表达式的值,将结果存储临时变量中。 二、将临时变量的值赋给等式左侧的变量。 多个变量一同声明并赋值 a, b := 1, 5 //情况一 c, d := a+b, a-b //情况二 对于情况一来说,很简单,直接按照从左到右的顺序,把1、2两个值赋值给a、b ; -----情况一 相关汇编代码 开始---------- (.\main.go:4) MOVQ …

2021-02-08 1条评论 6448点热度 1人点赞 初音萌奈 阅读全文
MySQL

SQL 基础语法

点我下载原图(SQL必知必会.png) 如果下面的内容看不清,可以点击图片放大哦~

2021-02-08 0条评论 5591点热度 0人点赞 初音萌奈 阅读全文
123

初音萌奈

我是练习时长 三年半 的后端开发程序员
谢谢你参观我的博客!
本网站现已支持IPv6
☞ 个人简历 ☜

分类
  • 后端开发 / 24篇
    • Elasticsearch (ES篇 / 2篇
    • gin / 6篇
    • golang / 12篇
    • lua / 1篇
    • MySQL / 8篇
    • PHP / 1篇
    • PostgreSQL (pgSQL篇 / 1篇
    • Redis / 1篇
  • 基础知识 / 6篇
    • 算法与数据结构 / 5篇
    • 计算机原理 / 1篇
  • 工作成长 / 1篇
  • 工作运维记录 / 7篇
  • 笔记 / 9篇
  • 运维 / 10篇
    • bash / 3篇
    • Docker / 1篇
    • Kubernetes (k8s篇 / 1篇
    • Linux / 4篇
    • NAS / 1篇
    • Server / 2篇
    • 开发环境 / 1篇
    • 网络 / 4篇
  • 随笔 / 8篇
    • 微博(字面意思) / 4篇
    • 日志 / 2篇
站点统计
  • 290
  • 17,004
  • 330,575
  • 142,734
  • 0
  • 55
  • 7

COPYRIGHT © 2025 HatsuneMona ALL RIGHTS RESERVED.

Theme Kratos Made By Seaton Jiang

晋ICP备17007130号-4