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

网站免费建站方法/互联网广告销售

网站免费建站方法,互联网广告销售,访问网页的流程,偃师做网站DockerRemoteAPI访问控制 默认只开启了unix socket,如需开放http,做如下操作: 1、dockerd -H unix:///var/run/docker.sock -H tcp://192.168.180.210:2375 2、vim /usr/lib/systemd/system/docker.service ExecStart/usr/bin/dockerd -H uni…

DockerRemoteAPI访问控制
默认只开启了unix socket,如需开放http,做如下操作:
1、dockerd -H unix:///var/run/docker.sock -H tcp://192.168.180.210:2375
2、vim /usr/lib/systemd/system/docker.service
ExecStart=/usr/bin/dockerd -H unit:///var/run/docker.sock -H tcp://192.168.180.210:2375

vi /etc/sysconfig/docker
加上如下字段:
OPTIONS=‘–selinux-enabled -H unix://var/run/docker.sock -H tcp://0.0.0.0:2375’
//重启docker
systemctl daemon-reload
systemctl restart docker
netstat -nplt |grep 2375

(2)通过curl和http来获取docker的容器的相关信息
2.1 获取当前容器信息
通过curl:curl http://localhost:2375/containers/json

通过RemoteAPI获取docker的容器的相关信息
获取当前容器信息:
curl http://192.168.107.197:2375/containers/json
可以在浏览器中输入http://192.168.107.197:2375/containers/json
监控容器信息和导出容器
http://192.168.107.197:2375/containers/faf081fd4843/json
http://192.168.107.197:2375/containers/faf081fd4843/export
获取镜像相关信息
curl http://192.168.107.197:2375/images/json
http://192.168.107.197:2375/images/json

放行端口:
firewall-cmd --permanent --add-rich-rule=“rule family=“ipv4” source address=“192.168.107.197” port protocol=“tcp” port=“2375” accept”
firewall-reload

客户端访问:
docker -H=tcp://192.168.107.197:2375 ps

镜像的检验
CI=true dive

DockerClient 端与 DockerDaemon 的通信安全
yum install -y epel-release
yum install -y yum-utils device-mapper- persistent-data lvm2
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
yum install -y docker-ce docker-ce-cli containerd.io
systemctl stop firewalld && systemctl disable firewalld
setenforce 0
sed -i ‘s/SELINUX=enforcing/SELINUX=disabled/’ /etc/selinux/config

docker master:
hostnamectl set-hostname master && bash
vim /etc/hosts
192.168.180.210 master
192.168.180.200 client
mkdir tls
cd tls
openssl genrsa -aes256 -out ca-key.pem 4096
openssl req -new -x509 -days 1000 -key ca-key.pem -sha256 -subj “/CN=master” -out ca.pem
openssl genrsa -out server-key.pem 4096
openssl req -subj “/CN=master” -sha256 -new -key server-key.pem -out server.csr
echo subjectAltName = DNS:master,IP:127.0.0.1 >> extfile.cnf
echo extendedKeyUsage = serverAuth >> extfile.cnf
openssl x509 -req -days 365 -sha256 -in server.csr -CA ca.pem -CAkey ca-key.pem -CAcreateserial -out server-cert.pem -extfile extfile.cnf
openssl genrsa -out key.pem 4096
openssl req -subj ‘/CN=client’ -new -key key.pem -out client.csr
echo extendedKeyUsage = clientAuth > extfile-client.cnf
openssl x509 -req -days 365 -sha256 -in client.csr -CA ca.pem -CAkey ca-key.pem -CAcreateserial -out cert.pem -extfile extfile-client.cnf
rm -rf client.csr server.csr extfile.cnf extfile-client.cnf ca.srl

