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

飞天使-k8s基础组件分析-控制器

文章目录

      • 控制器含义解释
      • pod的标签与注释
      • ReplicaController
      • ReplicaSet
      • Deployments
      • DaemonSet
      • Job
      • Cronjob
        • 参考文档

控制器含义解释

空调遥控器知道吧ReplicationController: ReplicationController确保在任何时候都运行指定数量的pod副本。换句话说,一个ReplicationController确保一个pod或一组同类的pod总是处于可用状态。ReplicaSet: ReplicaSet的目的是维护在任何给定时间运行的一组稳定的pod副本。因此,它通常用于保证指定数量的相同pod的可用性。Deployments: 部署针对Pods和ReplicaSets提供了宣告式的更新。StatefulSets: StatefulSet常用于管理有状态的应用。DaemonSet: 它是确保所有的节点或一些节点都运行一个Pod的复本。

pod的标签与注释

标签就是名字的意思
kubectl run httpd \
--image=httpd:2.4 \
--replicas=1 \
--labels="ver=2,env=prod"查看标签 
kubectl get deployment --show-labelskubectl label deployments httpd "canary=true"
kubectl get deployment -L canary
移除 
kubectl get deployment -L canary
显示标签 kubectl get pods --show-labels选择标签为某个值
kubectl get pod --selector="ver=2"标签是抓取pod的唯一依据

ReplicaController

管理它自己管理的pod数量保持一致[root@k8s-01 chapter04]# cat web-rc.yaml 
apiVersion: v1
kind: ReplicationController
metadata:name: web
spec:replicas: 3selector:app: nginxtemplate:metadata:labels:app: nginxspec:containers:- name: nginximage: nginxports:- containerPort: 80[root@k8s-01 chapter04]# kubectl create -f web-rc.yaml 
replicationcontroller/web created
[root@k8s-01 chapter04]# kubectl get pod
NAME                    READY   STATUS              RESTARTS   AGE
httpd                   1/1     Running             0          22m
httpd-1                 1/1     Running             0          21m
nginx-97499b967-jzxwg   1/1     Running             0          14h
web-5bq9k               0/1     ContainerCreating   0          4s
web-rvbmm               0/1     ContainerCreating   0          4s
web-x6wxd               0/1     ContainerCreating   0          4s
[root@k8s-01 chapter04]# kubectl  get rc
NAME   DESIRED   CURRENT   READY   AGE
web    3         3         0       14s
[root@k8s-01 chapter04]# kubectl get replicationController
NAME   DESIRED   CURRENT   READY   AGE
web    3         3         1       27s如果删除一个pod ,会自己新增一个pod
kubectl delete pod/web-x6wxd新增一个标签看看
[root@k8s-01 chapter04]# kubectl get pod --show-labels
NAME                    READY   STATUS    RESTARTS   AGE     LABELS
nginx-97499b967-jzxwg   1/1     Running   0          14h     app=nginx,pod-template-hash=97499b967
web-rftd7               1/1     Running   0          4m16s   app=nginx
web-rvbmm               1/1     Running   0          7m35s   app=nginx
web-x6wxd               1/1     Running   0          7m35s   app=nginx[root@k8s-01 chapter04]# kubectl label pod web-rftd7 type=special
pod/web-rftd7 labeled
[root@k8s-01 chapter04]# kubectl get pod --show-labels
NAME                    READY   STATUS    RESTARTS   AGE     LABELS
nginx-97499b967-jzxwg   1/1     Running   0          14h     app=nginx,pod-template-hash=97499b967
web-rftd7               1/1     Running   0          5m20s   app=nginx,type=special
web-rvbmm               1/1     Running   0          8m39s   app=nginx
web-x6wxd               1/1     Running   0          8m39s   app=nginx覆盖过去
kubectl label pod web-rftd7 app=nginx1 --overwrite添加pod的标签
# kubectl label pod web-z8stj type=special更改pod的标签
# kubectl label pod web-z8stj app=foo --overwrite再次列出pod
# kubectl get pods –L app修改rc的数量为2个
[root@k8s-01 chapter04]# kubectl get rc
NAME   DESIRED   CURRENT   READY   AGE
web    3         3         3       17m
[root@k8s-01 chapter04]# kubectl edit rc web
replicationcontroller/web edited
[root@k8s-01 chapter04]# kubectl get rc
NAME   DESIRED   CURRENT   READY   AGE
web    2         2         2       18m修改里面的数量为2 个水平扩缩容
[root@k8s-01 chapter04]# kubectl scale rc web --replicas=6
replicationcontroller/web scaled
[root@k8s-01 chapter04]# kubectl get pod
NAME                    READY   STATUS              RESTARTS   AGE
nginx-97499b967-jzxwg   1/1     Running             0          14h
web-fhg2l               0/1     ContainerCreating   0          4s
web-nsxsh               0/1     ContainerCreating   0          4s
web-pcwkz               0/1     ContainerCreating   0          4s
web-rvbmm               1/1     Running             0          19m
web-vj48d               0/1     ContainerCreating   0          4s
web-x6wxd               1/1     Running             0          19mkubectl delete rc web ,删除rcRC (ReplicaController) 通过标签来控制pod的,改变pod的标签,pod会进行变化

