自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(1104)
  • 收藏
  • 关注

原创 【云原生技术】Pod 的“创建时间”(metadata.creationTimestamp) ≠ “真正启动完成时间”

Pod 的“创建时间”(metadata.creationTimestamp) ≠ “真正启动完成时间”

2026-03-04 02:45:00 296

原创 【云原生技术】“路由条件集合”是什么

“路由条件集合”是什么

2026-03-04 00:45:00 184

原创 【云原生技术】 API 网关怎么知道集群异常?是不是 srpc 告诉它?心跳/探测窗口具体怎么来的?

# API 网关怎么知道集群异常?是不是 srpc 告诉它?心跳/探测窗口具体怎么来的?通常不是 srpcgw 主动“上报”给 API 网关,而是 API 网关自己做主动健康探测(health check),外加运行时的失败反馈。API 网关常见的判断“集群异常”的方式(可叠加)## 主动探测(心跳/健康检查)API 网关每隔 T 秒(比如 1s/5s/10s)对“某个目标”发探测请求:TCP 能否连通HTTP GET /health或者更轻量的 ping 类探测(取决于网关能力)连续失败

2026-03-03 03:00:00 251

原创 【云原生技术】Pod 里怎么会有 srpcsrv 进程?Pod 里有 srpcgw 吗?

Pod 里怎么会有 srpcsrv 进程?Pod 里有 srpcgw 吗?# Pod 里怎么会有 srpcsrv 进程?Pod 里有 srpcgw 吗?Pod 里有 srpcsrv 进程,通常来自两种部署方式Sidecar 容器:一个 Pod 里有两个容器:users 容器(业务)srpcsrv 容器(治理/注册/发现/心跳等)同容器多进程:在同一个容器里用 supervisor 等方式同时启动 users + srpcsrv(这种不如 sidecar 常见,但也有人用)你可以通过 kubec

2026-03-03 01:00:00 341

原创 【云原生技术】 Consul 健康检查怎么做?谁干的活?

Consul 健康检查怎么做?谁干的活?# Consul 健康检查怎么做?谁干的活?Consul 的健康检查常见也有三类,执行者略不同:## A. HTTP/TCP 主动探测Consul(或 Consul agent)定期去访问:HTTP:http://<Address>:<Port>/healthTCP:能不能连通 <Address>:<Port>结果写入 Consul:passing / warning / critical谁干活:Consul/Consul agent 主动去探测

2026-03-03 00:15:00 158

原创 【云原生技术】Pod 到底怎么注册到 Consul?谁干的活?

Pod 到底怎么注册到 Consul?谁干的活?

2026-03-02 02:30:00 252

原创 【云原生技术】“K8s 层面的流量与生命周期”指什么?

“K8s 层面的流量与生命周期”指什么?

2026-03-02 00:30:00 416

原创 【云原生技术】Pod 到底怎么注册到 Consul?谁干的活?

