欢迎光临
我们一直在努力

2020年04月的文章

Redis

线上Redis禁止使用Keys正则匹配操作

admin阅读(1133)评论(0)赞(1)

一个新闻 新闻内容如下: PHP工程师执行redis keys \* 导致数据库宕机 某公司技术部发生2起本年度PO级特大事故,造成公司资金损失400万,原因如下: 由于PHP工程师直接操作上线redis,执行 keys * wxdb(此处...

一篇带你读懂TCP之“滑动窗口”协议-IT技术资讯
TCP

一篇带你读懂TCP之“滑动窗口”协议

admin阅读(995)评论(0)赞(0)

前言 你现在的努力,是为了以后有更多的选择。 在上一篇文章通过“表白”方式,让我们快速了解网络七层协议 了解了网络七层协议。 接下来我们要把重心放在网络传输的可靠性上面。一起来看TCP协议,它是如何解决网络传输不可靠的问题。这其中有个很关键...

TCP传输慢问题分析-IT技术资讯
TCP

TCP传输慢问题分析

admin阅读(1668)评论(0)赞(0)

对于网络传输慢问题的处理一直是一个难题,一来可能和配置有关二来可能和网络环境有关,很多时候只是从防火墙这方面去定位网络传输慢的现象着实不容易,下面就这类问题,我整理了一些解决思路,以后各位看官在遇到这样的问题的时候可以参考。 在提出解决方案...

TCP拥塞控制机制之慢启动-IT技术资讯
TCP

TCP拥塞控制机制之慢启动

admin阅读(1896)评论(0)赞(0)

什么是慢启动 最初的TCP的实现方式是,在连接建立成功后便会向网络中发送大尺寸的数据包,假如网络出现问题,很多这样的大包会积攒在路由器上,很容易导致网络中路由器缓存空间耗尽,从而发生拥塞。因此现在的TCP协议规定了,新建立的连接不能够一开始...

解析TCP之滑动窗口(动画演示)-IT技术资讯
ithothub

解析TCP之滑动窗口(动画演示)

admin阅读(1263)评论(0)赞(1)

概述 滑动窗口实现了TCP流控制。首先明确滑动窗口的范畴:TCP是双工的协议,会话的双方都可以同时接收和发送数据。TCP会话的双方都各自维护一个发送窗口和一个接收窗口。各自的接收窗口大小取决于应用、系统、硬件的限制(TCP传输速率不能大于应...

TCP滑动窗口-IT技术资讯
TCP

TCP滑动窗口

admin阅读(924)评论(0)赞(0)

  滑动窗口协议(Sliding Window Protocol),属于TCP协议的一种应用,用于网络数据传输时的流量控制,以避免拥塞的发生。该协议允许发送方在停止并等待确认前发送多个数据分组。由于发送方不必每发一个分组就停下来等...

TCP 滑动窗口-IT技术资讯
TCP

TCP 滑动窗口

admin阅读(1029)评论(0)赞(0)

作用: 提供TCP可靠性:对发送的数据进行确认 流量控制:窗口大小随链路变化 一、TCP窗口机制 TCP中窗口大小是指tcp协议一次传输多少个数据。因为TCP是一个面向连接的可靠的传输协议,既然是可靠的就需要传输的数据进行确认。TCP窗口机...

为什么 MySQL 的自增主键不单调也不连续-IT技术资讯
MySQL

为什么 MySQL 的自增主键不单调也不连续

admin阅读(990)评论(0)赞(1)

为什么这么设计(Why’s THE Design)是一系列关于计算机领域中程序设计决策的文章,我们在这个系列的每一篇文章中都会提出一个具体的问题并从不同的角度讨论这种设计的优缺点、对具体实现造成的影响。如果你有想要了解的问题,可以在文章下面...

Go 语言 2019 调查报告发布-IT技术资讯
golang

Go 语言 2019 调查报告发布

admin阅读(841)评论(0)赞(4)

Go 官方博客昨日公布了 2019 年 Go 语言调查报告。本次调查收到的回复达到 10,975 份,约为去年的两倍。 这些受访者的反馈意见将被选取用于改进 Go 语言的发展。 以下是 2019 年度的调查报告摘要: 此调查中,受访者的受众...

测试

自动化测试-句柄切换以及判断

admin阅读(977)评论(0)赞(0)

本文来介绍如何处理driver在多窗口之间切换,想一下这样的场景,在页面A点击一个连接,会触发在新Tab或者新窗口打开页面B,由于之前的driver实例对象在页面A,但是你接下来的脚本是操作页面B的元素,这样就造成了找不到元素的报错。本来介...

github

利用 Github 网络钩子实现自动化部署

admin阅读(1224)评论(0)赞(1)

GitHub 的网络钩子(webhook)功能,可以很方便的实现自动化部署。本文记录了使用 Node.js 的开发部署过程,当项目的 master 分支被推时,将在服务器进行自动部署,完整代码见 GitHub 添加网络钩子 在 GitHub...

利用Python库Scapy解析pcap文件-IT技术资讯
Python

利用Python库Scapy解析pcap文件

admin阅读(1999)评论(0)赞(0)

每次写博客都是源于纳闷,python解析pcap这么常用的例子网上竟然没有,全是一堆命令行执行的python,能用吗?玩呢? pip安装scapy,然后解析pcap: import scapy from scapy.all import *...

白话火焰图-IT技术资讯
Linux

白话火焰图

老王阅读(1052)评论(0)赞(3)

很多人感冒发烧的时候,往往会模仿神农氏尝百草的路子:先尝尝抗病毒的药,再试试抗细菌的药,甭管家里有什么药挨个试,什么中药西药,瞎猫总会碰上死耗子,如此做法自然是不可取的,正确的做法应该是去医院验个血,确诊后再对症下药。 让我们回想一下我们一...

史上最LOW的在线DDL解决方案-IT技术资讯
PostgreSQL

史上最LOW的在线DDL解决方案

老王阅读(1384)评论(0)赞(1)

说起在线 DDL,最常见的操作莫过于在线加一个字段或者索引,不过如果数据量比较大的话,伴随而来的往往是长时间的等待,更要命的是系统在操作期间很可能会出现不可用的情况,所以一般只能等到凌晨操作,简直就是梦魇一般的存在。   在 Po...

实战Pinba-IT技术资讯
监控

实战Pinba

老王阅读(919)评论(0)赞(2)

谁都知道监控系统很重要,但是要自己搭建一套好用的系统却不是一件简单的事情。国内已经有不少厂商提供类似的服务,比如:OneAPM、听云,其原理就是通过在服务器上部署一套探针,把数据汇总上报,但是问题却不像说起来这么简单,我曾经买过国内某个厂商...

php

一个PHP实现的ID生成器

老王阅读(980)评论(0)赞(4)

通常来说,不管使用什么数据库,表里都有一个名为 id 的主键,既然是主键,那么必然要满足唯一性,对于 MySQL 用户来说,它多半是一个 auto_increment 自增字段,也有一些别的用户喜欢使用 UUID 做主键,不过对 MySQL...

关于FIN_WAIT2-IT技术资讯
TCP

关于FIN_WAIT2

老王阅读(1571)评论(0)赞(1)

前些天,有朋友问我关于 FIN_WAIT2 的问题:如果主动关闭的一方在进入 FIN_WAIT2 状态后没有收到被动关闭的一方发送的 FIN 包,那么会怎样?   让我们热热身,通过一张旧图来回忆一下 TCP 关闭连接时的情况: ...

Linux

如何判断GCC的版本

老王阅读(1803)评论(0)赞(2)

我说的 GCC 版本可不是指的「gcc –version」,而是指的上到 Linux 内核,下到 PHP 之类的软件,是用哪个版本的 GCC 编译的。   先看看如何判断 Linux 内核是用什么版本的 GCC 编译的? shel...

Linux

记录一个多核CPU负载不均衡问题

老王阅读(1580)评论(0)赞(3)

昨晚和一位读者朋友讨论了一个问题:在一台多核 CPU 的 Web 服务器上,存在负载不均衡问题,其中 CPU0 的负载明显高于其它 CPUx,进一步调查表明 PHP-FPM 的嫌疑很大。话说以前我曾经记录过软中断导致过类似的问题,但是本例中...

线上服务CPU100%问题快速定位实战-IT技术资讯
Linux

线上服务CPU100%问题快速定位实战

admin阅读(883)评论(0)赞(4)

功能问题,通过日志,单步调试相对比较好定位。   性能问题,例如线上服务器CPU100%,如何找到相关服务,如何定位问题代码,更考验技术人的功底。   58到家架构部,运维部,58速运技术部联合进行了一次线上服务CPU问...

Redis使用规范-IT技术资讯
Redis

Redis使用规范

admin阅读(842)评论(0)赞(0)

一、键值设计 1、key名设计 可读性和可管理性 以业务名(或数据库名)为前缀(防止key冲突),用冒号分隔,比如业务名:表名:id 简洁性 保证语义的前提下,控制key的长度,当key较多时,内存占用也不容忽视,例如: 不要包含特殊字符 ...

EAV or JSON-IT技术资讯
JSON

EAV or JSON

老王阅读(995)评论(0)赞(3)

MongoDB 之类的 NoSQL 之所以流行,很大程度上取决于相对自由的 schema 设计,不管数据量多大,可以随时在线上环境添加新字段来保存新数据,而这种能力恰恰是传统的关系数据库所欠缺的,不过别担心,传统关系数据库有自己的应对之道。...

如何正确发布PHP代码-IT技术资讯
php

如何正确发布PHP代码

老王阅读(1336)评论(0)赞(4)

几乎每一个 PHP 程序员都发布过代码,可能是通过 ftp 或者 rsync 同步的,也可能是通过 svn 或者 git 更新的。一个活跃的项目可能每天都要发布若干次代码,但是现实却是很少有人注意其中的细节,实际上这里面有好多坑,很可能你就...

PostgreSQL Partial Index-IT技术资讯
PostgreSQL

PostgreSQL Partial Index

老王阅读(977)评论(0)赞(1)

说起「Partial Index」,估计很多人没听说过。在 PostgreSQL 中,它的含义是指:通过查询条件索引选定的行,而不是所有的行。虽然 MySQL 也有此概念,但是其更接近前缀索引的含义:比如你想索引一个 VARCHAR(255...

记几个常见的Laravel报错-IT技术资讯
php

记几个常见的Laravel报错

老王阅读(1120)评论(0)赞(2)

我已经用了一段时间的 Laravel 框架了,期间遇到了不少问题,有一些调试起来着实不太容易,本文筛选出几个,如果能让大家少走一些弯路,那我就算没白写。   报错:「Can’t swap PDO instance while wi...

被黑了-IT技术资讯
安全

被黑了

老王阅读(987)评论(0)赞(3)

话说从前些天开始,我的某台服务器不时会出现外网访问响应速度变慢的情况,不过内网访问倒是一直正常。因为并不是核心服务器,所以一开始我便忽略了监控报警,但是随着服务器的可用性越来越差,我不得不腾出手来看看到底发生了什么。   既然是网...