ReplicaSet

针对rc而言,选择更加灵活kubectl describe rs[root@k8s-01 chapter04]# cat web-replicaset.yaml 
apiVersion: apps/v1
kind: ReplicaSet
metadata:name: web
spec:replicas: 3selector:matchLabels:app: nginxtemplate:metadata:labels:app: nginxspec:containers:- name: nginximage: nginx生产环境用rs多些

Deployments

Deployment为Pods和ReplicaSets提供声明式的更新。
在部署中描述一个期望的状态,部署控制器以某个控制的速率改变实际的状态到期望的状态控制更新的节奏和速率[root@k8s-01 chapter04]# cat nginx-deployment.yaml 
apiVersion: apps/v1
kind: Deployment
metadata:name: nginx-deploymentlabels:app: nginx
spec:replicas: 3selector:matchLabels:app: nginxtemplate:metadata:labels:app: nginxspec:containers:- name: nginximage: nginx:1.7.9ports:- containerPort: 80创建
# kubectl apply –f nginx-deployment.yaml查看部署
# kubectl get deployment查看部署的状态
# kubectl rollout status deployment.v1.apps/nginx-deployment查看通过部署创建的rs
# kubectl get rs查看pod自动产生的labels
# kubectl get pods –show-labels更新nginx:1.7.9为nginx:1.9.1
# kubectl –record deployment.apps/nginx-deployment set image deployment.v1.apps/nginx-deployment nginx=nginx:1.9.1
或者:
# kubectl set image deployment/nginx-deployment nginx=nginx:1.9.1 –record
或者:
# kubectl edit deployment.v1.apps/nginx-deployment查看更新的状态
# kubectl rollout status deployment.v1.apps/nginx-deployment通过以下命令查看部署
# kubectl get deployment查看部署的rs
# kubectl get rs查看新的pods
# kubectl get pods查看部署的详情
# kubectl describe deployments回滚部署
更新一个不存在的镜像
# kubectl set image deployment.v1.apps/nginx-deployment nginx=nginx:1.91 –record=true通过以下命令查看更新卡住了
# kubectl rollout status deployment.v1.apps/nginx-deployment查看部署的rs
# kubectl get rs查看部署的pods
# kubectl get pods查看部署的描述信息
# kubectl describe deployment查看部署的版本
# kubectl rollout history deployment.v1.apps/nginx-deployment查看每个版本的详情
# kubectl rollout history deployment.v1.apps/nginx-deployment –revision=2回退到先前的版本
# kubectl rollout undo deployment.v1.apps/nginx-deployment回退到特定的版本
# kubectl rollout undo deployment.v1.apps/nginx-deployment --to-revision=2检查回退是否成功
# kubectl get deployment nginx-deployment部署的扩容
扩容副本数量为10
# kubectl scale deployment.v1.apps/nginx-deployment --replicas=10如果启用了水平的pod自动扩容可以执行如下:
# kubectl autoscale deployment.v1.apps/nginx-deployment --min=10 --max=15 --cpu-percent=80扩容的比例和刻度
确保部署的10个复本处于运行
# kubectl get deploy更新一个不存在的镜像,并查看结果
# kubectl set image deployment.v1.apps/nginx-deployment nginx=nginx:sometag
# kubectl get rs更新复本的数量为15个,再次查看结果,然后删除本次部署
#  kubectl scale deployment.v1.apps/nginx-deployment --replicas=15
# kubectl get deployment
# kubectl get rs
# kubectl delete deploy nginx-deployment暂停和继续部署
创建部署
# kubectl create –f nginx-deployment.yaml暂停更新
# kubectl rollout pause deployment.v1.apps/nginx-deployment更新镜像
# kubectl set image deployment.v1.apps/nginx-deployment nginx=nginx:1.9.1查看是否有新的更新开始
# kubectl rollout history deployment.v1.apps/nginx-deployment恢复部署
# kubectl rollout resume deployment.v1.apps/nginx-deployment

