GaGa's Blog

One GaGa, One World !

editcap 是 Wireshark 自带的一个非常强大的命令行工具,专门用于切分、转换和过滤 pcap/pcapng 抓包文件

如果你想切割大文件,主要有两种常用方式:按数据包数量”切割按时间间隔”切割


1. 按数据包数量切割

Read more »

Wireshark 会根据捕获到的网络流量,自动为你计算并展示与 TCP 流相关的时间差,这在分析网络延迟、性能瓶颈或排查异常时非常有用。

9fcf80d80086426e09ee290f80050474.png


数据逐行解析

Read more »

Stream index 的主要作用是逻辑分组。在一个网络抓包文件(pcap)中,可能同时存在成千上万个数据包,来自不同的设备、不同的应用。Wireshark 通过给每个独立的 TCP 或 UDP 会话分配一个独一无二的数字编号(从 0 开始递增),把属于同一个对话的数据包“打包”在一起

  • 追踪完整对话:点击这个字段,Wireshark 就能立刻知道这个包属于哪一次对话。
  • 方便过滤分析:你可以通过它快速过滤出这特定的一整组对话,排除其他无关流量的干扰。

1. 为什么它能精准定位特定tcp连接数据

Read more »

定向爬虫,核心就是:只抓取特定目标站点、特定栏目、特定数据字段的爬虫。

它和“全网搜索式爬虫”不同,目标非常明确,通常只关心这些问题:

  • 抓哪个网站
  • 抓哪些页面
  • 提取哪些字段
  • 如何保存结果

Scrapy 非常适合这种场景,因为它天生就是为规则清晰、结构化采集设计的。

Read more »

框架思维Framework Thinking本质是:

用结构化模型,将复杂问题拆解为“有边界、有层次、有关系”的可分析对象

它强调三个核心能力:

  • 抽象(Abstraction):从具体问题提炼共性
  • 结构化(Structuring):组织为层级/模块
  • 可复用(Reusable):形成稳定认知模板
Read more »

WSGI 是可靠、同步,而 ASGI 则是为了高并发和实时功能而生的现代、异步。


1.核心区别一览

特性 WSGI (Web Server Gateway Interface) ASGI (Asynchronous Server Gateway Interface)
执行模型 同步(一个线程同时只能处理一个请求) 异步(单个线程即可并发处理大量请求)
主要应用场景 传统 CRUD 应用、标准的 REST API 实时应用、WebSockets、长轮询、高并发场景
支持的协议 仅支持 HTTP 支持 HTTP、HTTP/2 以及 WebSockets
常见框架 Flask、Django(传统模式) FastAPI、Django Channels、Sanic、Starlette
常见服务器 Gunicorn、uWSGI Uvicorn、Daphne、Hypercorn
Read more »

uv 是由 Astral 推出的新一代 Python 包管理与运行工具,目标是替代传统组合:

  • pip
  • virtualenv / venv
  • pip-tools / poetry / pipenv(部分场景)

核心特点:

维度 uv
性能 极快(Rust实现,比pip快10~100倍)
依赖解析 类似 pip + pip-tools(支持锁定)
虚拟环境 内置管理
Python版本 支持自动下载管理
CLI统一性 单一工具覆盖开发全流程
Read more »

Flask 的演进从极简 Web内核 → 生态驱动的微框架→ 异步兼容 + 云原生适配


1.演进阶段拆解

1.1 初始阶段(2010 ~ 2013):微框架理念确立

Read more »

微服务(Microservices)是一种软件架构风格,它把一个大型应用拆分成多个小而独立的服务,每个服务只负责一个具体功能,并且可以独立开发、部署和运行。

一句话解释:

  • 以前:一个“大一统系统”(单体应用)
  • 现在:拆成很多“各司其职的小服务”

Read more »

需求

  • 同一仓库(repo相同,tag不同)保存最近7份image,删除多余的历史image

clean_docker_repo_tags.sh

您可以将此代码保存为 clean_docker_repo_tags.sh

Read more »

To clear out the unused build cachewithout disrupting anything currently running, use:

1
docker builder prune
  • What it does: It removes all dangling/unused build cache.
  • What happens: Docker will ask for a confirmation (y/N). Once confirmed, it deletes the cache and shows you exactly how much space was freed.
Read more »

1.gunicorn本质

gunicorn 配置:

1
worker_class = "uvicorn.workers.UvicornWorker"

本质是在 Gunicorn 作为 master 进程管理器 + Uvicorn 作为 ASGI worker 的组合模式。

Read more »
0%