当前位置: 首页 > news >正文

使用DaemonSet部署集群守护进程集

使用DaemonSet部署集群守护进程集

文章目录

  • 使用DaemonSet部署集群守护进程集
    • @[toc]
    • 一、使用DaemonSet部署日志收集守护进程集
    • 二、管理DaemonSet部署的集群守护进程集
      • 1.对DaemonSet执行滚动更新操作
      • 2.对DaemonSet执行回滚操作
      • 3.删除DaemonSet

一、使用DaemonSet部署日志收集守护进程集

Fluentd是用于统一日志层的开源数据收集器。Kubernetes开发了Elasticsearch组件来实现集群的日志管理。Elasticsearch是一个搜索引擎,负责存储日志并提供查询接口;Fluentd负责从Kubernetes搜集日志并发送给Elasticsearch。

(1)创建YAML格式的DaemonSet文件

[root@master ~]# vim fluentd-daemonset.yaml
[root@master ~]# cat fluentd-daemonset.yaml 
apiVersion: apps/v1
kind: DaemonSet                                # 资源类型为DaemonSet
metadata:name: fluentd-elasticsearchnamespace: kube-system                      # 名称空间采用内置的kube-systemlabels:k8s-app: fluentd-logging                 # DaemonSet资源的标签
spec:selector:matchLabels:                   # 必须指定与spec.template的标签匹配的Pod选择运算符name: fluentd-elasticsearchtemplate:                                         # 创建Pod副本所依据的模板metadata:labels:                                         # Pod模板必须指定标签name: fluentd-elasticsearchspec:tolerations:        # 容忍度设置,此处设置让该守护进程集在控制平面节点或主节点上运行- key: node-role.kubernetes.io/control-planeoperator: Existseffect: NoSchedule- key: node-role.kubernetes.io/masteroperator: Existseffect: NoSchedulecontainers:- name: fluentd-elasticsearchimage: quay.io/fluentd_elasticsearch/fluentd:v2.5.2    # 镜像resources:                                                    # 容器资源限制limits:memory: 200Mirequests:cpu: 100mmemory: 200MivolumeMounts:                                                # Pod的卷挂载点- name: varlogmountPath: /var/log- name: varlibdockercontainersmountPath: /var/lib/docker/containersreadOnly: trueterminationGracePeriodSeconds: 30volumes:                                         # 声明卷(本例定义了两个卷)- name: varloghostPath:                                     # 卷类型为HostPath(主机路径)path: /var/log- name: varlibdockercontainershostPath:path: /var/lib/docker/containers

(2)基于上述YAML配置文件创建DaemonSet

[root@master ~]# kubectl apply -f fluentd-daemonset.yaml 
daemonset.apps/fluentd-elasticsearch created

(3)查看该DaemonSet的Pod部署(操作该DaemonSet必须指定名称空间)

[root@master ~]# kubectl get pods --namespace=kube-system -l name=fluentd-elasticsearch -o wide
NAME                          READY   STATUS             RESTARTS   AGE    IP               NODE     NOMINATED NODE   READINESS GATES
fluentd-elasticsearch-4zwp8   0/1     ImagePullBackOff   0          7m1s   10.244.104.25    node2    <none>           <none>
fluentd-elasticsearch-gc5nd   0/1     ImagePullBackOff   0          7m1s   10.244.166.169   node1    <none>           <none>
fluentd-elasticsearch-w9b8q   0/1     ImagePullBackOff   0          7m1s   10.244.219.95    master   <none>           <none>

可以发现3个节点各自运行了Pod,DaemonSet会先遍历节点列表,检查是否带有此标签的Pod在运行,若没有,则创建。

(4)查看详细信息

