fastapi实现vllm离线推理 本次案例 vllm 结合 transformers 的 AutoTokenizer 来加载本地模型进行推理。支持异步流式返回生成的文本优化后的代码示例:import loggingfrom fastapi import FastAPI, HTTPExceptionfrom fastapi.responses import StreamingResponsefrom pydantic import BaseModelfrom vllm import LLM, SamplingParamsfrom
k8s service如何实现流量转发 对于每个后端 Pod,kube-proxy 都会为其创建一个 KUBE-SEP-* 链(Service Endpoint 链),这些链中的规则负责将目标地址转换为对应 Pod 的 IP 和端口。在 NAT 表中的 PREROUTING 链和 OUTPUT 链(用于本节点流量),创建规则来匹配目标 IP 为 app1 服务的流量,并引导到一个服务链,如 KUBE-SVC-XXXXXX。目前k8s上创建一个service指向后端 3副本的 deployment,具体是如何实现流量转发到pod的。
prometheus高可用解决方案(VictoriaMetrics ) 数据去重的目的是处理多个 Prometheus 实例同时采集同一组指标数据的情况,防止在查询时出现重复的时间序列。在使用 VictoriaMetrics 时,数据去重通常是在查询时进行的,而不是在写入时。VictoriaMetrics 支持通过配置标签的方式来实现数据去重,从而保证在从多个 Prometheus 实例收集数据时,查询结果不会出现重复数据。VictoriaMetrics 可以从多个 Prometheus 实例接收数据,并根据配置进行去重,确保数据的一致性;配置远程写入(两个节点都要配置)
python异步调用ansible sdk 最近有个需求,运维平台(python+vue开发的)需要做一个批量任务功能,打算采用ansible_runner这个sdk去实现。选型:由于在生产中我们往往需要并发执行多种任务,且需要实时观测执行的进度,所以采用run_async方法做开发。功能需求:前端选择 需要执行的playbook,选择需要执行的主机,然后运行任务,并且实时返回结果。run_async:异步执行,调用该方法后不会阻塞,playbook 会在后台运行;run: 同步执行,调用该方法后会阻塞,直到 playbook 执行完成;
mysql服务器CPU利用率过高排查 监控平台告警mysql服务器CPU利用率过高。当时第一反应是平时的CPU利用率一直都在50%以下,怎么会突然过高呢?怀疑是有某些sql语句导致的。总结:通过利用率过高的mysql线程id找到 对应的执行sql ,然后通过EXPLAIN去优化查询语句。记录高CPU利用率的线程ID,例如:12345。2、使用top查找高CPU利用率的线程ID。看到有一条长sql执行了2min还没结束。结论:是这条sql导致的CPU利用率过高。1、通过ps命令查找mysql进程ID。3、找到线程对应的sql语句。
如何优化高并发TCP链接中产生的大量的TIME_WAIT的状态(nginx) 在 TCP 连接的生命周期中,TIME_WAIT 是连接终止过程中的一个状态TIME_WAIT 状态有两个主要目的:1、确保最后一个 ACK 包的可靠传输2、允许旧的重复数据包消失。
linux 编译部署python环境 由于开发环境可能需要用到多个python版本。rpm,dpkg安装不好管理,容易照成版本混乱。所以这里采用编译部署。如果需要下载其他版本python环境, 该方法同样试用。
kubernetes-operator开发教程(基于kubebuilder脚手架) Operator是什么?Kubernetes Operator是一个自定义控制器,用于通过自动化操作来管理复杂应用或服务。实现原理是什么?Kubernetes Operator的实现原理基于自定义控制器(Controller)和自定义资源定义(CRD)。
alertmanager告警存储方案 背景:由于alertmanager没有历史告警存储功能。在工作中我们可能需要 收集历史告警信息进行数据分析,找到系统的瓶颈,从而提高稳定性。实现方法:go语言写一个 针对alertmanager的webhook 程序。收集告警信息进行过滤然后存入es中。