Pod 到底怎么注册到 Consul?谁干的活?“注册到 Consul”这件事一定是某个程序做的,常见三种模式:模式 1:Pod 里有 srpcsrv/agent(sidecar 或伴随进程)——最符合你们说法Pod 启动后,srpcsrv 进程拿到 Pod IP/端口/标签调用 Consul API 把这个实例注册进去并维持健康(TTL 心跳或配合健康检查)谁干活:Pod 内的 srpcsrv/agent模式 2:业务进程自己带注册能力(SDK 内置)应用启动后(比如 users 服务

2026-03-01 00:45:00 30

原创 【云原生技术】“K8s 层面的流量与生命周期”指什么?

“K8s 层面的流量与生命周期”指什么?

2026-03-01 00:15:00 29

原创 【云原生技术】“K8s 层面的流量与生命周期”指什么?

“K8s 层面的流量与生命周期”指什么?

2026-03-01 00:15:00 29

原创 【云原生技术】Exec 探针是什么?怎么用?举例

Exec 探针就是:Kubelet(K8s 节点上的组件)会进入容器里执行一条命令,根据命令的退出码判断健康:退出码 0:探针成功(健康)非 0:探针失败(不健康)它适合检查“HTTP 不好表达”的状态,比如:关键文件是否存在、进程是否卡死、依赖是否可用、内部脚本逻辑等。例子 A:readinessProbe(就绪探针)用 Exec场景:只有当应用完成初始化并生成 /tmp/ready 文件时才可接流量。yamlreadinessProbe: exec: command: [

2026-02-28 04:00:00 35

原创 【云原生技术】“srpcsrv 定期给 Consul 发心跳”指的是 Pod 还是谁?

“srpcsrv 定期给 Consul 发心跳”指的是 Pod 还是谁?

2026-02-28 00:30:00 33

原创 【云原生技术】srpcsrv 向 Consul 注册,具体怎么调用?

最常见是 Consul HTTP API(也可能是封装好的 SDK,但底层还是 HTTP)。典型调用就是向 Consul(或本机 consul agent)发:PUT /v1/agent/service/register注册内容会包含:服务名 Name实例 ID ID地址 Address端口 Port标签 Tags / 元数据 Meta健康检查 Checks(HTTP/TCP/TTL)另外在退出时会调用反注册:PUT /v1/agent/service/deregister/<

2026-02-27 01:45:00 34

原创 【云原生技术】srpcsrv 获取“我是谁、我在哪”,它是怎么拿到的?

2) srpcsrv 获取“我是谁、我在哪”,它怎么拿到的?常见来源(可能组合使用):“我是谁”(服务名/实例ID/环境标签)配置文件 / 环境变量(ConfigMap/Secret 注入)如 SERVICE_NAME=usersENV=xinchuang 或 ENV=normalPod 元数据(Downward API)Pod 名、Namespace、Node 名、Pod IP 等启动参数(启动命令行参数)“我在哪”(地址/端口)Pod IP:K8s 会把 Pod IP 注入环境变量

2026-02-27 00:30:00 151

原创 【云原生技术】pod应用进程启动,开始监听端口(例如 8080),是怎么监听的谁监听的?

1) 应用进程“监听端口”是谁在监听?Pod 需要探针吗?怎么探活?和 Consul 健康一样吗?端口监听是谁做的监听端口的是容器里的应用进程(比如 Java/Spring Boot、Go、C++ 服务进程)。典型就是应用调用操作系统 socket API(如 bind/listen),在容器网络命名空间里监听 0.0.0.0:8080(或指定地址)。Pod/容器本身不“监听”,它只是把进程跑起来;真正开端口的是进程。Pod 需要探针吗?强烈建议要(Kubernetes 原生的健康机制),通常

2026-02-26 01:00:00 343

原创 【云原生技术】pod启动后 ,有交易进来,srpcgw consul srpcsrv他们3个的交易链路到底是怎么样的,包括pod是怎么服务注册的

## 6) 你可以用 3 个“最小验证”判断链路是否正常(小白可操作的思路)1) **Consul 里能不能看到服务实例** - `users` 是否有 4 个实例(2 信创 + 2 非信创)? - Address 是不是你预期的 PodIP/端口? - Health 是否 passing?2) **srpcsrv 是否能查到正确的实例列表**(看 srpcsrv 日志/指标) - 查 `users` + env=xinchuang 返回几个?3) **srpcgw 是

2026-02-26 00:15:00 394

原创 【云原生技术】srpcsrv如何把pod注册到consul里面?

`srpcsrv`把 Pod “注册到 Consul”,本质是:**把“这个服务的一个实例(instance)”的信息写进 Consul 的 Catalog,并持续让它保持健康**。常见实现有两类,你们多半是其中一种。## 方式A:Pod 内有 `srpcsrv/agent`(sidecar 或随应用启动)### (1) 取到实例信息- 获取本实例的 **Pod IP**(从环境变量/Downward API/网卡)- 确定对外提供服务的 **端口**、**服务名**、**环境标签**(信创/非信

2026-02-25 15:18:44 758

原创 【数据库】sql的update语句怎么使用?

你用的是 MySQL 还是 PostgreSQL/SQL Server/Oracle?以及你想更新哪张表、什么条件、改哪些字段?我可以按你的场景给出最合适的写法。

2026-02-25 15:16:58 617

原创 【云原生技术】Pod 的“创建时间”(metadata.creationTimestamp) ≠ “真正启动完成时间”。想给用户看“启动时间”,一般要拆成至少两类时间,并明确口径;否则很容易误解。

Pod 的“创建时间”(metadata.creationTimestamp) ≠ “真正启动完成时间”。想给用户看“启动时间”,一般要拆成至少两类时间,并明确口径;否则很容易误解。

2026-02-19 03:15:00 1129

原创 【云原生技术】镜像 tag 固定不变**,那“部署后自动重启并且确保 Pod 真正起来”可以这样做:**调用 K8S API 对 Deployment 执行一次“滚动重启”**

镜像 tag 固定不变**,那“部署后自动重启并且确保 Pod 真正起来”可以这样做:**调用 K8S API 对 Deployment 执行一次“滚动重启”**

2026-02-19 00:15:00 381