[root@master ~]# kubectl describe daemonset fluentd-elasticsearch --namespace=kube-system
Name:           fluentd-elasticsearch
Selector:       name=fluentd-elasticsearch
Node-Selector:  <none>
Labels:         k8s-app=fluentd-logging
Annotations:    deprecated.daemonset.template.generation: 1
Desired Number of Nodes Scheduled: 3
Current Number of Nodes Scheduled: 3
Number of Nodes Scheduled with Up-to-date Pods: 3
Number of Nodes Scheduled with Available Pods: 0
Number of Nodes Misscheduled: 0
Pods Status:  0 Running / 3 Waiting / 0 Succeeded / 0 Failed
Pod Template:Labels:  name=fluentd-elasticsearchContainers:fluentd-elasticsearch:Image:      quay.io/fluentd_elasticsearch/fluentd:v2.4Port:       <none>Host Port:  <none>Limits:memory:  200MiRequests:cpu:        100mmemory:     200MiEnvironment:  <none>Mounts:/var/lib/docker/containers from varlibdockercontainers (ro)/var/log from varlog (rw)Volumes:varlog:Type:          HostPath (bare host directory volume)Path:          /var/logHostPathType:  varlibdockercontainers:Type:          HostPath (bare host directory volume)Path:          /var/lib/docker/containersHostPathType:  
Events:Type    Reason            Age   From                  Message----    ------            ----  ----                  -------Normal  SuccessfulCreate  10m   daemonset-controller  Created pod: fluentd-elasticsearch-w9b8qNormal  SuccessfulCreate  10m   daemonset-controller  Created pod: fluentd-elasticsearch-4zwp8Normal  SuccessfulCreate  10m   daemonset-controller  Created pod: fluentd-elasticsearch-gc5nd
[root@master ~]# 

二、管理DaemonSet部署的集群守护进程集

由于每个节点只能运行一个Pod副本,DaemonSet不支持扩缩容操作。对DaemonSet的管理主要是更新和回滚。

1.对DaemonSet执行滚动更新操作

  • OnDelete:在更新DaemonSet模板后,只有用户手动删除旧的Pod之后,新的Pod才会被自动创建。
  • RollingUpdate:这是默认的更新策略,即滚动更新。在更新DaemonSet模板后,旧的Pod将被自动终止,并且将以受控方式自动创建新的Pod。期间,每个节点上最多只能有一个DaemonSet部署的Pod运行。

(1)检查DaemonSet的更新策略

[root@master ~]# kubectl get ds/fluentd-elasticsearch -o go-template='{{.spec.updateStrategy.type}}{{"\n"}}' -n kube-system
RollingUpdate

(2)更新DaemonSet模板中的容器镜像

[root@master ~]# kubectl set image ds/fluentd-elasticsearch fluentd-elasticsearch=quay.io/fluentd_elasticsearch/fluentd:v2.6.0 -n kube-system
daemonset.apps/fluentd-elasticsearch image updated

(3)监视DaemonSet的滚动更新状态和进度

[root@master ~]# kubectl rollout status ds/fluentd-elasticsearch -n kube-system
Waiting for daemon set "fluentd-elasticsearch" rollout to finish: 0 of 3 updated pods are available...

2.对DaemonSet执行回滚操作

(1)查看该DaemonSet的修订版本历史

[root@master ~]# kubectl rollout history ds/fluentd-elasticsearch -n kube-system
daemonset.apps/fluentd-elasticsearch 
REVISION  CHANGE-CAUSE
1         <none>
2         <none>

(2)直接回滚到该DaemonSet的上一版本

[root@master ~]# kubectl rollout undo ds/fluentd-elasticsearch -n kube-system
daemonset.apps/fluentd-elasticsearch rolled back

(3)监视该DaemonSet的回滚进度

[root@master ~]# kubectl rollout status ds/fluentd-elasticsearch -n kube-system
Waiting for daemon set "fluentd-elasticsearch" rollout to finish: 0 of 3 updated pods are available...

3.删除DaemonSet

(1)从名称空间中删除

[root@master ~]# kubectl delete ds fluentd-elasticsearch -n kube-system
daemonset.apps "fluentd-elasticsearch" deleted

(2)进一步验证

[root@master ~]# kubectl get pods -n kube-system -l name=fluentd-elasticsearch -o wide
No resources found in kube-system namespace.

相关文章:

使用DaemonSet部署集群守护进程集

使用DaemonSet部署集群守护进程集 文章目录 使用DaemonSet部署集群守护进程集[toc]一、使用DaemonSet部署日志收集守护进程集二、管理DaemonSet部署的集群守护进程集1.对DaemonSet执行滚动更新操作2.对DaemonSet执行回滚操作3.删除DaemonSet 一、使用DaemonSet部署日志收集守护…...

