摘要:
不管是先写MySQL数据库,再删除Redis缓存;还是先删除缓存,再写库,都有可能出现数据不一致的情况。举一个例子: 1.如果删除了缓存Redis,还没有来得及写库MySQL,另一个线程就来读取,发现缓存为空,则去数据库中读取数据写入缓存,此时缓存中为脏数据。 2.如果先写了库,在删除缓存前,写库的 阅读全文
摘要:
1.查看本机ip(windows系统使用ipconfig,linux系统使用ifconfig) 2.本地右键已经在运行中的shadowsocks,勾选 “允许其他设备接入”。我的是4.1.8版本,是这个。网上还有其他的版本说“允许来自外部的连接”,或者 “允许来自局域网的连接”,都是一个意思 3.启 阅读全文
摘要:
UDP简介 用户数据报协议,是一个无连接的面向数据报的运输层协议。 UDP不提供可靠性,它只是把应用程序传给IP层的数据报发出去,但是并不能保证他们能到达目的地。 由于UDP在传输数据报前不用在客户和服务器之间建立一个连接,且没有超时重发等机制,故而传输速度很快。 UDP是一种面向无连接的协议,每个 阅读全文
摘要:
网络编程 低级别的网络服务 高级别的网络服务 socket又称“套接字”,应用程序通过“套接字”向网络发出请求或者应答网络请求,使主机间或者一台计算机上的进程间可以通讯。 tcp 传输控制协议(Transfer Control Protocol) tcp优劣势: 1、稳定 2、相对于udp而言,要慢 阅读全文
摘要:
有这么一段python代码 不管怎么设置basicConfig里的值,一直都无法生效,后来看到一个说法:在调用basicConfig函数之前,因为导入了其他包,而其他包里又导入了logging包,就导致设置basicConfig不成功。一排查,确实在common和cache包里又导入了logging 阅读全文
摘要:
线性查找 从头到尾依次检查列表中是否有某一个元素,时间复杂度为O(n) 二分查找 从一个有序列表中查找某一元素是否存在的算法。搜索过程从数组的中间元素开始,如果中间元素正好是要查找的元素,则搜索过程结束;如果某一特定元素大于或者小于中间元素,则在数组大于或小于中间元素的那一半中查找,而且跟开始一样从 阅读全文
摘要:
获取镜像 命令:docker pull [选项] 镜像名 可通过 ”docker pull --help“ 命令来查看有哪些选项 docker pull training/webapp # python的app docker pull busybox # 集成了三百多个linux命令和工具的软件,简 阅读全文
摘要:
查看容器 命令:docker ps [options] options有: -a:查看所有容器,包含不在运行中的(不带-a参数,是只显示运行中的容器) -q:只显示容器ID -s:多加一列来显示总文件大小 -l:显示最近创建的容器(docker ps -l) -n:显示最近创建的n个容器(docke 阅读全文
摘要:
冒泡排序 O(n2) 思想 重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。这个算法的名字由来是因为越小(大)的元素会经由交换慢慢"浮"到数列的顶端。 图示 代码 选择排序 O(n2) 思想 遍 阅读全文
摘要:
我们通过四W(what,when, why, how)原则去学习一下docker What 什么是docker? docker是一种虚拟化技术,太过专业的术语这里不聊,反而容易乱。可以将其比作类似vmware的虚拟软件,一个docker容器里面可以包含一套完整的软件运行环境。 When 什么时候需要 阅读全文