单元测试工具Mockito 为什么使用Mockito项目中代码需要进行单元测试。测试人员用黑盒测试的软件功能,无法完全覆盖代码中的逻辑,所以要有代码的单元测试。 spring 的单元测试有以下缺点: 1.每次执行测试方法都必须启动spring容器。当项目规模较大、配置较为复杂时,会很慢。 2.如果使用数据库如mysql, 还会涉及插入数据、数据库自增ID增加问题、bug引起的大量脏数据 3.如果使用数据库,需要根据ID查询数 2023-07-27 java #java
趣谈网络协议19HTTPDNS 传统DNS存在哪些问题?1.域名缓存问题不是每一个请求,它都会去访问权威 DNS 服务器,而是访问过一次就把结果缓存到自己本地,当其他人来问的时候,直接就返回这个缓存数据。这时候缓存数据已经过期。 有的运营商会把一些静态页面,缓存到本运营商的服务器内,当页面更新,用户会访问到老的页面。 再就是本地的缓存,往往使得全局负载均衡失败,因为上次进行缓存的时候,缓存中的地址不一定是这次访问离客户最近的地方 2023-07-17 网络协议 #网络协议
趣谈网络协议20CDN CDN全球有这么多的数据中心,无论在哪里上网,临近不远的地方基本上都有数据中心。是不是可以在这些数据中心里部署几台机器,形成一个缓存的集群来缓存部分数据,那么用户访问数据的时候,就可以就近访问了。 这些分布在各个地方的各个数据中心的节点,就称为边缘节点。 由于边缘节点数目比较多,但是每个集群规模比较小,不可能缓存下来所有东西,因而可能无法命中,这样就会在边缘节点之上。有区域节点,规模就要更大,缓存 2023-07-17 网络协议 #网络协议
趣谈网络协议21数据中心 数据中心数据中心里面也有一大堆的电脑,数据中心里面是服务器。服务器被放在一个个叫作机架(Rack)的架子上面。 数据中心的入口和出口也是路由器,由于在数据中心的边界,就像在一个国家的边境,称为边界路由器(Border Router)。为了高可用,边界路由器会有多个。 数据中心的边界路由器会连接多个运营商网络。 既然是路由器,就需要跑路由协议,数据中心往往就是路由协议中的自治区域(AS)。数据中心里 2023-07-17 网络协议 #网络协议
趣谈网络协议18DNS DNS根据前面的学习,互联网上访问是要用IP的。但是用IP非常的不容易记。所以就出现了用域名来访问。域名转换为IP过程叫做域名解析。 做转换工作的服务器是DNS服务器。 DNS 服务器,一定要设置成高可用、高并发和分布式的。 DNS层级结构: 根 DNS 服务器 :返回顶级域 DNS 服务器的 IP 地址 顶级域 DNS 服务器:返回权威 DNS 服务器的 IP 地址 权威 DNS 服务器 :返 2023-07-14 网络协议 #网络协议
趣谈网络协议16流媒体协议 流媒体协议视频其实就是快速播放一连串连续的图片。 每一张图片,我们称为一帧。只要每秒钟帧的数据足够多,也即播放得足够快。比如每秒 30 帧,以人的眼睛的敏感程度,是看不出这是一张张独立的图片的,这就是我们常说的帧率(FPS)。 每一张图片,都是由像素组成的,假设为 1024*768(这个像素数不算多)。每个像素由 RGB 组成,每个 8 位,共 24 位。 我们来算一下,每秒钟的视频有多大?30 2023-07-12 网络协议 #网络协议
趣谈网络协议17文件下载协议 文件下载协议HTTP通过浏览器下载的时候,只要文件稍微大点,下载的速度就奇慢无比。无法断点续传。 FTP文件传输协议。 FTP 采用两个 TCP 连接来传输一个文件。 控制连接:服务器以被动的方式,打开众所周知用于 FTP 的端口 21,客户端则主动发起连接。该连接将命令从客户端传给服务器,并传回服务器的应答。常用的命令有:list——获取文件目录;reter——取一个文件;store——存一个文 2023-07-12 网络协议 #网络协议
趣谈网络协议14HTTP HTTP看新闻,使用浏览器访问http://www.163.com。 http://www.163.com是个 URL,叫作统一资源定位符。之所以叫统一,是因为它是有格式的。HTTP 称为协议,www.163.com 是一个域名,表示互联网上的一个位置。有的 URL 会有更详细的位置标识,例如 http://www.163.com/index.html 。正是因为这个东西是统一的,所以当你把这样一 2023-07-11 网络协议 #网络协议
趣谈网络协议15HTTPS HTTPShttp协议是明文转输内容不安全。 不安全一般思路就是加密。 加密一种是对称加密,一种是非对称加密。 对称加密算法相比非对称加密算法来说,效率要高得多,性能也好,所以交互的场景下多用对称加密。 对称加密在对称加密算法中,加密和解密使用的密钥是相同的。也就是说,加密和解密使用的是同一个密钥。 如果要用于HTTP协议,需要线下转输。但是客户端用户很多,不现实。 非对称加密在非对称加密算法中, 2023-07-11 网络协议 #网络协议
趣谈网络协议13Socket SocketSocket 这个名字很有意思,可以作插口或者插槽讲。虽然我们是写软件程序,但是你可以想象为弄一根网线,一头插在客户端,一头插在服务端,然后进行通信。所以在通信之前,双方都要建立一个 Socket。 在网络层,Socket 函数需要指定到底是 IPv4 还是 IPv6,分别对应设置为 AF_INET 和 AF_INET6。另外,还要指定到底是 TCP 还是 UDP。还记得咱们前面讲过的 2023-07-11 网络协议 #网络协议