破解升腾c10,改造成下载机(第二篇:获取xterm终端)

当c10刷好华为ct3100系统后&#xff0c;就开始获取xterm终端&#xff0c;然后再安装entware. 第一步&#xff1a;获取xterm终端。 点击桌面左下角的工具图标 再点browser 输入百度网址&#xff0c;访问&#xff01; 然后再将网页另存为&#xff5e;&#xff5e;&#xff5e;…...

浏览器多开

使用浏览器的用户功能&#xff0c;创建多个用户即可完成浏览器多开的需求&#xff0c;插件等相对独立 需要命名 然后就可以通过多个用户切换来实现多开了&#xff0c;不同任务选择不同用户...

使用Python实现的音符生成和节拍器程序

推荐超级课程: 本地离线DeepSeek AI方案部署实战教程【完全版】Docker快速入门到精通Kubernetes入门到大师通关课AWS云服务快速入门实战目录 **摘要****先决条件****设置**生成音符频率播放音符节拍器合并结论摘要 节拍器和随机音符生成器各有用途,但单独使用时功能有限。本…...

【生活相关-日语-日本-东京-留学生-搬家后或新入驻-水道局申请饮用水(1)-办理手续】

【生活相关-日语-日本-东京-搬家后-水道局申请饮用水-办理手续】 1、前言2、情况说明&#xff08;1&#xff09;他人代办&#xff08;2&#xff09;打电话&#xff08;3&#xff09;网络申请&#xff08;4&#xff09;你将会面临什么&#xff0c;主要步骤&#xff08;5&#xf…...

PyTorch模型构造实战:从基础到复杂组合

本文通过多个示例演示如何使用PyTorch构建不同类型的神经网络模型&#xff0c;涵盖基础多层感知机、自定义块、顺序块以及复杂组合模型。所有代码均附带输出结果&#xff0c;帮助读者直观理解模型结构。 1. 多层感知机&#xff08;MLP&#xff09; 使用nn.Sequential快速构建一…...

【高性能缓存Redis_中间件】一、快速上手redis缓存中间件

一、铺垫 在当今的软件开发领域&#xff0c;消息队列扮演着至关重要的角色。它能够帮助我们实现系统的异步处理、流量削峰以及系统解耦等功能&#xff0c;从而提升系统的性能和可维护性。Redis 作为一款高性能的键值对数据库&#xff0c;不仅提供了丰富的数据结构&#xff0c;…...

并发编程--互斥锁与读写锁

并发编程–互斥锁与读写锁 文章目录 并发编程--互斥锁与读写锁1. 基本概念2. 互斥锁2.1 基本逻辑2.2 函数接口2.3示例代码12.4示例代码2 3. 读写锁3.1 基本逻辑3.2示例代码 1. 基本概念 互斥与同步是最基本的逻辑概念&#xff1a; 互斥指的是控制两个进度使之互相排斥&#x…...

Linux下Docker安装超详细教程(以CentOS为例)

前言 Docker 已成为现代应用开发和部署的标配工具。本教程将手把手教你 在 CentOS 系统上安装 Docker&#xff0c;涵盖从环境准备到验证安装的全流程&#xff0c;并解决常见问题。无论你是运维工程师还是开发者&#xff0c;均可快速上手。 一、环境要求 操作系统 CentOS 7 或更…...

Ubuntu 服务器版本 设置socket服务(Python)

1. 确定 Socket 类型 Socket 服务可以是: 网络 Socket:基于 TCP/UDP 协议(如 Web 服务器、API 服务)。 Unix Domain Socket:本地进程间通信(如 Docker、MySQL 默认使用)。 2. 编写一个简单的 Socket 服务示例(Python) 以 Python 为例,创建一个 TCP Socket 服务:…...

对于GAI虚假信息对舆论观察分析

摘要 生成式人工智能&#xff08;Generative Artificial Intelligence, GAI&#xff09;的技术革新重构了信息生产机制&#xff0c;但也加剧了虚假信息对舆论生态的异化风险。 关键词&#xff1a;生成式人工智能、虚假信息、舆论异化、智能治理 一、生成式人工智能虚假信息下…...

