3A网络 3A网络
2年前
Redis 做接口限流
Redis除了做缓存,还能干很多很多事情:分布式锁、限流、处理请求接口幂等性。。。太多太多了~今天想和小伙伴们聊聊用Redis处理接口限流,这也是最近的TienChin项目涉及到这个知识点了,我就拎出来和大家聊聊这个话题。1.准备工作首先我们创建一个SpringBoot工程,引入Web和Redis依赖,同时考虑到接口限流一般是通过
Wesley13 Wesley13
3年前
STM32F0单片机快速入门十 用 SPI HAL 库读写W25Q128
1.W25Q128介绍当我们有比较多的数据需要掉电存储时,上一篇文章所介绍的24C02(256个字节EEPROM)就不够了。此时我们会用到另外一种类型的存储器,即Flash。比如具有SPI接口的W25Q128。这颗小芯片虽然也只有简单的8个引脚,但存储容量却达到了128Mbit,也就是16M字节,同时它的读写速度可以达到
xiguaapp xiguaapp
4年前
如何设计一个数据库?
设计两个大模块,存储(文件系统)与程序的实例模块。程序的实例模块划分为:存储管理,缓存机制,SQL解析,日志管理,权限划分,容灾机制,索引管理,锁管理。为什么使用索引?假设使用原始的全表查询,那么对于小量数据可能速度并没有影响,但是在大量数据的情况下会使得速度很慢。而索引,则类似于字典中的偏旁部首,加快了查询的效率。二叉
Wesley13 Wesley13
3年前
Mysql主从 读写分离(一主一从或一主多从),双机热备(互为主从)
什么是主从复制 当mysql数据库的数据量太大的时候,查询数据就很吃力了,无论怎么优化都会产生瓶颈,这时我们需要增加服务器设备来实现分布式数据库,首先要了解主从数据库服务器的版本的需求,主从mysql的安装运行版本需一致。因此,我们利用mysql自带的REPLICATION来实现mysql多机主从同步的功能,mysql版本为5.7进行演示。!
Wesley13 Wesley13
3年前
Go语言
发现问题今天在看代码的时候,遇见了多个协程写同一个slice的情况,发现未对slice做任何保护,亦未使用其他手段保证并发安全,这样肯定会出错的。思考slice不是协程安全的,所以在多个协程中读写slice是不安全的,在高并发的情况下会产生不可控制的错误。总结这里记录一下错误的使用方式与正确的使用方式:错误的使用
Stella981 Stella981
3年前
Linux磁盘、Ext文件系统、目录树
硬盘组成与读写硬盘,拆过机的同志应该知道就是一块小刚体嘛。拆过主机硬盘和笔记本硬盘也应该知道不同的硬盘的接口是不一样的,主机的硬盘一般会有一条线连接到主板而笔记本的硬盘直接有插槽。这个概念只是为了引起硬盘有不同的种类存在,当我们在linux系统中输出命令fdiskl的时候,大致会有设备名称等信息。其中有可能有/dev
Wesley13 Wesley13
3年前
Mysql,version~没变~,就是更新不成功,别慌!
一个忙(mo)碌(yu)的下午,小航同学,突然大骂一声,“TM,见鬼了,version没变,更新就是不成功”。我看他,满头大汗,双手握拳,面目狰狞,似乎又要发作,赶紧说:“不成功没关系啊,重试就好,乐观锁一般是要重试的”他略带鄙视的说道:代码有重试了逻辑,我还加日志了,结果发现version没变,就是更新不成功。作为对技术小有追求的人,他怎么一
Wesley13 Wesley13
3年前
Java并发系列7
如果要让线程阻塞,我们在讲线程基础的时候已经分析过了。如果要让线程暂停呢,不是blocked,而是waiting,这时候有什么办法?Thread类有一个弃用的方法suspend()是线程暂停的意思,他被弃用的原因是线程挂起的时候并不会释放持有的锁资源,而且suspend()挂起的线程状态依然是runnable,这也是不合理的。那么有没有一种简单的
spring多数据源动态切换的实现原理及读写分离的应用 | 京东云技术团队
AbstractRoutingDataSource​​是Spring框架中的一个抽象类,可以实现多数据源的动态切换和路由,以满足复杂的业务需求和提高系统的性能、可扩展性、灵活性。
赵颜 赵颜
1年前
基于ACM32 MCU的LED灯箱控制器方案,可高效提升控制效率
LED灯箱上各种文字、图案有序跳跃、交替辉映,产生强烈的视觉冲击力,被广泛应用于商场、美容美发、宾馆、娱乐场所等地方。锁存器的工作原理在LED和数码管显示方面,要维持一个数据的显示,往往要持续的快速的刷新。尤其是在四段八位数码管等这些要选通的显示设备上。在