vim /lib/systemd/system/docker.service
ExecStart=/usr/bin/dockerd --tlsverify --tlscacert=/tls/ca.pem --tlscert=/tls/server-cert.pem --tlskey=/tls/server-key.pem -H tcp://0.0.0.0:2376 -H unix:///var/run/docker.sock
systemctl daemon-reload
systemctl restart docker
scp ca.pem root@192.168.180.200:/etc/docker/
scp cert.pem root@192.168.180.200:/etc/docker/
scp key.pem root@192.168.180.200:/etc/docker/

客户端:
hostnamectl set-hostname client && bash
vim /etc/hosts
192.168.180.210 master
192.168.180.200 client
cd /etc/docker
docker --tlsverify --tlscacert=ca.pem --tlscert=cert.pem --tlskey=key.pem -H tcp://master:2376 version

export GODEBUG=x509ignoreCN=0

CPU 内存 硬盘

check created users

grep authorized_keys $dockerfile

check OS users

grep “etc/group” $dockerfile

Check sudo users

grep “etc/sudoers.d” $dockerfile

Check ssh key pair

grep “.ssh/.*id_rsa” $dockerfile

Add your checks in below…

git clone https://github.com/docker/docker-bench-security.git

stress
vim /root/stress/Dockerfile
FROM centos:7
MAINTAINER 5CC
RUN yum -y install wget
RUN wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
RUN wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
RUN yum -y install stress

docker build -t centos:stress .

docker run -tid --cpu-shares 100 centos:stress

docker run -tid --name cpu512 --cpu-shares 512 centos:stress stress -c 10
docker run -tid --name cpu1024 --cpu-shares 1024 centos:stress stress -c 10
docker run -tid --cpu-period 100000 --cpu-quota 200000 centos:stress
cat /sys/fs/cgroup/cpu/cpu.cfs_period_us
cat /sys/fs/cgroup/cpu/cpu.cfs_quota_us

docker run -tid --name cpu1 --cpuset-cpus 0-2 centos:stress
cat /sys/fs/cgroup/cpuset/cpuset.cpus

docker exec 5204fe18208e taskset -c -p 1

docker run -tid --name cpu3 --cpuset-cpus 1 --cpu-shares 512 centos:stress stress -c 1

docker run -tid --name cpu4 --cpuset-cpus 0 --cpu-shares 1024 centos:stress stress -c 1

内存
docker run -it -m 200M --memory-swap=300M progrium/stress --vm 1 --vm-bytes 280M

docker run -it -m 200M --memory-swap=300M progrium/stress --vm 1 --vm-bytes 310M

BLKIO
docker run -it --name container_A --blkio-weight 600 centos:stress

docker run -it --device-write-bps /dev/sda:5MB centos:stress

ELK:

mkdir /var/log/Elasticsearch
chmod -R 777 /var/log/Elasticsearch

vim /etc/sysctl.conf
vm.max_map_count=655360
sysctl -p
vim /etc/security/limits.conf

  • soft nofile 65535
  • hard nofile 65535
  • soft nproc 65535
  • hard nproc 65535
  • soft memlock unlimited
  • hard memlock unlimited

docker network create ELK-kgc
dcoker network ls

cd /root/ELK/Elasticsearch

创建网络,并绑定网段
docker network create --driver bridge --subnet=172.19.0.0/16 ELK-kgc

运行Nginx:

复制nginx的配置文件到主机的/opt/nginx/目录下
配置日志格式:
log_format main '“ h t t p u s e r a g e n t " " http_user_agent"" httpuseragent""http_x_forwarded_for” ’
' r e m o t e u s e r [ remote_user [ remoteuser[time_local] “KaTeX parse error: Double superscript at position 16: request" ' '̲status b o d y b y t e s s e n t " body_bytes_sent " bodybytessent"http_referer” ’
‘$upstream_addr $upstream_status $upstream_response_time’;

构建nginx

docker run -itd -p 8011:80 --network ELK-kgc -v /var/log/nginx:/var/log/nginx -v /opt/nginx/html:/usr/share/nginx/html --name nginx-ELK --ip 172.19.0.200 nginx:kgc