HTTP:三.HTTP连接

HTTP(Hypertext Transfer Protocol)是一种用于传输超文本数据的应用层协议。它是互联网上最常用的协议,用于在客户端和服务器之间传输数据。HTTP协议通常用于从Web服务器传输网页和文件到客户端浏览器,并支持其他用途,如传输API数据和传输文件。 HTTP连接是指客户端向服务…...

hyper-v server服务器部署远程访问(我目前环境:hyper-v服务器+路由器+公网ip)

Hyper-v server部署(裸金属方式) 系统镜像下载安装# 下载地址:17763.737.190906-2324.rs5_release_svc_refresh_SERVERHYPERCORE_OEM_x64FRE_zh-cn_1.iso 安装的过程很简单,和安装Windows操作系统没啥区别,这里就不记录了。 安装过程可参考:安装Hyper-v Server 2016 部…...

MCP遇见Web3:从边缘计算到去中心化的无限想象

MCP遇见Web3:从边缘计算到去中心化的无限想象 在数字化转型的浪潮中,边缘计算(MCP,Micro Control Protocol)和Web3技术分别在计算效率与去中心化架构上发挥着各自的优势。当两者融合,会碰撞出哪些火花?作为一名技术极客,我最近开始深度研究MCP与Web3工具的集成,试图探…...

【HarmonyOS Next之旅】DevEco Studio使用指南(十三) -> ArkTS/TS代码重构

目录 1 -> Refactor-Extract代码提取 2 -> Refactor-Convert代码转换 3 -> Refactor-Rename代码重命名 4 -> Move File 5 -> Safe Delete 1 -> Refactor-Extract代码提取 在编辑器中支持将函数内、类方法内等区域代码块或表达式&#xff0c;提取为新方…...

STM32 HAL DHT11驱动程序

DHT11驱动程序会占用TIM3定时器&#xff0c;进行高精度延时。程序共包含4个文件 DHT11.c DHT11.h delay.c delay.h DHT11.c #include "stm32f1xx_hal.h" #include "dht11.h" #include "delay.h" // 添加延时头文件 #define DHT_PORT GPIOB…...

asm汇编源代码之文件操作相关

提供7个子程序:   1. 关闭文件 FCLOSE   2. 打开文件 FOPEN   3. 文件大小 FSIZE   4. 读文件 FREAD   5. 写文件 FWRITE   6. 建立文件 FCREATE   7. 读取或设置文件指针 FPOS 具体功能及参数描述如下 ; ---------------------------- FCLOSE PROC  FAR ; IN…...

Github 2025-04-12 Rust开源项目日报Top10

根据Github Trendings的统计,今日(2025-04-12统计)共有10个项目上榜。根据开发语言中项目的数量,汇总情况如下: 开发语言项目数量Rust项目10TypeScript项目2uv: 极快的Python软件包安装程序和解析器 创建周期:147 天开发语言:Rust协议类型:Apache License 2.0Star数量:7…...

JAVA学习-练习试用Java实现“实现一个Java程序,对大数据集中的数据进行类型转换”

问题&#xff1a; 实现一个Java程序&#xff0c;对大数据集中的数据进行类型转换。 解答思路&#xff1a; 在Java中&#xff0c;对大数据集中的数据进行类型转换通常意味着将一种数据类型转换为另一种数据类型。以下是一个简单的Java程序示例&#xff0c;它演示了如何对大数据集…...

Android基础彻底解析-APK入口点,xml,组件,脱壳,逆向

第一章:引言与背景 Android逆向工程,作为一种深入分析Android应用程序的技术,主要目的就是通过分析应用的代码、资源和行为来理解其功能、结构和潜在的安全问题。它不仅仅是对应用进行破解或修改,更重要的是帮助开发者、研究人员和安全人员发现并解决安全隐患。 本文主要对…...

Spark RDD算子详解:从入门到精通