DaemonSet

使用DaemonSet在每个节点上运行一个pod
DaemonSet确保创建尽可能多的pod,并将每个pod部署到自己的节点上。使用DaemonSet仅在特定的节点上运行Pods
这可以通过在pod模板中指定node-selector属性来完成的,它是DaemonSet定义的一部分[root@k8s-01 chapter04]# cat ssd-monitor-daemonset.yaml 
apiVersion: apps/v1
kind: DaemonSet
metadata:name: ssd-monitor
spec:selector:matchLabels:app: ssd-monitortemplate:metadata:labels:app: ssd-monitorspec:nodeSelector:disk: ssdcontainers:- name: mainimage: luksa/ssd-monitor[root@k8s-01 chapter04]# kubectl get pod -o wide
NAME                    READY   STATUS    RESTARTS   AGE   IP           NODE     NOMINATED NODE   READINESS GATES
nginx-97499b967-jzxwg   1/1     Running   0          16h   10.244.1.2   k8s-02   <none>           <none>打标签
kubectl label node k8s-02 disk=ssdkubectl get ds
kubectl get pods打完标签后指哪打哪

Job

这种是运行一次,直到完成在Job完成后,它并不会删除Pod,允许我们可以查看它的日志在Job中运行多个Pod实例
Job可以配置为创建多个Pod实例,依并行或有序的方式运行它们。按顺序来运行Job
如果需要一个job运行多次,可以将completions设置为希望job的Pod运行多次。
配置请参考文件:multi-completion-batch-job.yaml以并行的方式运行job pods.
如果让job并行运行多个pods,可以使用parallelism指定并运行pod的数量。
配置请参考文件:multi-completion-batch-job2.yaml限制Job pod的完成时间
通过设置activedeadlinesecond属性 [root@k8s-01 chapter04]# cat multi-completion-batch-job.yaml 
apiVersion: batch/v1
kind: Job
metadata:name: multi-completion-batch-job
spec:completions: 5template:metadata:labels:app: batch-jobspec:restartPolicy: OnFailurecontainers:- name: mainimage: luksa/batch-job
[root@k8s-01 chapter04]# cat multi-completion-batch-job2.yaml 
apiVersion: batch/v1
kind: Job
metadata:name: multi-completion-batch-job2
spec:completions: 5parallelism: 2template:metadata:labels:app: batch-jobspec:restartPolicy: OnFailurecontainers:- name: mainimage: luksa/batch-job

在这里插入图片描述

Cronjob

这个是定时计划任务,周期性的[root@k8s-01 chapter04]# cat batch-job-every-fifteen-minutes.yaml 
apiVersion: batch/v1beta1
# API group的版本是v1beat1,这里不要写错
kind: CronJob
metadata:name: batch-job-every-fifteen-minutes
spec:
# 该任务将会在每小时的0,15,30,45分运行schedule: "0,15,30,45 * * * *"jobTemplate:spec:template:metadata:labels:app: periodic-batch-job-every-fifteen-minutesspec:restartPolicy: OnFailurecontainers:- name: mainimage: luksa/batch-job
[root@k8s-01 chapter04]# cat cronjob.yaml 
apiVersion: batch/v1beta1
kind: CronJob
metadata:name: hello
spec:schedule: "*/1 * * * *"jobTemplate:spec:template:spec:containers:- name: helloimage: busyboxargs:- /bin/sh- -c- date; echo Hello from the kubernetes clusterrestartPolicy: OnFailure使用以下命令获取它的状态
# kubectl get cronjob hello也可以通过以下命令获取它的状态
# kubectl get jobs --watch可以通过以下命令查看上次调度的时间
# kubectl get conrjob hello删除cronjob
# kubectl delete cronjob hello

参考文档

https://edu.csdn.net/course/detail/27762?spm=1003.2449.3001.8295.2

相关文章:

飞天使-k8s基础组件分析-控制器

文章目录 控制器含义解释pod的标签与注释ReplicaControllerReplicaSetDeploymentsDaemonSetJobCronjob参考文档 控制器含义解释 空调遥控器知道吧ReplicationController: ReplicationController确保在任何时候都运行指定数量的pod副本。换句话说&#xff0c;一个ReplicationCo…...

有序充电运营管理平台是基于物联网和大数据技术的充电设施管理系统-安科瑞黄安南