在/opt/nginx/html目录下,创建index.html文件

创建日志文件:
vim /var/log/nginx/www.bdqn.cn-access.log
“YisouSpider”“106.11.155.156” - [18/Jul/2022:00:00:13 +0800] “GET /applier/position?gwid=17728&qyid=122257 HTTP/1.0” 200 9197 “-” 192.168.168.108:80 2000.032
“-”“162.209.213.146” - [18/Jul/2022:00:02:11 +0800] "GET //tag/7764.shtml HTTP/1.0"20024922 “-” 192.168.168.108:80 200 0.074
“YisouSpider”“106.11.152.248” - [18/Jul/2022:00:07:44 +0800] “GET /news/201712/21424.shtml HTTP/1.0” 200 8821 “-” 192.168.168.110:80 2000.097
“YisouSpider”“106.11.158.233” - [18/Jul/2022:00:07:44+0800]“GET/news/201301/7672.shtml HTTP/1.0” 200 8666 “-” 192.168.168.110:80 2000.111
“YisouSpider”“106.11.159.250” - [18/Jul/2022:00:07:44+0800]“GET/news/info/id/7312.html HTTP/1.0” 200 6617 “-” 192.168.168.110:80 2000.339
“Mozilla/5.0 (compatible;SemrushBot/2~bl;+http://www.semrush.com/bot.html)”“46.229.168.83”- [18/Jul/2022:00:08:57+0800]“GET/tag/1134.shtmlHTTP/1.0” 200 6030 “-” 192.168.168.108:80 200 0.079

运行Elasticsearch:
构建:
docker build -t elasticsearch .
运行:
docker run -itd --privileged -p 9200:9200 -p 9300:9300 --network ELK-kgc --ip 172.19.0.100 -v /var/log/elasticsearch:/var/log/elasticsearch --name elasticsearch elasticsearch
查看、验证:
curl -X PUT “localhost:9200/customer?pretty”
查看索引:
curl -X GET “localhost:9200/_cat/indices?v”

删除索引,通配符形式
curl -XDELETE localhost:9200/索引*

测试数据:
curl -H ‘Content-Type: application/x-ndjson’ -XPOST ‘localhost:9200/bank/account/_bulk?pretty’ --data-binary @accounts.json
curl -H ‘Content-Type: application/x-ndjson’ -XPOST ‘localhost:9200/shakespeare/doc/_bulk?pretty’ --data-binary @shakespeare_6.0.json
curl -H ‘Content-Type: application/x-ndjson’ -XPOST ‘localhost:9200/_bulk?pretty’ --data-binary @logs.jsonl

运行Kibana:
docker build -t kibana .
docker run -itd --privileged -p 5601:5601 --ip 172.19.0.110 --network ELK-kgc --name kibana kibana

运行logstash:
docker build -t logstash .
docker run -itd --privileged -p 5044:5044 --network ELK-kgc -v /opt/logstash/conf:/opt/logstash/conf --ip 172.19.0.120 --name logstash logstash

运行filebeat
docker build -t filebeat .
docker run -itd --privileged --network ELK-kgc -v /var/log/nginx:/var/log/nginx --ip 172.19.0.130 --name Filebeat filebeat

mkdir -p /opt/logstash/conf
#日志输入,可以是从stdin屏幕输入读取,可以从file指定的文件,也可以从es,filebeat,kafka,redis等读取
input {
beats {
port => 5044
}
}
#日志过滤,不是必须的
filter {
if “www-bdqn-cn-pro-access” in [tags] {
grok {
match => {“message” => ‘%{QS:agent} “%{IPORHOST:http_x_forwarded_for}” - [%{HTTPDATE:timestamp}]
“(?:%{WORD:verb}
%{NOTSPACE:request}(?: HTTP/%{NUMBER:http_version})?|-)” %{NUMBER:response}
%{NUMBER:bytes} %{QS:referrer} %{IPORHOST:remote_addr}:%{P
OSINT:port} %{NUMBER:remote_addr_response} %{BASE16FLOAT:request_time}’}
}
}
#用于解码被编码的字段,可以解决URL中 中文乱码的问题
urldecode {all_fields => true}
#日期解析字段 日期解析 解析字段中的日期,然后转存到@timestamp
date {
match => [ “timestamp” , “dd/MMM/YYYY:HH:mm:ss Z” ]
}
#添加有关用户代理(如系列,操作系统,版本和设备)的信息
useragent {
source =>“agent”
target =>“ua”
}
}
#输出字段 将事件发送到特定目标
output {
if “www-bdqn-cn-pro-access” in [tags]
{ Elasticsearch {
hosts => [“Elasticsearch:9200”]
manage_template => false
index =>“www-bdqn-cn-pro-access-%{+YYYY.MM.dd}”
}
}
}

filebeat
/var/lib/filebeat/registry

logstash
/usr/local/logstash-6.1.0/data/uuid

=ELKF日志收集=====================
一、安装docker:
yum install -y yum-utils device-mapperpersistent-data lvm2
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
yum install -y docker-ce docker-ce-cli containerd.io
systemctl start docker && systemctl enable docker

修改内核参数
vim /etc/sysctl.conf
vm.max_map_count=655360
sysctl -p
vim /etc/security/limits.conf

  • soft nofile 65535
  • hard nofile 65535
  • soft nproc 65535
  • hard nproc 65535
  • soft memlock unlimited
  • hard memlock unlimited

二、构建Nginx
在opt目录下新建nginx目录
mkdir -p /opt/nginx/html
cd /opt/nginx
上传nginx的dockerfile
创建网络
docker network create --driver bridge --subnet=172.19.0.0/16 ELK-kgc
构建Nginx
docker build -t nginx .
运行nginx容器
docker run -itd -p 8011:80 --network ELK-kgc -v /var/log/nginx:/var/log/nginx -v /opt/nginx/html:/usr/share/nginx/html --name nginx-ELK --ip 172.19.0.200 nginx
在/opt/nginx/html目录下添加index.html文件

三、构建elasticsearch
在opt目录新建elasticsearch目录
mkdir /opt/elasticsearch
在/var/log/下新建elasticsearch目录,并赋予完全控制权限
mkdir /var/log/elasticsearch
chmod 777 /var/log/elasticsearch
cd /opt/elasticsearch/
上传dockerfile到/opt/elasticsearch目录
构建elasticsearch
docker build -t elasticsearch .
运行elasticsearch
docker run -itd -p 9200:9200 -p 9300:9300 --network ELK-kgc --ip 172.19.0.100 -v /var/log/elasticsearch:/var/log/elasticsearch --name elasticsearch elasticsearch
新建索引:
curl -X PUT “localhost:9200/customer?pretty”
查看索引:
curl -X GET “localhost:9200/_cat/indices?v”

四、构建kibana
在/opt/新建kibana目录
mkdir /opt/kibana
cd /opt/kibana
上传Dockerfile
构建Kibana:
docker build -t kibana .
运行:
docker run -itd -p 5601:5601 --ip 172.19.0.110 --network ELK-kgc --name kibana kibana

五、构建logstash
在opt目录下新建logstash目录
mkdir -p /opt/logstash/conf
cd /opt/logstash/
上传Dockerfile
mv nginx-log.conf conf
在/opt/logstash目录下新建conf,将nginx-log.conf拷贝到conf
构建:
docker build -t logstash .
运行:
docker run -itd -p 5044:5044 --network ELK-kgc -v /opt/logstash/conf:/opt/logstash/conf --ip 172.19.0.120 --name logstash logstash

六、构建filebeat
在opt新建filebeat目录
mkdir /opt/filebeat
cd /opt/filebeat
上传Dockerfile
构建:
docker build -t filebeat .
运行:
docker run -itd --network ELK-kgc -v /var/log/nginx:/var/log/nginx --ip 172.19.0.130 --name filebeat filebeat

相关文章:

Docker安全及日志管理

DockerRemoteAPI访问控制 默认只开启了unix socket,如需开放http,做如下操作: 1、dockerd -H unix:///var/run/docker.sock -H tcp://192.168.180.210:2375 2、vim /usr/lib/systemd/system/docker.service ExecStart/usr/bin/dockerd -H uni…...

【LeetCode每日一题】152. 乘积最大子数组

题目: 给你一个整数数组 nums ,请你找出数组中乘积最大的非空连续子数组(该子数组中至少包含一个数字),并返回该子数组所对应的乘积。 思路 由于做了53. 最大子数组和 下意识觉得求出所有元素的以该元素结尾的连续…...

Python 反射

Python 反射是什么? 学习了几天,做个总结留给自己看。 感觉跟 SQL 入门要掌握的原理一样,Python 反射看起来也会做4件事,“增删查获” 增 - 增加属性,方法 setattr 删 - 删除属性,方法 delattr 查 - …...

HTML基本网页制作

一、制作工商银行电子表单 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>第一个网页的标题</ti…...

Tcl语言语法精炼总结

一、置换符号 1.变量置换 $ TCl解释器会将认为$后面为变量名&#xff0c;将变量名置换成它的值 2.命令置换 [] []内是一个独立的TCL语句 3.反斜杠置换 \ 换行符、空格、[、$等被TCL解释器当作特殊符号处理。加上反斜杠后变成普通字符 \t TAB \n 换行符 4.双引号 “” “…...

[GPT]Andrej Karpathy微软Build大会GPT演讲(下)--该如何使用GPT助手

该如何使用GPT助手--将GPT助手模型应用于问题 现在我要换个方向,让我们看看如何最好地将 GPT 助手模型应用于您的问题。 现在我想在一个具体示例的场景里展示。让我们在这里使用一个具体示例。 假设你正在写一篇文章或一篇博客文章,你打算在最后写这句话。 加州的人口是阿拉…...

路由器静态路由的配置

路由器静态路由的配置步骤如下&#xff1a; 进入系统视图。输入命令sys进入系统视图。配置路由器的接口IP地址。命令格式为int g0/0/0&#xff0c;其中g0/0/0表示路由器的接口&#xff0c;可以根据实际情况进行修改。然后使用命令ip add配置接口的IP地址。配置下一跳地址。在静…...

[Firefly-Linux] RK3568在Ubuntu上安装内核头文件实现本地编译驱动程序

文章目录 一、介绍二、安装三、编译驱动四、自行编译debian包一、介绍 在 Linux 操作系统中,linux-headers.deb 和 linux-images.deb 分别用于安装内核头文件和内核二进制文件。 linux-headers.deb: 内核头文件包,通常以 linux-headers-x.x.x-x 的形式命名。包含编译内核模…...

RabbitMQ Streams 详解

RabbitMQ Streams是一种持久复制数据结构&#xff0c;可以完成与队列相同的任务&#xff1a;它们缓冲来自生产者的消息&#xff0c;这些消息由消费者读取。然而&#xff0c;流与队列的区别在于两个重要方面&#xff1a;消息的存储和消费方式。 Streams为仅追加的消息日志建模&a…...

跨境电商如何利用跨境客服软件提升销售额

随着全球化的推进&#xff0c;跨境电商成为了许多企业拓展市场的重要途径。然而&#xff0c;跨境电商面临着语言、文化、时差等多种挑战&#xff0c;为了提供更好的客户服务并提升销售额&#xff0c;跨境电商需要利用跨境客服软件。本文将探讨跨境电商如何利用跨境客服软件来提…...

css/less/scss代码注意事项

一.命名 1.类名使用小写字母&#xff0c;以中划线分割;id 使用 驼峰式命名; 2.less/scss中的函数、混合采用驼峰命名; 3. class 的命名不要使用 标签名,如.p .div .img; 二.选择器 尽量使用直接子选择器&#xff0c;否则&#xff0c;有时会造成性能损耗 .content .title { .…...

Git应用——代码提交规范 feat ,fix ,style

当前使用 feat 增加新功能fix 修复问题/BUGstyle 代码风格相关无影响运行结果的perf 优化/性能提升refactor 重构revert 撤销修改test 测试相关docs 文档/注释chore 依赖更新/脚手架配置修改等workflow 工作流改进ci 持续集成types 类型定义文件更改wip 开发中 别处看到 fea…...

TDengine Kafka Connector将 Kafka 中指定 topic 的数据(批量或实时)同步到 TDengine

教程放在这里&#xff1a;TDengine Java Connector&#xff0c;官方文档已经写的很清晰了&#xff0c;不再赘述。 这里记录一下踩坑&#xff1a; 1.报错 java.lang.UnsatisfiedLinkError: no taos in java.library.pathat java.lang.ClassLoader.loadLibrary(ClassLoader.j…...

单片机的低功耗模式介绍

文章目录 简介一、功耗来源说明1.1、芯片工作模式1.2、静态损耗1.3、I/O额外损耗1.4、动态损耗 二、功耗如何测量三、降低功耗有什么方法3.1、选取合适的芯片工作模式3.2、降低工作频率3.3、关闭不需要使用的外设3.4、 降低静态电流损耗3.5、 周期采集供电3.6、 设置IO口状态 四…...

基于SSM实现的精品课程网站

一、系统架构 前端&#xff1a;jsp | js | css | jquery | bootstrap 后端&#xff1a;spring | springmvc | mybatis 环境&#xff1a;jdk1.7 | mysql | maven | tomcat 二、代码及数据库 三、功能介绍 01. 登录页 02. web端-首页 03. web端-视频教程 04. web端-资料…...

广州旅游攻略(略说一二)

广州是中国南方的一个重要城市&#xff0c;也是广东省的省会&#xff0c;拥有着悠久的历史和丰富的文化遗产。作为中国最繁华的城市之一&#xff0c;广州吸引了大量的游客前来探索其独特的魅力。今天我将为大家介绍一份广州旅游攻略&#xff0c;希望能帮助各位游客更好地了解这…...

C++STL的list模拟实现

文章目录 前言 list实现push_back迭代器(重点)普通迭代器const迭代器 inserterase析构函数构造函数拷贝构造赋值 vector和list的区别 前言 要实现STL的list, 首先我们还得看一下list的源码。 我们看到这么一个东西&#xff0c;我们知道C兼容C&#xff0c;可以用struct来创建一…...

django--分页功能

Django 提供了强大的分页功能&#xff0c;可以轻松地在视图中实现分页。 在视图中使用分页&#xff1a; # views.py from django.core.paginator import Paginator, EmptyPage, PageNotAnInteger from django.shortcuts import render from .models import YourModeldef your…...

centOS安装bochsXshell连接centos启动可视化界面

centOS安装bochs 参考&#xff1a;https://blog.csdn.net/muzi_since/article/details/102559187 首先安装依赖环境&#xff1a; yum install gtk2 gtk2-devel yum install libXt libXt-devel yum install libXpm libXpm-devel yum install SDL SDL-devel yum install libXr…...

mac m2芯片 安装nginx + php + mysql

1.安装homebrew&#xff1a; 系统本身就有&#xff08;命令brew -v查看下&#xff09;&#xff0c;如果没有安装一下 /bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)" 2.安装nginx brew install nginx 3.安装php bre…...

vue axios 使用

使用Vue中的Axios需要先安装axios库&#xff0c;可以通过yarn或npm安装&#xff1a; yarn add axios # 或者 npm install axios --save然后在Vue组件中导入axios并使用&#xff1a; import axios from axios;export default {data() {return {responseData: null,error: null…...

使用docker实现logstash同步mysql到es

准备工作&#xff1a; 1.有mysql的连接方式&#xff0c;并且可以连接成功 2.有es的连接方式&#xff0c;并且可以连接成功 3.安装了docker 环境是Ubuntu中安装了docker 一、创建配置文件&#xff0c;用于容器卷挂载 # 切换目录&#xff0c;可自定义 cd /home/test/ # 创建lo…...

hive数据仓库工具

1、hive是一套操作数据仓库的应用工具&#xff0c;通过这个工具可实现mapreduce的功能 2、hive的语言是hql[hive query language] 3、官网hive.apache.org 下载hive软件包地址 Welcome! - The Apache Software Foundationhttps://archive.apache.org/ 4、hive在管理数据时分为元…...

C语言 联合体验证 主机字节序 +枚举

联合体应用&#xff1a;验证当前主机的大小端&#xff08;字节序&#xff09; //验证当前主机的大小端 #include <stdio.h>union MyData {unsigned int data;struct{unsigned char byte0;unsigned char byte1;unsigned char byte2;unsigned char byte3;}byte; };int main…...

python和pygame实现烟花特效

python和pygame实现烟花特效 新年来临之际&#xff0c;来一个欢庆新年烟花祝贺&#xff0c;需要安装使用第三方库pygame&#xff0c;关于Python中pygame游戏模块的安装使用可见 https://blog.csdn.net/cnds123/article/details/119514520 效果图及源码 先看效果图&#xff1a…...

gRPC-Gateway:高效转换 RESTful 接口 | 开源日报 No.105

grpc-ecosystem/grpc-gateway Stars: 16.4k License: BSD-3-Clause gRPC-Gateway 是一个遵循 gRPC HTTP 规范的 gRPC 到 JSON 代理生成器。它是 Google 协议缓冲编译器 protoc 的插件&#xff0c;可以读取 protobuf 服务定义并生成反向代理服务器&#xff0c;将 RESTful HTTP…...

非专业的建模人员如何给模型设置材质纹理贴图?

在线工具推荐&#xff1a; 3D数字孪生场景编辑器 - GLTF/GLB材质纹理编辑器 - 3D模型在线转换 - Three.js AI自动纹理开发包 - YOLO 虚幻合成数据生成器 - 三维模型预览图生成器 - 3D模型语义搜索引擎 1、材质和纹理的区别于关联 材质&#xff08;Material&#xff09;是…...

自动化测试、压力测试、持续集成

因为项目的原因&#xff0c;前段时间研究并使用了 SoapUI 测试工具进行自测开发的 api。下面将研究的成果展示给大家&#xff0c;希望对需要的人有所帮助。 SoapUI 是什么&#xff1f; SoapUI 是一个开源测试工具&#xff0c;通过 soap/http 来检查、调用、实现 Web Service …...

FFmpeg之HWContextType

HWContextType算是ffmpeg中为硬解码第三方接口的一个辅助类&#xff0c;它自己有两个辅助子类 AVHWDeviceContext和AVHWFramesContext。 AVHWDeviceContext主要表示硬件上下文 AVHWFramesContext主要表示硬件Frame的一些参数&#xff0c;比如你解码后的YUV数据还在硬件上&#…...

Python面向对象之类和对象(Python系列16)

前言&#xff1a;面向对象是什么&#xff0c;为什么要学面向对象&#xff1f;面向对象是一种思想&#xff0c;让我们的程序变得更加的贴切我们的生活&#xff0c;更加的形象&#xff0c;让代码的可读性和扩展性变得更高。 面向对象&#xff1a;可以使用类将变量和函数组成新的…...