原创 【云原生技术】Pod 列表新增时间字段:取值口径与获取方式

### Pod 列表新增时间字段:取值口径与获取方式(需求设计稿可直接用)下面给出 3 个时间字段的**定义、取值规则、数据来源(K8s API)、边界情况**。建议你在文档里把它们称为“创建时间 / 运行时间 / 就绪时间”,避免一个“启动时间”引发歧义。---## 1) 创建时间(CreatedAt)### 定义Pod 对象在 K8s 中被创建并持久化的时间。### 取值- `CreatedAt = pod.metadata.creationTimestamp`### 数据来

2026-02-19 00:15:00 537

原创 【云原生技术】`srpcsrv`把 Pod “注册到 Consul”,本质是:**把“这个服务的一个实例(instance)”的信息写进 Consul 的 Catalog,并持续让它保持健康**

`srpcsrv`把 Pod “注册到 Consul”,本质是:**把“这个服务的一个实例(instance)”的信息写进 Consul 的 Catalog,并持续让它保持健康**

2026-02-18 01:00:00 71

原创 【云原生技术】从 **Pod 启动 → 注册到 Consul → 一笔交易进来后的 srpcgw/srpcsrv/Consul 链路 → 负载均衡与容灾**

从 **Pod 启动 → 注册到 Consul → 一笔交易进来后的 srpcgw/srpcsrv/Consul 链路 → 负载均衡与容灾**

2026-02-18 00:30:00 449

原创 【云原生技术】应用进程“监听端口”是谁在监听?Pod 需要探针吗?怎么探活?和 Consul 健康一样吗?

应用进程“监听端口”是谁在监听?Pod 需要探针吗?怎么探活?和 Consul 健康一样吗?

2026-02-18 00:15:00 578

原创 【云原生技术】探针**就是:Kubelet(K8s 节点上的组件)会**进入容器里执行一条命令**,根据命令的退出码判断健康

探针**就是:Kubelet(K8s 节点上的组件)会**进入容器里执行一条命令**,根据命令的退出码判断健康

2026-02-17 02:30:00 1074

原创 【云原生技术】 Pod 启动后:如何注册到各自环境的 Consul(Address=Pod IP)

Pod 启动后:如何注册到各自环境的 Consul(Address=Pod IP)

2026-02-17 01:45:00 35

原创 【云原生技术】副本清0在重启的办法是什么?

副本清 0 再“重启”,本质就是:**把 `spec.replicas` 先改成 0(全部 Pod 退出)→ 等旧 Pod 全没了 → 再把 `spec.replicas` 改回原值**。你们是调用 K8S 接口实现部署,用 Java 做就是对 Deployment 做两次 Patch/Update。## 适用场景- 需要“强制全停再全起”(不是滚动更新)- 允许短暂中断(有停机窗口)- 遇到卡住的旧 Pod/进程需要彻底释放资源> 不建议作为常态发布方式(会造成全量中断)。---##

2026-02-17 00:30:00 415

原创 【云原生技术】API 怎么知道集群异常?是不是 srpc 告诉它?心跳/探测窗口具体怎么来的?

API 怎么知道集群异常?是不是 srpc 告诉它?心跳/探测窗口具体怎么来的?

2026-02-17 00:15:00 541

原创 【云原生技术】API 网关主动探测的通常是“域入口”(srpcgw),不是直接探测后端 Pod,也不是通过 srpcsrv/Consul 来判域健康

API 网关主动探测的通常是“域入口”(srpcgw),不是直接探测后端 Pod,也不是通过 srpcsrv/Consul 来判域健康

2026-02-16 02:30:00 334

原创 【云原生技术】git checkout --.什么意思

`git checkout -- .` 的意思是:**把当前目录(`.`)下所有已跟踪文件的修改丢弃**,恢复到上一次提交(或暂存区)里的状态。更具体地说:- `.`:表示当前目录及其子目录的所有文件 - `--`:把后面的 `.` 明确当作“路径”,避免和分支名混淆 - 效果:**撤销工作区(working tree)对已跟踪文件的改动**(包括对文件的修改、以及对已跟踪文件的删除)注意点:- **不会影响未跟踪文件**(新建但没 `git add` 的文件) - 是否影响暂存区

2026-02-16 02:15:00 40

原创 【云原生技术】客户端 → API网关 → 域选择(三选一)→ 域内 srpcgw 路由判定(usersKey+icms+users方法)→ srpcsrv 查 Consul 选健康实例 → srpcg