一、前言 在大数据处理领域&#xff0c;Apache Spark凭借其高效的内存计算能力&#xff0c;成为了流行的分布式计算框架。RDD&#xff08;Resilient Distributed Dataset&#xff09;是Spark的核心概念之一&#xff0c;它是一个分布式的数据集合&#xff0c;提供了丰富的操作接…...

Bootstrap4 卡片

Bootstrap4 卡片 Bootstrap 是一个流行的前端框架&#xff0c;它提供了丰富的组件和工具&#xff0c;使得开发者可以快速构建响应式、美观的网页。其中&#xff0c;Bootstrap4 中的卡片组件&#xff08;Card&#xff09;是一个非常实用的功能&#xff0c;可以用来展示图片、文…...

【随行付-注册安全分析报告-无验证方式导致隐患】

前言 由于网站注册入口容易被黑客攻击&#xff0c;存在如下安全问题&#xff1a; 1. 暴力破解密码&#xff0c;造成用户信息泄露 2. 短信盗刷的安全问题&#xff0c;影响业务及导致用户投诉 3. 带来经济损失&#xff0c;尤其是后付费客户&#xff0c;风险巨大&#xff0c;造…...

深入解析Antogen意图识别模型:从原理到实践

一、意图识别基础概念 1.1 什么是意图识别 意图识别(Intent Recognition)是自然语言处理(NLP)中的核心任务&#xff0c;旨在确定用户输入背后想要表达的目的或行动请求。它是对话系统理解用户的第一步&#xff0c;直接影响后续的对话管理和响应生成质量。 关键特征&#xff…...

企业年报问答RAG挑战赛冠军方案:从零到SotA,一战封神

RAG挑战赛是什么&#xff1f; 任务是基于企业年报构建问答系统。比赛日的流程简而言之&#xff1a; 解析阶段&#xff1a;获得100份随机企业的年报&#xff08;PDF格式&#xff0c;每份最多1000页&#xff09;&#xff0c;限时2.5小时完成解析并构建数据库。问答阶段&#xf…...

深入理解 HTML5 语义元素:提升网页结构与可访问性

引言 在构建网页的过程中&#xff0c;合理的结构与清晰的语义对于网页的质量、可维护性以及搜索引擎优化&#xff08;SEO&#xff09;都至关重要。HTML5 引入了一系列语义元素&#xff0c;为开发者提供了更精准描述网页内容的工具。本文将深入探讨 HTML5 语义元素的作用、使用…...

DeepSeek vs Grok vs ChatGPT:三大AI工具优缺点深度解析

一、DeepSeek&#xff1a;低成本与中文专精的本地化AI 优点 中文处理能力卓越 DeepSeek针对中文语法和文化背景进行了深度优化&#xff0c;尤其在古文翻译、诗歌创作和技术文档生成中表现突出&#xff0c;远超ChatGPT的中文支持能力。高效推理与低成本 采用混合专家&#xff…...

MCP(模型上下文协议)简单案例

MCP&#xff08;模型上下文协议&#xff09;的标准化接口 MCP&#xff08;Model Context Protocol&#xff0c;模型上下文协议&#xff09;是由Anthropic开发的一种开放协议&#xff0c;旨在标准化大型语言模型&#xff08;LLM&#xff09;与外部数据源和工具的交互方式1。它就…...

BGP基础概念与核心架构

一、BGP 协议定义与定位 BGP&#xff08;Border Gateway Protocol&#xff0c;边界网关协议&#xff09; 是互联网中唯一的域间路由协议&#xff08;EGP&#xff09;&#xff0c;用于在不同自治系统&#xff08;AS&#xff09;之间交换路由信息。与 OSPF、IS-IS 等域内路由协议…...

【经济保护主义叙事】

第一层&#xff1a;表面逻辑——经济保护主义叙事 公开理由&#xff1a;特朗普宣称加征关税是为了“保护美国制造业”“减少贸易逆差”“维护国家安全”&#xff0c;并强调通过关税迫使贸易伙伴降低壁垒&#xff0c;促进产业链回流美国。 底层逻辑&#xff1a;通过民族主义叙事…...

遵循IEC 62304:构建安全可靠的医疗器械软件