随着我国能源战略发展以及低碳行动的实施&#xff0c;电动汽车已逐步广泛应用&#xff0c;而电动汽车的应用非常符合当今社会对环保意识的要求&#xff0c;以及有效节省化石燃料的消耗。 由于其没有污染排放的优点以及政府部门的关注&#xff0c;电动汽车将成为以后出行的重要…...

LeetCode-227-基本计算器Ⅱ

题目描述&#xff1a; 给你一个字符串表达式 s &#xff0c;请你实现一个基本计算器来计算并返回它的值。 整数除法仅保留整数部分。 你可以假设给定的表达式总是有效的。所有中间结果将在 [-231, 231 - 1] 的范围内。 注意&#xff1a;不允许使用任何将字符串作为数学表达式计…...

dart 学习列表 List

List 列表 在 Dart 编程语言中&#xff0c;List 是一种有序的集合数据类型&#xff0c;用于存储一系列项目。它允许您在单个变量中存储多个项目&#xff0c;并提供了许多操作来管理列表中的数据。以下是关于 Dart 中的 List 的一些重要信息&#xff1a; 创建 List&#xff1a; …...

数据结构--树4.2.1(二叉树)

目录 一、二叉树的存储结构 二、二叉树的遍历 一、二叉树的存储结构 顺序存储结构&#xff1a;二叉树的顺序存储结构就是用一维数组存储二叉树中的各个结点&#xff0c;并且结点的存储位置能体现结点之间的逻辑关系。 链式存储结构&#xff1a;二叉树每个结点最多只有两个孩…...

Presto之Driver个数

一. 前言 在Presto的Stage Performace中&#xff0c;每个Operator中都会有Driver个数的显示&#xff0c;如下图所示。本文主要介绍Presto中是如何决定Driver的个数的。 二. Driver个数 在Presto中&#xff0c;一个pipeline中启动多少个Driver&#xff0c;是由此Pipeline处理的S…...

R语言响应面(RSM)、线性模型lm分析生产过程影响因素可视化

全文链接&#xff1a;https://tecdat.cn/?p33499 响应面&#xff08;Response Surface Methodology&#xff0c;RSM&#xff09;分析是一种常用的统计方法&#xff0c;用于研究和优化生产过程中的影响因素。通过建立数学模型来描述因素与响应之间的关系&#xff0c;RSM可以帮助…...

剑指Offer --- 字符串篇

剑指Offer — 字符串篇 — 剑指的题解K神已经写的已经非常详细了&#xff0c;并且Github上开源的电子书目前热度也非常高&#xff0c;这个12天12个模块系列就当作自己的秋招刷题汇总了&#xff0c;欢迎大家交流。 剑指 Offer 05. 替换空格 思路 **(线性扫描) ** O(n) 这个…...

7.elasticsearch同步工具-logstah

1.logstah Logstash 是一个用于数据处理和转换的开源工具&#xff0c;它可以将来自不同源头的数据收集、转换、过滤&#xff0c;并将其发送到不同的目标。Logstash 是 ELK&#xff08;Elasticsearch、Logstash 和 Kibana&#xff09;技术栈的一部分&#xff0c;通常与 Elastics…...

Redis之stream类型解读

目录 基本介绍 数据结构 消息 消费组 消费者 基本使用命令 概述 xadd 命令 xtrim 命令 xdel 命令 xlen 命令 xrange 命令 xread 命令 xgroup 命令 xreadgroup 命令 xack 命令 基本介绍 Redis stream&#xff08;流&#xff09;是一种数据结构&#xff0c;其…...

C++ 网络编程项目fastDFS分布式文件系统(九)总结

1. Location语法 1. 语法规则 location [ |~|~ * |^~ ] /uri/ { … } 正则表达式中的特殊字符 : - . () {} [] * ? 2. Location 优先级说明 在 nginx 的 location 和配置中 location 的顺序没有太大关系。 与 location 表达式的类型有关。 相同类型的表达式&a…...

第五章 树与二叉树 一、树的定义与考点

一、定义 1.树是由n (n > 0) 个节点组成的有限集合。 2.当n0时&#xff0c;称为空树。 3.在非空树中&#xff0c;有且仅有一个节点没有前驱&#xff0c;其他节点都有且仅有一个前驱&#xff0c;称为根节点。 4.每个节点有零个或多个子节点&#xff0c;而每个子节点又有零…...

C语言基础之——指针(下)

