12 2020 档案
摘要:一. 背景 通过使用scp,可以直接将一台linux服务器上的文件或目录拷贝到另外一个linux服务器上。 前提条件是: (1) 两台 linux 服务器在网络上可通; (2) 两台 linux 服务器 都安装了 ssh,可以使用 ssh 连接; 二. 知识 完整的知识说明可见 :https://w
阅读全文
摘要:一、背景 当后台服务被安装在linux操作系统上,出现某些问题时,可能需要通过抓数据包的形式,分析接口调用传送返回的数据等,甚至以此判断接口是否调用成功或是否存在丢包的情况。基于此,本文阐明使用 tcpdump 来进行基本的抓包和分析。 二、知识点 1、常用选项 (1) 抓包选项 -c:指定要抓取的
阅读全文
摘要:一、替换 1、简单替换 sed 's/正则表达式/替换后的内容/g' “g”:表示全局替换 这个替换之后仅会写入缓存中,并不会持久化保存下来 2、从文件匹配,替换后写入文件 sed -i 's/正则表达式/替换后的内容/g' file 这个表示从 file 文件中进行匹配和替换 3、复杂匹配替换 s
阅读全文
摘要:1、比较 (1) 相等不等比较 temp1="1" temp2="2" if temp1 != temp2: print("temp1 != temp2") else: print("temp1 == temp2") temp1="1" temp2="2" if temp1 == temp2: pr
阅读全文
摘要:一、背景 项目中大量的服务会依赖redis,为保证系统正常,redis 对外提供的服务必须正常。因此 redis 需要高可用。目前 redis 提供的高可用方案如下: (1) redis 哨兵模式 实现 redis 主备 (2) keepalived + redis 实现主备 对于性能,使用分片模式
阅读全文
摘要:一、背景 在服务单部署的场景下,服务使用内存来缓存数据。该服务进行分布式部署时,为了保证多个服务实例数据一致性,此时需要使用到开源缓存软件。本文案例使用了 redis 开源软件。 二、操作 1、下载 在官网 https://redis.io/download 下载 redis-6.0.9.tar.g
阅读全文
摘要:一、背景 mitmproxy 可以当作抓包工具也可以当作是代理,其具体能力如下: (1) 支持SSL/TLS的HTTP/1、HTTP/2、WebSockets 请求拦截 ; (2) 对拦截的 HTTP 请求支持修改(使用python脚本接入 mitmproxy API); (3) 保存 HTTP 对
阅读全文
摘要:一. 背景 进行业务代码编写的时候,常常会出现两条线,但是两条线的大部分逻辑相同,仅是部分逻辑不一样。此时若使用一个class或一条线,针对不同的逻辑就必须要 if-else 来编写。这种编写方式的弊端:后续若再次出现一条线和已有的两条线大部分逻辑相同,仅有部分逻辑不一样,此时又需要在已有的代码中增
阅读全文
摘要:一、背景 一般情况下会认为 maven 是给Java工程使用的,但实际并不是,一个程序由多方构成,包括:自己编写的程序代码、依赖的第三方程序(可能是jar、可能就是一个二进制文件、或这个C++库等),基于此,自己编写的程序可以直接通过 maven依赖将自己需要的第三方程序自动加载到本地。 二、场景
阅读全文