目录 一、IEC 62304 标准概述 1. 标准定位与适用范围 二、核心内容与要求 1. 软件安全等级&#xff08;Software Safety Classification&#xff09; &#xff08;1&#xff09;分级标准 &#xff08;2&#xff09;分级依据 &#xff08;3&#xff09;验证要求 2. 软件…...

ARM 架构下 spin_lock 实现

阅读该文章前&#xff0c;需要对原子指令有所了解&#xff0c;推荐阅读 聊一聊原子操作和弱内存序 1、概念 内核当发生访问资源冲突的时候&#xff0c;可以有两种锁的解决方案选择&#xff1a; 一个是原地等待一个是挂起当前进程&#xff0c;调度其他进程执行&#xff08;睡眠…...

计算机视觉算法实现——SAM实例分割:原理、实现与应用全景

✨个人主页欢迎您的访问 ✨期待您的三连 ✨ ✨个人主页欢迎您的访问 ✨期待您的三连 ✨ ✨个人主页欢迎您的访问 ✨期待您的三连✨ ​​​ ​​​​​​​​​ ​​ 1. 实例分割领域概述 实例分割(Instance Segmentation)是计算机视觉领域最具挑战性的任务之一&#xff0c…...

asm汇编字符串操作

提供8个子程序: 1. 字符串长度 STRLEN 2. 字符串替换 REPLACE 3. 字节查找 SEARCHB 4. 双字节查找 SEARCHW 5. 输入字符串 GETSTR 6. 输出字符串 OUTSTR 7. 复制字符串 COPYSTR 8. 查找字符串 SRCHSTR 具体功能及参数描述如下 STRLEN PROC  FAR ; IN: ;   DS:DXSTRING ;…...

[MSPM0开发]之三MSPM0G3507之时钟系统

一、MSPM0G3507时钟模块概述 MSPM0G3507的时钟系统隶属于其电源管理和时钟单元 (PMCU) 。 PMCU主要负责电源管理、时钟配置和复位控制功能。 时钟模块包含内部和外部 振荡器 oscillators、 时钟监测器 clock monitors以及时钟选择和控制逻辑。 提供了频率时钟计数器frequency …...

如何绕过WAF实现SQL注入攻击?​

引言​​ 在渗透测试中&#xff0c;SQL注入&#xff08;SQLi&#xff09;始终是Web安全的核心漏洞之一。然而&#xff0c;随着企业广泛部署Web应用防火墙&#xff08;WAF&#xff09;&#xff0c;传统的注入攻击往往会被拦截。本文将分享一种​​绕过WAF检测的SQL注入技巧​​…...

基础数学:图论与信息论

微积分与概率论由此进&#xff1a;基础数学&#xff1a;微积分和概率与统计-CSDN博客 线代与优化理论由此进&#xff1a;基础数学&#xff1a;线性代数与优化理论-CSDN博客 数值分析与离散数学由此进&#xff1a;基础数学&#xff1a;数值分析与离散数学-CSDN博客 四、图论与…...

05-RabbitMQ 面试题-mk

1.RabbitMQ-如何保证消息不丢失? 消息中间件的好处 提供了系统之间的异步调用,让服务与服务之间解耦削峰、填谷场景: 异步发送(验证码、短信、邮件…)MySQL和Redis , ES之间的数据同步分布式事务削峰填谷 消息发送者(publisher )把消息发送给交换机(exchange),由交…...

当当平台商品详情接口设计与调用指南

当当平台商品详情接口设计与调用指南 接口名称 GET /api/product/detail 图书商品核心信息查询接口 请求参数说明 参数名称 类型 是否必填 说明 isbn string 是 国际标准书号(支持13位/10位) product_id string 否 平台内部商品编号&#xff08;与…...