前言&#xff1a;本篇文章将继续讲解有关指针的剩余基础知识。 学无止境&#xff0c;一起加油叭&#xff01;&#xff01; 目录 一.指针运算 1.指针 - 整数 2.指针的关系运算 3.指针 - 指针 二.指针与数组 三.二级指针 四.指针数组 总结 一.指针运算 指针运算包括以下三…...

小研究 - JVM 的类装载机制

本文通过对一个类装载实例的分析&#xff0c;阐明了 Java虚拟机的类装载的代理机制和由此定义的命名空间&#xff0c;指出了类装载机制在容器/组件/抽象框架结构中的作用。 目录 1 引言 2 实例 3 分析 3.1 类装载的代理机制 3.2 Java的命名空间 3.3 解决问题 4 应…...

项目---日志系统

目录 项目系统开发环境核心技术日志系统介绍为什么需要日志系统? 日志系统框架设计日志系统模块划分代码实现通用工具实现日志等级模块实现日志消息模块实现格式化模块实现落地模块实现日志器模块同步日志器异步日志器缓冲区实现异步工作器实现 回归异步日志器模块建造者模式日…...

设计模式--建造者模式(Builder Pattern)

一、什么是建造者模式 建造者模式&#xff08;Builder Pattern&#xff09;是一种创建型设计模式&#xff0c;它关注如何按照一定的步骤和规则创建复杂对象。建造者模式的主要目的是将一个复杂对象的构建过程与其表示分离&#xff0c;从而使同样的构建过程可以创建不同的表示。…...

若依vue打印的简单方法

像我们后端程序员做前端的话,有时候真不需要知道什么原理,直接塞就好了 我们选用基于hiprint 的vue-plugin-hiprint来打印 目的是为了实现点击某些行的数据,然后点击某个按钮直接弹出下面的打印 此链接 大佬是原创,我拿来总结梳理一下 插件进阶功能请移步: 链接 插件模板制作页…...

Rust 基础语法学习

Rust 基础语法学习 文章目录 Rust 基础语法学习hello world变量数据类型整数类型进制表示方法浮点数类型布尔类型字符类型字符串复合类型元组结构体元组结构体 切片类型字符串切片数组切片 不可变变量与可变变量常量注释函数语句与表达式 流程控制语句if else条件判断while循环…...

iOS开发Swift-函数

