换电脑的时候经常需要重新配置,在此处总结一下。
Git alias就是用简化的命令替代原有的git命令,可以提高效率,例如:
1 | git co master # git checkout master |
MacOS需要配置的文件是~/.gitconfig
1 | touch ~/.gitconfig |
把下面的内容粘贴进去
1 | [alias] |
之后重新打开一个shell界面,就可以正常使用了~
换电脑的时候经常需要重新配置,在此处总结一下。
Git alias就是用简化的命令替代原有的git命令,可以提高效率,例如:
1 | git co master # git checkout master |
MacOS需要配置的文件是~/.gitconfig
1 | touch ~/.gitconfig |
把下面的内容粘贴进去
1 | [alias] |
之后重新打开一个shell界面,就可以正常使用了~
经常在需要防止重复调用的业务逻辑中(例如秒杀、防止重复消费等逻辑)使用分布式锁,使用redis实现时常见的实现方式。平时只是使用,但是并没有专门总结,今天来做下总结。
先使用docker开启一个redis实例
1 | # 开启6379端口映射 对数据和配置进行volume持久化 并且启动后执行 |
进入redis内部
1 | $ docker exec -it my-redis redis-cli |
1 | # setnx设置kv |
缺点:setnx和expire不是原子操作,如果setnx后还没有expire操作,redis挂了,这个锁将没法过期了,影响业务。
命令如下
1 | # set命令格式 |
例如可以通过以下命令设置
1 | # 设置100秒超时,这是一个原子操作 |
1 | if redis.call('setnx',KEYS[1],ARGV[1]) == 1 then |
redis中