基于vue框架的住院信息管理系统k08hv(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。

系统程序文件列表 项目功能&#xff1a;患者,工作人员,预约住院,住院登记,科室信息,床位信息,床位分配,转病房,病历信息,费用信息,出院登记 开题报告内容 基于Vue框架的住院信息管理系统开题报告 一、选题背景与意义 &#xff08;一&#xff09;选题背景 随着医疗技术的不…...

Flink 编程基础:Scala 版 DataStream API 入门

大家好&#xff01;我是心海 流处理技术在大数据时代正变得越来越重要&#xff0c;而 Apache Flink 作为领先的流处理引擎&#xff0c;凭借其高性能、低延迟和丰富的 API 受到了广泛关注。本文将以 Scala 语言为例&#xff0c;详细讲解 Flink DataStream API 的基本编程模型&am…...

noscript 标签是干什么的

vue public目录下的 index.html 会有 <noscript> 标签不知道是干吗的。 其实 noscript 标签在不支持或是禁用JavaScript 的浏览器中显示替代的内容。这个元素可以包含任何 HTML 元素。这个标签的用法也非常简单&#xff1a; <noscript><strong>Were sorry …...

基于 Streamlit 的 PDF 编辑器

你想实现一个基于 Streamlit 的 PDF 编辑器&#xff0c;功能包括&#xff1a; PDF 转 WordPDF 表格提取PDF 拆分页面PDF 转图片 下面是一个初步的 Streamlit 应用框架代码示例&#xff0c;集成了以上功能。使用了常见库如 pdfplumber、PyMuPDF&#xff08;fitz&#xff09;、…...

Oracle 排除交集数据 MINUS

MINUS 是 Oracle 数据库中的一种集合操作符&#xff0c;用于返回第一个查询结果中存在但第二个查询结果中 不存在 的 唯一行。其核心功能是 排除交集数据&#xff0c;常用于数据差异分析或过滤特定记录 一、核心功能 排除交集&#xff1a;返回第一个查询结果中 不在第二个查询结…...

.net Core 和 .net freamwork 调用 deepseek api 使用流输出文本(对话补全)

.net Core 调用 deepseek api 使用流输出文本 简下面直接上代码&#xff08;.net core&#xff09;&#xff1a;最后再贴一个 .net Freamwork 4 可以用的代码TLS 的代码至关重要的&#xff1a;&#xff08;下面这个&#xff09; 简 在官网里面有许多的案例&#xff1a;我们通过…...

巧用递归算法:破解编程难题的“秘密武器”

专栏&#xff1a;算法的魔法世界 个人主页&#xff1a;手握风云 目录 一、递归 二、例题讲解 2.1. 汉诺塔问题 2.2. 合并两个有序链表 2.3. 反转链表 2.4. 两两交换链表中的节点 2.5. Pow(x, n) 三、总结 一、递归 递归的概念 一个方法在执行过程中调用自身, 就称为递…...

C++、Python的输入输出及相关的处理操作

一、C 输入输出及相关处理操作 C 是算法竞赛中常用的语言&#xff0c;因其高效性适合处理大数据或严格时间限制的题目。输入输出是基础&#xff0c;但细节处理&#xff08;如速度优化、格式要求&#xff09;对比赛结果影响很大。 1. 基本输入输出 C 使用 <iostream> 库…...

Unity协程从入门到精通:告别卡顿,用Coroutine优雅处理异步与时序任务 (Day 27)

Langchain系列文章目录 01-玩转LangChain&#xff1a;从模型调用到Prompt模板与输出解析的完整指南 02-玩转 LangChain Memory 模块&#xff1a;四种记忆类型详解及应用场景全覆盖 03-全面掌握 LangChain&#xff1a;从核心链条构建到动态任务分配的实战指南 04-玩转 LangChai…...

Web攻防—SSRF服务端请求伪造Gopher伪协议无回显利用

前言 重学Top10的第二篇&#xff0c;希望各位大佬不要见笑。 SSRF原理 SSRF又叫服务端请求伪造&#xff0c;是一种由服务端发起的恶意请求&#xff0c;SSRF发生在应用程序允许攻击者诱使服务器向任意域或资源发送未经授权的请求时。服务器充当代理&#xff0c;执行攻击者构造…...

青少年编程与数学 02-016 Python数据结构与算法 16课题、贪心算法

青少年编程与数学 02-016 Python数据结构与算法 16课题、贪心算法 一、贪心算法的基本概念定义组成部分 二、贪心算法的工作原理三、贪心算法的优点四、贪心算法的缺点五、贪心算法的应用实例&#xff08;一&#xff09;找零问题&#xff08;二&#xff09;活动安排问题&#x…...