客户端 → API网关 → 域选择(三选一)→ 域内 srpcgw 路由判定(usersKey+icms+users方法)→ srpcsrv 查 Consul 选健康实例 → srpcgw 转发到 Pod/物理机实例 → 响应原路返回,并在图中标了API 探测 srpcgw、故障时间窗/摘除以及 Consul 的职责

2026-02-16 00:30:00 176

原创 【云原生技术】git checkout -- . 应该用在切分之前还是之后?

看你的目的:## 1) 想**丢弃本地改动**,让工作区干净再切分支用在**切分支之前**(最常见)。```bashgit checkout -- .# 或更推荐git restore .git switch <branch>```## 2) 想把这些改动**带到新分支**里继续做不要用它;应当**先切分支再提交/暂存**:```bashgit switch -c <new-branch># 然后 git add / git commit```## 3) 只是为了避免切分

2026-02-15 01:00:00 33

原创 【云原生技术】srpcgateway和srpcsrv是什么关系,分别作用是什么?

srpcgateway和srpcsrv是什么关系,分别作用是什么?

2026-02-15 00:45:00 614

原创 【云原生技术】要查这种“范围号段”(52051 到 52076),如果日志里就是纯数字串,最稳的是用正则把范围展开成可匹配的模式。

要查这种“范围号段”(52051 到 52076),如果日志里就是纯数字串,最稳的是用正则把范围展开成可匹配的模式。

2026-02-14 00:45:00 35

原创 【云原生技术】我想找一下日志里面有没有这些交易,固定格式交易流水号:523304、101680、630538、511588、800967、395560、152329、

如果你要在日志里按“交易流水号”批量查这些号,最实用的是两类办法:**grep(文件/本机)** 和 **kubectl logs(K8S 容器日志)**。核心思路是:把这些号码拼成一个正则一次性匹配。下面直接给你可复制的命令。---## 1) 在 Linux 日志文件里查(推荐)### 一次查全部流水号(扩展正则)```bashgrep -RInE '523304|101680|630538|511588|800967|395560|152329|125450|159833|982710

2026-02-14 00:15:00 52

原创 【云原生技术】Pod 启动后:如何注册到各自环境的 Consul(Address=Pod IP)

下面按你确认的前提(**信创/非信创各一套 Consul,各 2 个 Pod,Consul Address=Pod IP**)把全链路“定版”描述一遍。## 组件与边界- **非信创环境**:`API网关(入口)` → `非信创 srpcgw` → `非信创 srpcsrv` → `非信创 Consul` → `users 非信创 Pod(2个)`- **信创环境**:`API网关(入口)` → `信创 srpcgw` → `信创 srpcsrv` → `信创 Consul` → `users 信创

2026-02-13 11:22:01 533

原创 【云原生技术】容器部署操作完成之后,pod启动起来,srpcsrv就会把pod的IP注册到consul ,这句话对吗?

基本对,但要加几个前提/细化点才严谨:- **对的部分**:Pod 启动后(更准确说:应用进程就绪后),`srpcsrv` 会把该实例的可访问地址信息注册到 **Consul**,用于后续服务发现与负载均衡。- **需要补充的点**: 1) **不是“容器部署操作完成”就立刻注册**:通常要等应用监听端口起来,并且通过就绪/健康检查后才会被认为可用(否则会注册但很快标不健康,或延迟注册)。 2) **注册的不一定是 Pod IP**:有的会注册 **Pod IP:Port**,有的会注册 **

2026-02-13 00:45:00 297

原创 【云原生技术】srpcsrv = 发现(查 Consul)+ 过滤(按信创/健康等)+ 负载均衡(选 2 个 Pod 里的 1 个)+ 缓存/订阅(减少直打 Consul)

srpcsrv = 发现(查 Consul)+ 过滤(按信创/健康等)+ 负载均衡(选 2 个 Pod 里的 1 个)+ 缓存/订阅(减少直打 Consul)

2026-02-13 00:15:00 163

原创 【云原生技术】srpcsrv 在实时链路里通常有两种部署形态

srpcsrv 在实时链路里通常有两种部署形态

2026-02-12 12:28:08 153

原创 【云原生技术】srpcgw、srpcsrv和consul的关系,包括路由,负载均衡、服务注册、服务发现,流量、这些流程是怎么样的,可以举一个例子,比如发画面交易之后的整个流程是什么样的? 应用是容器部

srpcgw、srpcsrv和consul的关系,包括路由,负载均衡、服务注册、服务发现,流量、这些流程是怎么样的,可以举一个例子,比如发画面交易之后的整个流程是什么样的? 应用是容器部署的,分为信创和非信创环境的容器,每个集群的环境有2个pod

2026-02-12 12:26:55 337

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除