• 认真地记录技术中遇到的坑!
  • 能摸鱼真是太好啦!嘿嘿嘿!

redis缓存引入带来的复杂性和问题

redis缓存引入带来的复杂性和问题
一般在数据库查询压力比较大,高并发要求比较高,读写速度要求比较高的场景下,我们会引入redis缓存。因为redis缓存本身基于内存进行操作,相对于基于磁盘的数据库来说,在速度并发上面有一个数量级以上的差距。 但是redis缓存的引入同样会增加系统复杂性以及带来一系列问题,比如: 缓存和数据库数据一致性问题 缓存失效问题,伴生的缓存预热,缓存击穿,缓存雪崩等……继续阅读 »

悠悠 1周前 (06-25) 88浏览 0评论 3个赞

系统性能分析工具-sar

系统性能分析工具-sar
概述 sar(System Activity Reporter系统活动情况报告)是目前 Linux 上最为全面的系统性能分析工具之一。 可以从多方面对系统的活动进行报告,包括:文件的读写情况、系统调用的使用情况、磁盘I/O、CPU效率、内存使用状况、进程活动及IPC有关的活动等。 格式:sar [options] [-A] [-o file] t [n] 追……继续阅读 »

悠悠 3个月前 (03-30) 347浏览 0评论 1个赞

Redis6.2.6源码CLion编译调试

Redis6.2.6源码CLion编译调试
Redis6.2.6源码CLion编译调试 准备工作 C语言的运行和构建工具介绍 C语言是编译型语言,需要编译生成.o的目标文件,然后用链接器连接目标代码才能生成可执行文件,Windows下就是生成.exe文件。如果文件之间互相依赖,则需要把所有源文件都编译才可运行。 然而大型项目中,源文件非常多,需要使用make工具来批量编译源文件,通过编写规则文件Mak……继续阅读 »

悠悠 3个月前 (03-28) 539浏览 0评论 0个赞

RESTful API最佳实践

RESTful API最佳实践
RESTful API 概述 基本概念 REST 英文全称:Representational State Transfer,直译为:表现层状态转移。首次是由Roy Thomas Fielding在他2000年的博士论文中提出。 REST是一种描述网络中client和server之间的资源交互方式。 而RESTful API就是完全遵循REST方式的一套API……继续阅读 »

悠悠 3年前 (2019-11-04) 3389浏览 3评论 28个赞

Linux环境变量配置全攻略

Linux环境变量配置全攻略
Linux环境变量配置 在自定义安装软件的时候,经常需要配置环境变量,下面列举出各种对环境变量的配置方法。 下面所有例子的环境说明如下: 系统:Ubuntu 14.0 用户名:uusama 需要配置MySQL环境变量路径:/home/uusama/mysql/bin Linux读取环境变量 读取环境变量的方法: export命令显示当前系统定义的所有环……继续阅读 »

悠悠 3年前 (2019-04-09) 4518浏览 0评论 11个赞

详解MySQL表空间以及ibdata1文件过大问题

详解MySQL表空间以及ibdata1文件过大问题
ibdata1文件过大 原因分析 ibdata1是一个用来构建innodb系统表空间的文件,关于系统表空间详细介绍参考MySQL官网文档 上面是一个数据库的ibdata1文件,达到了780多G,而且还在不断增长。 这个文件包含了innodb数据字典、修改buffer和双写buffer、撤销日志,还包含在用户在系统表空间创建的表信息和索引数据。 显然,由于所……继续阅读 »

悠悠 3年前 (2019-03-18) 3116浏览 0评论 1个赞

nodejs连接数据库报错

nodejs连接数据库报错
ER_NOT_SUPPORTED_AUTH_MODE 报错详情 使用nodejs连接数据库时报错: Error: ER_NOT_SUPPORTED_AUTH_MODE: Client does not support authentication protocol requested by server; consider upgrading MySQL c……继续阅读 »

悠悠 3年前 (2019-02-27) 2677浏览 0评论 1个赞

应用层日志记录

应用层日志记录
任何系统都有可能会出现问题,出现问题时我们的第一反应是为什么会出错?出错时发生了什么?如何复现? 如果你记录了完善的日志,那么只要一看日志,你就能快速知道程序出现错误时究竟发生了什么,进而追溯到导致错误发生的原因,从而修复问题。 可以说一个日志记录是一个完善的系统必不可少的一部分。本文简单探讨为什么记录日志,怎么记录日志以及记录日志的方法。 应用层日志作用 ……继续阅读 »

悠悠 4年前 (2018-09-25) 2779浏览 0评论 6个赞

MySQL InnoDB 修改表列Online DDL

MySQL InnoDB 修改表列Online DDL
概述 一般来说数据库结构一经设计,不能轻易更改,因为更改DDL(Data Definition Language)操作代价很高,所以在进行数据库结构设计时需要谨慎。 但是业务发展是未知的,特别是那些变化很大的业务,所以不可避免的需要修改数据库结构,本文主要对MySQL5.6+ InnoDB存储引擎字段的修改进行探讨。 对于不同的场景,所使用的方式也会大不相同……继续阅读 »

悠悠 4年前 (2018-08-27) 5110浏览 1评论 7个赞

Linux日期时间处理-date

Linux日期时间处理-date
几个示例 在Linux命令行,使用date命令可以很方便处理日期时间字符串。 # 今天的日期:20180730,+号前面有空格,后面没有空格 date +"%Y%m%d" # 昨天的日期 date -d "1 day ago" +"%Y%m%d" # 在字符串中使用 echo $(date +"%Y%m%d") date命令 使用方式 date命令的两……继续阅读 »

悠悠 4年前 (2018-07-30) 2774浏览 1评论 1个赞