建索引注意事项
频繁增删改的列不建索引,因为更新数据的同时要重新维护索引
大字段不建索引,因为索引也要占用存储空间
尽量选择区分度高的列做索引
主键列尽量使用自增长列,少用guid
索引太多也会影响性能
什么时候要建索引
频繁检索的列
oderby 或者 group by 后面的列,因为如果有索引则无需每次查询的时候临时排序而耗费性能
令牌桶算法和漏桶算法允许最大的并发请求量都是桶的容量,令牌桶灵活的地方就是可以通过控制令牌桶中令牌的数量以及令牌的生成速度来控制并发请求的处理速度及大小,令牌桶中还有令牌则表示还可以处理请求,没有令牌了则拒绝请求或者阻塞当前请求,漏桶算法则是通过桶的容量来控制接收并发请求的最大数量
解决aps.net core 应用容器化部署后,出现未捕获全局异常导致容器异常退出的情况,可以通过docker run 的时候传入 --restart=always 方式解决。
docker run --restart=always redis
不过按照上面设置之后,如果人为要停止容器,那么会发现停止不了,解决方案是停止容器前先将--restart模式重置掉(这是我的个人猜测,不过官方文档是说:人为停止后,只有docker重启之后才会自动重新启动,或者通过人为重新启动才能启动,并不会出现这里说的情况,因此下面的语句可执行可不执行)
docker update --restart=no 容器Id
具体参考下面这个问答
--restart=unless-stopped 表示除了用户停止之外,都会自动重启。
来自官方的文档说明
https://docs.docker.com/config/containers/start-containers-automatically/
更换docker linux 镜像软件包源为国内源的方法。
下面这篇文章列出了国内常用的几个国内linux软件包源。
https://www.cnblogs.com/liuguanglin/p/9397428.html
docker desktop 创建的linux 容器自动挂载的目录位置
打开网络位置:\\wsl$\docker-desktop-data\version-pack-data\community\docker\volumes\ 即可查看。
解决dockerfile 中使用 RUN ls -l 等命令无法打印命令输出问题。
https://stackoverflow.com/questions/49787780/docker-run-ls-shows-cached-files
解决dockerfile中执行命令无输出内容的问题。
第一种解决方案
docker build . --progress=plain --no-cache
第二种解决方案
设置环境变量
set DOCKER_BUILDKIT=0