1.函数的定义和调用 func greet(person: String) -> String { // 函数名 传入值 传入值类型 返回值类型let greeting "Hello" personreturn greeting } print( greet(person: "Anna") ) //调用2.函数的参数与返回值 (1)无参函数 func sayHe…...

序列化协议:JSON和XML

作者&#xff1a;CARROT 链接&#xff1a;https://www.zhihu.com/question/604811576/answer/3100483698 来源&#xff1a;知乎 著作权归作者所有。商业转载请联系作者获得授权&#xff0c;非商业转载请注明出处。 json和xml都是数据传输的格式。比如我们开发过程中需要和网…...

江西萍乡能源石油化工阀门三维扫描3d测量抄数建模-CASAIM中科广电

长期以来&#xff0c;石油天然气、石油石化、发电和管道输送行业在环保、健康和安全保障方面一直承受着巨大的压力&#xff0c;他们必须确保相关规程在各项作业中得到全面贯彻。 阀门作为流体管道运输中的组成部分&#xff0c;其装配密封度是保证流体运输安全的重要一环&#…...

Go【gin和gorm框架】实现紧急事件登记的接口

简单来说&#xff0c;就是接受前端微信小程序发来的数据保存到数据库&#xff0c;这是我写的第二个接口&#xff0c;相比前一个要稍微简单一些&#xff0c;而且因为前端页面也是我写的&#xff0c;参数类型自然是无缝对接_ 前端页面大概长这个样子 先用apifox模拟发送请求测试…...

第一个VUE程序?

<!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>Title</title></head> <body><div id"app">{{message}} </div><!-- 1.导入Vue.js --> <script s…...

电阻器件的分类

电阻器的种类碳膜电阻膜式电阻器中的一种。气态碳氢化合物在高温和真空中分解&#xff0c;碳沉积在瓷棒或者瓷管上&#xff0c;形成一层结晶碳膜。改变碳膜厚度和用刻槽的方式变更碳膜的长度可以得到不同的阻值。碳膜电阻成本较低&#xff0c;电性能和稳定性较差&#xff0c;一…...

QT基础教程之二 第一个Qt小程序

QT基础教程之二 第一个Qt小程序 按钮的创建 在Qt程序中&#xff0c;最常用的控件之一就是按钮了&#xff0c;首先我们来看下如何创建一个按钮 QPushButton * btn new QPushButton; 头文件 #include <QPushButton>//设置父亲btn->setParent(this);//设置文字btn-&g…...

Edge用户数据目录查找

创建 Microsoft Edge 用户数据目录变量...

最新外卖霸王餐小程序、H5、微信公众号版外卖系统源码|霸王餐美团/饿了么系统/外卖红包cps粉丝裂变玩法源码下载

最新外卖霸王餐小程序、H5、微信公众号版外卖系统源码、霸王餐美团、饿了么系统&#xff0c;粉丝裂变玩源码下载&#xff0c;外卖cps小程序项目&#xff0c;外卖红包cps带好友返利佣金分销系统程序、饿了么美团联盟源码&#xff0c;外卖cps带分销返利后端源码&#xff0c;基于L…...

数据库事务四大特性

事务的4大特性&#xff08;ACID&#xff09;&#xff1a; 原子性(Atomicity)&#xff1a; 事务是数据库的逻辑工作单位&#xff0c;它对数据库的修改要么全部执行&#xff0c;要么全部不执行。 一致性(Consistemcy)&#xff1a; 事务前后&#xff0c;数据库的状态都满足所有的完…...

浅谈Router和Route

router 和 route 是在前端框架中用于管理和处理路由的两个关键概念。这两者之间的关系可以通过具体的代码来解释。在本示例中&#xff0c;我将使用 React 和 React Router 来说明它们之间的关系。 Router&#xff08;路由器&#xff09;&#xff1a;Router 是一个库或框架&…...

Linux环境安装jdk

1.安装jdk 上传jdk.tar.gz;安装包在下载内容里可以直接下载tar -zxvf jdk.tar.gz;配置环境变量&#xff1a;vi /etc/profile&#xff1b;填入以下内容&#xff1b;退出编辑模式&#xff0c;保存&#xff1b;然后source /etc/profile使配置生效&#xff1b; export JAVA_HOME/d…...

做网站都得会什么技术/广州网站优化排名系统

在Android中&#xff0c;调用系统相机拍照时&#xff0c;将会接收到返回的图像数据&#xff0c;但是这些图片并不是全尺寸的图像&#xff0c;而是系统给的缩略图&#xff0c;当对拍照的图片进行裁切后显示时&#xff0c;得到的却是模糊的图片。下面针对这个问题提出解决的方法。…...

php网站生成静态页面/东莞市网络seo推广价格

在 SQL Server 2000 中利用 Meta Data Services 创建数据库架构知识库 发布日期&#xff1a; 4/1/2004| 更新日期&#xff1a; 4/1/2004Alok Mehta和Ricardo Rodriguez 本文假设您熟悉 T-SQL、XML 和 XSL Level of Difficulty 1 2 3 请下载本文的代码&#xff1a;MetaDataServi…...

义乌做站外推广的公司/seo优化包括什么

目前我们使用的流程图制作软件大体有RFFLOW、FLOW CHARTING、VISIO三种&#xff0c;可是它们的体积和资源占用情况很大&#xff0c;操作复杂&#xff0c;有没有简单易用不需安装的流程图制作软件呢&#xff1f;下面我给大家推荐几款在线流程图制作工具。 第一款&#xff1a;Gli…...

西安网站 技术支持牛商网/网络策划

1、建立FontLibrary.fla文件&#xff0c;在其文档类FontLibrary.as中写如下代码&#xff1a; package { import flash.text.Font; public class FontLibrary extends Sprite { [Embed(systemFont"华文中宋", fontName"MyFont", unico…...

近两年成功的网络营销案例及分析/厦门站长优化工具

牛客网 编程初学者入门训练 BC69 空心正方形图案 思路&#xff1a; 大体思路&#xff1a;我们需要引用一个while循环&#xff0c;两个for循环&#xff0c;以及用if,else语句进行判断输出。具体思路&#xff1a;由于题目中出现了关键字眼——多组输入&#xff0c;所以一般都是…...

wordpress主题屏蔽更新/百度seo优化价格

1.PHP 如何实现不用自带的 cookie 函数为客户端下发 cookie。对于分布式系统&#xff0c;如何来保存 session 值。 这个题有点绕。考的还是 COOKIE 和 SESSION 的基础知识。服务端通过 set-cookie 命令来通知客户端保存 cookie。 只要按照 domain path 过期时间等规则 用 hea…...