博客主页 所有文章 标签 技术支持 关于我
img

jacinli

Python / Web

jacinli

blog

Welcome


  • 博客主页
  • 所有文章
  • 标签
  • 技术支持
  • 关于我
  1. 从 Alpha 到 Final:Python 各阶段版本到底该怎么用?

    主流的 Python 是由Python Software Foundation(PSF,Python 软件基金会)主导的: PSF 是一个 非营利组织 负责维护 Python 官方语言规范、标准库、社区基础设施 它主导的实现版本是我们日常使用的: CPythonPython 的版本阶段(版本周期)。这些阶段是官方正式定义的,适用于每一个 Python 主版本(比如 3.12、3.13、3.14…)🧠 Python 版本的四大阶段Python 每个主版本都会经历以下 四个阶段: ...…

    2025-06-12
    python
    阅读全文 »

  2. gRPC 使用(python 版本)

    .proto 文件.proto 文件 是 gRPC 和 Protocol Buffers 的接口定义文件,它描述了: 要传递什么数据(也就是消息体 message)。 要暴露什么接口(也就是服务 service 和它们的 方法)。也就是一份规范文件,让客户端和服务端能按照相同的约定相互通信。my_service.protosyntax = "proto3"; // 指定使用 proto3 语法版本package demo; // 包名,方便生成代码时分模块service ...…

    2025-06-11
    网络
    阅读全文 »

  3. gRPC 相关介绍

    介绍依赖两大技术 HTTP/2 作为传输协议 gRPC 底层用 HTTP/2,它支持: 多路复用(在一条 TCP 连接中并行传输多个请求和响应) 二进制传输(更紧凑、高效) 流式传输(客户端流、服务端流、双向流) 相比传统 HTTP/1.1 的请求-应答模式,HTTP/2 能实现长连接、减少延迟。 Protocol Buffers(Protobuf)...…

    2025-06-10
    网络
    阅读全文 »

  4. 阿里云差点被‘劫持’?你必须懂的 DNS 知识!

    背景阿里云的重要域名 aliyuncs.com 的注册状态异常,部分 DNS 查询失败,引发广泛关注。 aliyuncs.com 是阿里云用于 对象存储 OSS、CDN、SLB 负载均衡等服务 的关键域名。 该域名由阿里云旗下子公司持有,但注册商并非阿里自营,而是第三方(如 GoDaddy、Sedo 代理的 Name.com)。 因为管理或续费疏忽,域名一度转为“待售”状态,这被视为严重的安全漏洞。 并非 DNS 劫持、也没有遭到黑客攻击,而是由于“域名过期 + 未及时续费”引发的...…

    2025-06-08
    网络
    阅读全文 »

  5. go channel 用法

    介绍channel 在 Go 中是一种专门用来在 goroutine 之间传递数据的类型安全的管道。你可以把它理解成: 多个 goroutine 之间的“传话筒”,谁往通道里塞东西,另一个 goroutine 就能接收到。Go 语言采用 CSP(Communicating Sequential Processes) 模型,也就是鼓励: 💡 “不要通过共享内存来通信,而要通过通信来共享内存”也就是通过 channel 来传递数据,而不是多个 goroutine 同时操作一份共享数据,这样...…

    2025-06-03
    go
    阅读全文 »

  6. go里面的指针

    指针在 Go 中,指针(pointer)是一个变量的内存地址,就像 C 语言那样:a := 10p := &a // p 是一个指向 a 的指针fmt.Println(*p) // 输出 10,通过指针解引用• &a 表示获取变量 a 的地址 p 表示通过地址访问对应的值 特性 C 语言 Go 语言 指针声明 int *p var p *int 指针...…

    2025-06-01
    go
    阅读全文 »

  7. gorm 配置数据库

    介绍GORM 是 Go 语言中最流行的 ORM(对象关系映射)库之一,基于数据库操作的封装,提供类似 Django ORM / SQLAlchemy 的开发体验。 特性 描述 支持多种数据库 MySQL、PostgreSQL、SQLite、SQL Server、ClickHouse 等 自动迁移 自动根据 struct 生成数据库表结构 CRUD 操作简...…

    2025-05-31
    go
    阅读全文 »

  8. mysql错误码 2013 解决方案

    以下的方案是 脚本运行场景下 是一个非常合理的 轻量级连接管理方案。【不是特定接口下,而是面对长时间地读写数据库的脚本操作】有很多时候 有这样的情况发生,就是用脚本去爬某个服务,需要持续不断地写数据库,但是运行一段时间后出现了这样的错误:(2013, 'Lost connection to MySQL server during query')这是 MySQL 客户端(例如 Python、Go、Django、GORM 等)在执行 SQL 期间与 MySQL 服务端的连接中断,是 MySQL...…

    2025-05-26
    数据库
    阅读全文 »

  9. docker部署 gin

    编译与执行 ✅「静态编译语言 + 生成原生二进制文件 + 操作系统直接执行」Go 语言之所以在工程部署场景中大受欢迎的核心优势:它直接编译成原生二进制可执行文件(binary executable)。🔧 Go 是“静态编译语言”(编译型 + 静态链接)go build -o myapp main.goGo 会做三件事: 编译你的 .go 代码为机器码(CPU 可执行指令) 静态链接所有标准库、依赖库(打包进一个文件里) 生成一个二进制文件,比如 myapp(Linux/macOS)...…

    2025-05-26
    go
    阅读全文 »

  10. gin 常见中间件配置

    这里主要配置 请求日志中间件、跨域中间件、trace_id 中间件、安全头中间件一般来说,这个中间件的信息 就是放在 middlewares/* 里面的*.go 进行操作➜ middlewares git:(main) tree .├── cors.go├── logging.go├── request_id.go└── security.go1 directory, 4 files➜ middlewares git:(main) 安全头中间件middlewares/security...…

    2025-05-25
    go
    阅读全文 »

  11. gin 框架?

    gin 本人脚手架 github 地址: https://github.com/jacinli/gin-api-template介绍Gin 是一个用 Go(Golang)编写的高性能 Web 框架,以其 轻量、快速、优雅 而受到 Go 开发者广泛欢迎。它的 API 类似于 Python 的 Flask 和 Node.js 的 Express,非常适合用来构建 RESTful API 服务、微服务接口,甚至是中小型网站。✅ Gin 的核心优势 特性 说明 ...…

    2025-05-24
    go
    阅读全文 »

  12. go环境搭建

    下载对应版本的 go 版本https://go.dev/dl/配置 vim ~/.zshrcexport GOROOT=/usr/local/goexport PATH=$PATH:$GOROOT/binsource ~/.zshrc>>>>>> go versiongoland 配置:🔍 一、什么是GOPATH?GOPATH 是旧的项目结构管理方式(Go Modules 出现前),它要求所有代码必须放在 $GOPATH/src 目录下,并通过 go g...…

    2025-05-23
    go
    阅读全文 »

  13. 多角色多端状态控制与锁控制

    抽象场景描述在实际业务系统中,我们经常遇到同一条数据记录被多个角色、多个客户端并发操作的情况。典型如“内容审核”、“任务状态更新”、“订单流转”等场景。本案例抽象为以下数据模型:id | user_id | word | review_status | review_opinion | review_user_id这张表用于记录用户提交的内容(word),由后台审核人员进行审核处理,审核状态存储在 review_status 字段,审核意见写入 review_opinion,而 revie...…

    2025-05-15
    编程场景设计
    阅读全文 »

  14. 乐观锁和悲观锁

    悲观锁(Pessimistic Lock)✅ 核心思想:始终假设最坏的情况:别人一定会修改数据,所以每次读写都会加锁,确保操作安全。在读数据时就加锁,防止其他事务修改这条数据,确保当前事务后续的操作(尤其是写)是安全的。悲观锁就是 “读时加锁,确保写时没有并发冲突”,必须配合事务使用,先查锁定,后更新提交,这是它的核心机制。🛠 实现方式: 数据库层面的锁(如行锁、表锁)SELECT * FROM user WHERE id = 1 FOR UPDATE;该语句会对 id=1 的行加行锁(...…

    2025-05-14
    数据库
    阅读全文 »

  15. mysql中的锁

    什么是“锁”? *锁(Lock)**是数据库为保证多用户并发访问数据时,数据的一致性与完整性而采取的一种机制。 就像你在一个文档上修改,防止别人同时修改冲突,给它上锁数据库主要有两类锁: 分类 子类型 简要说明 物理层锁 表锁、行锁、页锁 作用于数据“位置” 逻辑层锁 乐观锁、悲观锁 作用于“逻辑业务”,一般由程序实现 ✅ 1. 表锁(...…

    2025-05-12
    数据库
    阅读全文 »

  16. 什么是Rosetta?

    Apple 提供的「动态二进制翻译器」,让基于 Intel 的 x86_64 应用/二进制在 Apple Silicon(M1/M2/M3,ARM 架构)上运行 项目 说明 🧠 Rosetta 2 是 Apple 提供的一种「Intel → ARM 翻译器」 🖥️ 功能 让你的 ARM 芯片(如 M1/M2/M3)运行原本只支持 Intel x86 架构的程序 ...…

    2025-05-02
    工具使用
    阅读全文 »

  17. rocketmq 环境配置[python]

    M1 芯片 本地运行 rocketmqrocketmq Python 开源地址:https://github.com/apache/rocketmq-client-python因为需要 linux c/c++ libs包,官方只给出了centos ,debain,macOS 配置信息终端使用 brew install wget 命令 【注意代理/或开启 tun 模式】•  x86_64 架构的 librocketmq.dylibwget <https://github.com/apa...…

    2025-05-01
    消息队列
    阅读全文 »

  18. python 搜索模块解析

    (Module Resolution / sys.path 搜索机制)介绍当你运行:python a.pyPython 会依次在以下路径中查找模块:✅ 查找顺序是  sys.pathimport sysprint(sys.path)[ '', # 当前工作目录(或脚本目录) '/your/project/path', # 执行时添加的路径(如 PYTHONPATH) '/usr/local/lib/python3.x/site-pa...…

    2025-04-28
    python
    阅读全文 »

  19. cdn是什么?

    内容分发网络,Content Delivery Network介绍 CDN(Content Delivery Network)是一种将内容分发到靠近用户的边缘服务器,以加速访问速度、减少延迟、降低源站压力的网络系统。CDN 把网站的静态资源(如 HTML、JS、CSS、图片、视频等)缓存在全球各地的边缘节点服务器上,用户访问内容时,不再请求源站服务器,而是就近从边缘节点获取资源,实现更快加载。 图片、视频、CSS、JS、网页 文件下载、直播流媒体、API 返回结果(某些场景下) ...…

    2025-04-23
    网络
    阅读全文 »

  20. 邮件协议、签名与推送

    协议 协议 全称 作用 方向 端口 是否仍常用 SMTP Simple Mail Transfer Protocol 发送邮件 客户端 ➜ 邮件服务器;服务器 ➜ 服务器 25 / 465(SSL)/ 587(STARTTLS) ✅ 非常常用 POP3 Post Office Protocol v3 ...…

    2025-04-17
    工具使用
    阅读全文 »


1 / 4 更早 →
  • RSS

Copyright © jacinli 2025 Theme by leopardpan |

本站总访问量 次