Zabbix从入门到精通以及案例实操系列

news/2024/5/10 2:57:12/文章来源:https://blog.csdn.net/prefect_start/article/details/130949683

1、Zabbix入门

1.1、Zabbix概述

Zabbix是一款能够监控各种网络参数以及服务器健康性和完整性的软件。Zabbix使用灵活的通知机制,允许用户为几乎任何事件配置基于邮件的告警。这样可以快速反馈服务器的问题。基于已存储的数据,Zabbix提供了出色的报告和数据可视化功能。

1.2、Zabbix的特点

Zabbix的主要特点包括:

  • 多种监控方式:Zabbix支持SNMP、JMX、IPMI等多种监控方式,可以监控网络设备、操作系统、数据库、Web应用程序等各种系统组件。

  • 自定义监控项:Zabbix允许用户自定义监控项,可以通过脚本、API等方式添加自定义监控项,以监测企业的特定应用程序和业务需求。

  • 高度可配置:Zabbix提供了大量的配置选项,可以根据需要灵活配置监控对象、告警规则、通知方式、用户权限等设置。

  • 丰富的预警机制:Zabbix支持多种告警规则,可以通过Email、短信、声音、微信等多种方式向管理员发送告警信息,支持条件触发、阈值判断等多种告警方法。

  • 可视化展示:Zabbix提供了丰富的可视化展示功能,可以通过仪表盘、图表、地图等方式呈现监控数据。

  • 网络拓扑图:Zabbix支持绘制全局网络拓扑图以及单个设备的拓扑图,可以帮助管理员更好地了解网络结构和连接状态。

1.3、Zabbix的构成

zabbix主要由以下5个组件构成:

  • Server:zabbix server是zabbix的核心组件,server内部存储了所有的配置信息、统计信息和操作信息。zabbix agent会向zabbix server报告可用性、完整性及其他统计信息。
  • web页面:web页面也是zabbix的一部分,通常和zabbix server位于一台物理设备上,但是在特殊情况下也可以分开配置。web页面主要提供了直观的监控信息,以方便运维人员监控管理。
  • 数据库:zabbix数据库内存储了配置信息、统计信息等zabbix的相关内容。
  • proxy:zabbix proxy可以根据具体生产环境进行采用或者放弃。如果使用了zabbix proxy,则其会替代zabbix server采集数据信息,可以很好的分担zabbix server的负载。zabbix proxy通常运用与架构过大、zabbix server负载过重,或者是企业设备跨机房、跨网段、zabbix server无法与zabbix agent直接通信的场景。
  • Agent:zabbix agent通常部署在被监控目标上,用于主动监控本地资源和应用程序,并将监控的数据发送给zabbix server。

1.4、Zabbix的术语

  • 主机(host):要监控的设备,可以由IP或者是主机名(必须可解析)指定。
  • 主机组(host group):主机的逻辑容器,包含主机和模板,主机组通常在给用户或者是用户组指派监控权限时使用。
  • 监控项(item):一个特定监控指标的相关数据,比如内存的大小、CPU的使用率,甚至是服务的运行状态等等。监控项数据来源于被监控对象,并且每个监控项都由一个key来标识。
  • 触发器(trigger):一个表达式,用于评估监控项的值是否在合理的范围内。当接收的值超出触发器的规定时,就被认为是故障,如果超出后再次符合,就被认为是正常。
  • 事件(event):触发器触发的一个特定事件,或者是zabbix定义的一个自动上线注册主机的事件。
  • 动作(action):指根据配置,zabbix对于触发器触发的特定事件进行处理的具体措施,如执行某个脚本,或者是向管理员邮箱发送邮件等等。
  • 报警升级(escalation):发送警报或者是执行远程命令的自定义方案。
  • 媒介(media):发送通知(告警)的手段,如微信、邮件、钉钉等等。
  • 通知(notification):通过指定的媒介,向用户发送的有关事件的信息。
  • 远程命令(remote command):指运维人员提前写好的命令,可以让被监控主机在触发事件后执行。
  • 模板(template):用于快速定义被监控主机的预设条目集合,通常包括了监控项、触发器、应用等,模板可以直接链接至某个主机。
  • 应用(application):一组监控项的集合。
  • web场景(web scennario):用于检测web站点可用性的一个或多个HTTP请求。
  • 前端(frontend):zabbix的web接口。
  • Zabbix API:Zabbix API允许用户使用JSON RPC协议来创建、更新和获取Zabbix对象(如主机、监控项、图形和其他)信息或者执行任何其他的自定义的任务
  • Zabbix server:Zabbix监控的核心程序,主要功能是与Zabbix proxies和Agents进行交互、触发器计算、发送告警通知;并将数据集中保存等
  • Zabbix agent:部署在监控对象上的,能够主动监控本地资源和应用的程序
  • Zabbix proxy:一个帮助Zabbix Server收集数据,分担Zabbix Server的负载的程序
  • 加密(encryption):支持Zabbix组建之间的加密通讯(server, proxy, agent, zabbix_sender 和 zabbix_get 程序) 使用TLS(Transport Layer Security )协议

1.5、Zabbix的基础架构

Zabbix在进行监控时,zabbix客户端要安装在被监控设备上,负责定期收集数据,并将其发送给zabbix服务端;zabbix服务端要安装在监控设备上,其将zabbix客户端发送的数据存储的数据库中,zabbix web根据数据在前端进行展示和绘图。

zabbix的数据收集分为两种模式:

  • 主动模式:zabbix客户端主动向zabbix server请求监控项列表,并主动将监控项内需要的数据提交给zabbix server。

  • 被动模式:zabbix server向 agent 请求获取监控项的数据,zabbix agent返回数据。

zabbix的主动和被动模式是以zabbxi客户端为基准的。

在这里插入图片描述

2、Zabbix部署

2.1、集群规划

在这里插入图片描述

2.2、集群部署

2.2.1、关闭防火墙(3台节点)

[song@hadoop102 ~]$ sudo service iptables stop
[song@hadoop102 ~]$ sudo chkconfig iptables off[song@hadoop103 ~]$ sudo service iptables stop
[song@hadoop103 ~]$ sudo chkconfig iptables off[song@hadoop104 ~]$ sudo service iptables stop
[song@hadoop104 ~]$ sudo chkconfig iptables off

2.2.2、关闭SELinux(hadoop102)

2.2.2.1、SELinux介绍

SELinux(Security-Enhanced Linux)是一种Linux操作系统的安全加固措施,它提供了强大的访问控制机制来保护系统资源和数据的安全性。通常情况下,Linux系统使用标准的Unix访问控制(DAC)模式来实现安全管理,但是这种安全模式有许多缺陷。

SELinux通过引入一个三元(Subject-Object-Action)安全性模型,可以更加细粒度地控制系统中的各个资源的访问权限,从而更好地保护系统的安全。SELinux不仅能够保护文件、网络、进程等系统资源,还能够保护系统核心、设备、网络服务等重要组件的安全。

在SELinux的安全模型中,每个主体(Subject)都被授予一组安全上下文(Security Context),其中包括了用户、角色、类型等信息。每个对象(Object)也有一个安全上下文,包括了文件、目录、设备、网络端口等信息。在SELinux的安全策略中,规定了哪些主体可以执行哪些操作,并指定了允许访问的对象。只有当主体满足所有安全策略的要求时,才能够执行相应的操作。

SELinux的作用主要有以下几个方面:

  • 提高系统的安全性能,提高系统的抗攻击能力。

  • 精细控制用户的权限,只允许他们执行必要的操作。

  • 可以帮助管理员更好地了解系统的运行状态和发现潜在的安全漏洞。

  • 在保护系统和数据方面提供了一层额外的保障。

总之,SELinux是一种强大的Linux安全机制,可以提供更加细致的访问控制和更好的安全性能,提高了系统的稳定性、可靠性和安全性。

2.2.2.2、修改配置文件/etc/selinux/config

[song@hadoop102 ~]$ sudo vim /etc/selinux/config

修改如下内容

# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#     enforcing - SELinux security policy is enforced.
#     permissive - SELinux prints warnings instead of enforcing.
#     disabled - No SELinux policy is loaded.
SELINUX=disabled
# SELINUXTYPE= can take one of these two values:
#     targeted - Targeted processes are protected,
#     mls - Multi Level Security protection.
SELINUXTYPE=targeted

2.2.2.3、重启服务器

[song@hadoop102 ~]$  sudo reboot

2.2.3、配置Zabbix yum源(3台节点)

2.2.3.1、安装yum仓库

  1. 安装zabbix的yum仓库
[song@hadoop102 ~]$ sudo rpm -Uvh https://mirrors.aliyun.com/zabbix/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm
[song@hadoop103 ~]$ sudo rpm -Uvh https://mirrors.aliyun.com/zabbix/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm
[song@hadoop104 ~]$ sudo rpm -Uvh https://mirrors.aliyun.com/zabbix/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm
  1. 安装Software Collections仓库
[song@hadoop102 ~]$ sudo yum install -y centos-release-scl
[song@hadoop103 ~]$ sudo yum install -y centos-release-scl
[song@hadoop104 ~]$ sudo yum install -y centos-release-scl

2.2.3.2、修改zabbix仓库配置文件

hadoop102、hadoop103、hadoop104三台节点,依次执行如下步骤。

2.2.3.2.1、修改为阿里云镜像
  1. 查看原始zabbix.repo文件
[song@hadoop102 ~]$ sudo cat /etc/yum.repos.d/zabbix.repo

查看内容如下

[zabbix]
name=Zabbix Official Repository - $basearch
baseurl=http://repo.zabbix.com/zabbix/5.0/rhel/7/$basearch/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591[zabbix-frontend]
name=Zabbix Official Repository frontend - $basearch
baseurl=http://repo.zabbix.com/zabbix/5.0/rhel/7/$basearch/frontend
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591[zabbix-debuginfo]
name=Zabbix Official Repository debuginfo - $basearch
baseurl=http://repo.zabbix.com/zabbix/5.0/rhel/7/$basearch/debuginfo/
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591
gpgcheck=1[zabbix-non-supported]
name=Zabbix Official Repository non-supported - $basearch
baseurl=http://repo.zabbix.com/non-supported/rhel/7/$basearch/
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX
gpgcheck=1
  1. 执行以下命令完成全局替换
[song@hadoop102 ~]$ sudo sed -i 's/http:\/\/repo.zabbix.com/https:\/\/mirrors.aliyun.com\/zabbix/g' /etc/yum.repos.d/zabbix.repo
  1. 查看修改之后的zabbix.repo文件
[song@hadoop102 ~]$ sudo cat /etc/yum.repos.d/zabbix.repo

查看内容如下

[zabbix]
name=Zabbix Official Repository - $basearch
baseurl=https://mirrors.aliyun.com/zabbix/zabbix/5.0/rhel/7/$basearch/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591[zabbix-frontend]
name=Zabbix Official Repository frontend - $basearch
baseurl=https://mirrors.aliyun.com/zabbix/zabbix/5.0/rhel/7/$basearch/frontend
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591[zabbix-debuginfo]
name=Zabbix Official Repository debuginfo - $basearch
baseurl=https://mirrors.aliyun.com/zabbix/zabbix/5.0/rhel/7/$basearch/debuginfo/
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591
gpgcheck=1[zabbix-non-supported]
name=Zabbix Official Repository non-supported - $basearch
baseurl=https://mirrors.aliyun.com/zabbix/non-supported/rhel/7/$basearch/
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX
gpgcheck=1
2.2.3.2.2、修改为阿里云镜像启用zabbix-web仓库

打开/etc/yum.repos.d/zabbix.repo文件,做如下修改

[zabbix]
name=Zabbix Official Repository - $basearch
baseurl=https://mirrors.aliyun.com/zabbix/zabbix/5.0/rhel/7/$basearch/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591[zabbix-frontend]
name=Zabbix Official Repository frontend - $basearch
baseurl=https://mirrors.aliyun.com/zabbix/zabbix/5.0/rhel/7/$basearch/frontend
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591[zabbix-debuginfo]
name=Zabbix Official Repository debuginfo - $basearch
baseurl=https://mirrors.aliyun.com/zabbix/zabbix/5.0/rhel/7/$basearch/debuginfo/
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591
gpgcheck=1[zabbix-non-supported]
name=Zabbix Official Repository non-supported - $basearch
baseurl=https://mirrors.aliyun.com/zabbix/non-supported/rhel/7/$basearch/
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX
gpgcheck=1

2.2.4、安装Zabbix

hadoop102、hadoop103、hadoop104三台节点分别执行以下安装命令

[song@hadoop102 ~]$ sudo yum install -y zabbix-server-mysql zabbix-agent zabbix-web-mysql-scl zabbix-apache-conf-scl
[song@hadoop103 ~]$ sudo yum install -y zabbix-agent
[song@hadoop104 ~]$ sudo yum install -y zabbix-agent

2.2.5、配置Zabbix

2.2.5.1、创建zabbix数据库

[song@hadoop102 ~]$ mysql -uroot -p000000 -e"create database zabbix character set utf8 collate utf8_bin"

2.2.5.2、导入Zabbix建表语句

[song@hadoop102 ~]$ zcat /usr/share/doc/zabbix-server-mysql-5.0.9/create.sql.gz | mysql -uroot -p000000 zabbix

2.2.5.3、配置Zabbix_Server(hadoop102)

修改zabbix-server配置文件

[song@hadoop102 ~]$ sudo vim /etc/zabbix/zabbix_server.confDBHost=hadoop102
DBName=zabbix
DBUser=root
DBPassword=000000

2.2.5.4、配置Zabbix_Agent(三台节点)

修改zabbix-agent配置文件

[song@hadoop102 ~]$ sudo vim /etc/zabbix/zabbix_agentd.conf

修改如下内容:

Server=hadoop102
#ServerActive=127.0.0.1
#Hostname=Zabbix server

2.2.5.5、配置Zabbix_Web时区

修改/etc/opt/rh/rh-php72/php-fpm.d/zabbix.conf文件

[song@hadoop102 ~]$ sudo vim /etc/opt/rh/rh-php72/php-fpm.d/zabbix.conf

修改如下内容:

[zabbix]
user = apache
group = apachelisten = /var/opt/rh/rh-php72/run/php-fpm/zabbix.sock
listen.acl_users = apache
listen.allowed_clients = 127.0.0.1pm = dynamic
pm.max_children = 50
pm.start_servers = 5
pm.min_spare_servers = 5
pm.max_spare_servers = 35php_value[session.save_handler] = files
php_value[session.save_path]    = /var/opt/rh/rh-php72/lib/php/session/php_value[max_execution_time] = 300
php_value[memory_limit] = 128M
php_value[post_max_size] = 16M
php_value[upload_max_filesize] = 2M
php_value[max_input_time] = 300
php_value[max_input_vars] = 10000
php_value[date.timezone] = Asia/Shanghai

2.2.6、启动停止Zabbix

2.2.6.1、启动Zabbix

[song@hadoop102 ~]$ sudo systemctl start zabbix-server zabbix-agent httpd rh-php72-php-fpm
#设置开机自启动
[song@hadoop102 ~]$ sudo systemctl enable zabbix-server zabbix-agent httpd rh-php72-php-fpm
[song@hadoop103 ~]$ sudo systemctl start zabbix-agent
#设置开机自启动
[song@hadoop103 ~]$ sudo systemctl enable zabbix-agent
[song@hadoop104 ~]$ sudo systemctl start zabbix-agent
#设置开机自启动
[song@hadoop104 ~]$ sudo systemctl enable zabbix-agent

查看是否启动成功

sudo systemctl status zabbix-server zabbix-agent httpd rh-php72-php-fpm

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

2.2.6.2、停止Zabbix

[song@hadoop102 ~]$ sudo systemctl stop zabbix-server zabbix-agent httpd rh-php72-php-fpm
# 关闭开机自启动
[song@hadoop102 ~]$ sudo systemctl disable zabbix-server zabbix-agent httpd rh-php72-php-fpm
[song@hadoop103 ~]$ sudo systemctl stop zabbix-agent
# 关闭开机自启动
[song@hadoop103 ~]$ sudo systemctl disable zabbix-agent
[song@hadoop104 ~]$ sudo systemctl stop zabbix-agent
# 关闭开机自启动
[song@hadoop104 ~]$ sudo systemctl disable zabbix-agent

2.2.6.3、连接Zabbix_Web数据库

  1. 浏览器访问http://hadoop102/zabbix/

在这里插入图片描述

  1. 检查配置

在这里插入图片描述

  1. 配置数据库
    在这里插入图片描述

  2. 配置zabbix-server

在这里插入图片描述
在这里插入图片描述

2.2.6.4、登录Zabbix

  1. 用户名密码如下,用户名:Admin 密码:zabbix

在这里插入图片描述

  1. 点击User Settings,语言设成中文

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2.3、Zabbix的使用

2.3.1、创建Host

  1. 点击配置/主机/创建主机

在这里插入图片描述

  1. 配置主机(Host)

在这里插入图片描述

  1. 查看新增(Host)

在这里插入图片描述

  1. 重复以上步骤,再创建hadoop103、hadoop104主机。

在这里插入图片描述

2.3.2、创建监控项(Items)

  1. 点击监控项(Items)

在这里插入图片描述

  1. 点击创建监控项(Create Item)

在这里插入图片描述

  1. 配置监控项(Item)

在这里插入图片描述

  1. 查看创建的监控项
    在这里插入图片描述

  2. 查看监控项最新数据

在这里插入图片描述

2.3.3、创建触发器(Trigger)

  1. 点击配置/主机/触发器

在这里插入图片描述

  1. 点击创建触发器

在这里插入图片描述

  1. 编辑触发器

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2.3.4、创建动作(Action)

  1. 点击配置/动作/创建动作

在这里插入图片描述

  1. 编辑动作(Action)

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2.3.5、邮件报警

  1. 申请注册一个126邮箱,可以采用126、163、qq等邮箱。下面以126邮箱为例。
  2. 点击邮箱账号=》账号管理

在这里插入图片描述

  1. 开启SMTP服务

在这里插入图片描述

  1. 保存授权码

在这里插入图片描述

2.3.6、创建报警媒介类型(Media type)

  1. 点击管理/报警媒介类型/Email

在这里插入图片描述

  1. 编辑Email

在这里插入图片描述

  1. 测试Email

在这里插入图片描述

  1. Email绑定收件人

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2.3.7、测试

  1. 关闭集群中的HDFS,会有如下效果
[song@hadoop102 hadoop-3.1.3]$ sbin/stop-dfs.sh
  1. 查看仪表盘故障信息
    在这里插入图片描述
  2. 查看邮件,接收故障信息

在这里插入图片描述

2.4、集成Grafana

2.4.1、部署Grafana

  1. 下载Grafana安装包
  • 官方仓库:https://dl.grafana.com/oss/release/grafana-7.4.3-1.x86_64.rpm
  • 国内镜像:https://repo.huaweicloud.com/grafana/7.4.3/grafana-7.4.3-1.x86_64.rpm
  1. 将安装包上传到hadoop102主机的/opt/software路径
  2. 使用rpm安装Grafana
[atguigu@hadoop102 software]$ sudo rpm -ivh grafana-7.4.3-1.x86_64.rpm
  1. 启动Grafana
[atguigu@hadoop102 software]$ sudo systemctl start grafana-server
  1. 访问Grafana页面
    访问地址为:http://hadoop102:3000/,首次登录用户名和密码均为 admin

在这里插入图片描述
设置新密码或者跳过
在这里插入图片描述

2.4.2、快速入门

  1. 创建Dashboard

在这里插入图片描述

  1. 新建panel

在这里插入图片描述

  1. 选择数据源,此处选择Grafana提供的随机测试数据

在这里插入图片描述

  1. 选择合适的可视化类型

在这里插入图片描述

  1. 保存Dashboard和panel,并命名

在这里插入图片描述

2.4.3、集成Zabbix

2.4.3.1、配置数据源

使用Grafana与其他系统集成时,需要配置对应的DataSource

  1. 点击下图所示按钮,增加数据源

在这里插入图片描述

  1. 选择所需数据源

在这里插入图片描述

  1. 如没有所需数据源,点击下图所示地址,获取更多数据源

在这里插入图片描述

  1. 搜索zabbix,并点击搜索结果

在这里插入图片描述

  1. 按照所需插件的说明进行部署

在这里插入图片描述

  1. 以下是插件部署步骤

  2. 安装插件

[atguigu@hadoop102 software]$ sudo grafana-cli plugins install alexanderzobnin-zabbix-app
  1. 重启Grafana
[atguigu@hadoop102 software]$ sudo systemctl restart grafana-server
  1. 启用插件

    • 点击设置/插件
      在这里插入图片描述
    • 搜索zabbix,并点击搜索结果
      在这里插入图片描述
    • 启用Zabbix插件
      在这里插入图片描述
  2. 配置zabbix数据源

    1. 新增数据源
      在这里插入图片描述

    2. 搜索zabbix,并点击搜索结果
      在这里插入图片描述

    3. 配置数据源
      在这里插入图片描述

2.4.3.2、集成案例

  1. 为体现展示效果,在Zabbix中为hadoop102主机应用一个Zabbix内置的Linux系统监控模板。
  2. 找到hadoop102主机

在这里插入图片描述

  1. 点击模板,搜索linux,并选择Template OS Linux by Zabbix agent

在这里插入图片描述

  1. 点击更新

在这里插入图片描述

  1. 点击Dashboards,找到前边创建的Test看板

在这里插入图片描述

  1. 新建panel

在这里插入图片描述

  1. 选择Zabbix数据源

在这里插入图片描述

  1. 选择要展示的监控项

在这里插入图片描述

  1. 选择合适的图标类型

在这里插入图片描述

  1. 保存配置

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_308877.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

JAVA开发(手工处理数据库表数据的一些示例算法)

背景: 在项目开发中,有时候需要手动处理一下数据库表的数据。涉及到数据得到备份、恢复,清洗,计算,合并等操作。 举例记录一下最近对数据的一些处理过程。 1、对数据表进行数据量统计 select count(*) from table…

python 自动编译VS项目

目录 一、python自动编译项目 1、环境变量 1) CMAKE 2)VS 2、CMAKE 生成VS项目 1) cmake 命令介绍 2)python 调用cmake 命令 3、devenv编译VS项目 1) devenv介绍 2)devenv命令行开关 3) 自动编译VS项目 一、python自动编译项目 …

玩转用户旅程地图

图:史江鸿 从事需求分析和产品设计工作已经有几个年头了,我很享受这个职业。因为在这段职业历程中,我学到了很多有意思的方法和工具,用户旅程地图就是其中一个。 如今在国内外许多IT公司,用户旅程地图已经成为需求分析…

100万数据导出,居然爆炸了OutOfMemoryError?【EasyPoi实战系列】- 第472篇

历史文章(文章累计460) 《国内最全的Spring Boot系列之一》 《国内最全的Spring Boot系列之二》 《国内最全的Spring Boot系列之三》 《国内最全的Spring Boot系列之四》 《国内最全的Spring Boot系列之五》 《国内最全的Spring Boot系列之六》 用…

软考高级架构师笔记-5计算机网络

目录 1. 前言 & 考情分析2. 网络功能和分类2.1 通信技术3. OSI七层模型及协议3. 1 局域网和广域网协议3. 2 协议3. 3 交换技术、路由、传输介质4 IP地址5 网络存储技术6 其它考点8. 结语1. 前言 & 考情分析 前文回顾: 软考高级架构师笔记-1计算机硬件软考高级架构师笔…

喜讯!图扑荣获用友年度十佳产业融合生态伙伴称号

2023 年 4 月 20 日,由中华全国工商业联合会联合工业和信息化部、国务院国资委组织开展的 2023 年度“百场万企”大中小企业融通对接活动——智能制造 MES 产业融通对接会暨 2023 用友 BIP 技术大会 MES 生态创新专题论坛在用友产业园顺利召开。 用友年度生态合作伙…

STM32 Linux开发板丨STM32MP157开发板资料手册+实战教程+视频教程

iTOP-STM32MP157开发板是基于意法半导体STARM双Cortex-A7核加单Cortex-M4核的一款多核异构处理器。Cortex-A7内核提供对开源操作系统Linux的支持,借助Linux系统庞大而丰富的软件组件处理复杂应用。M4内核上运行对于实时性要求严格的应用。 开发板既有A7核&#xff…

一般测试用例执行过程的四个步骤

一般测试用例执行过程的四个步骤 测试用例的执行过程是软件测试中非常重要的一环,它可以有效验证软件是否符合预期的功能和性能要求,进而保证软件的质量和稳定性。一般来说,测试用例的执行过程可以分为四个步骤: 第一步&#xff1…

Unity之2D碰撞器

1、什么是碰撞器 碰撞器是用于在物理系统中 表示物体体积的的(形状或范围) 刚体通过得到碰撞器的范围信息进行计算 判断两个物体的范围是否接触 如果接触 刚体就会模拟力的效果产生速度和旋转 2、参数 Edit Collider:编辑碰撞器 Material…

Python十类常见异常类型(附捕获以及异常处理方式)

目录 前言十类异常1.TypeError2.ValueError3.NameError4.IndexError5.KeyError6.ZeroDivisionError7.IOError8.ImportError9.AttributeError10.KeyboardInterrupt 异常捕获以及处理总结 前言 大家好,我是辣条哥!今天给大家讲讲我们刚开始写代码是都会出现…

TYAN 于Computex2023 展示支持第四代英特尔至强可扩展处理器的新款服务器

【台北讯2023年5月30日】隶属神达集团,神雲科技旗下服务器通路领导品牌TYAN(泰安),于2023 台北国际计算机展(Computex 2023)5月30日至6月2日展览期间,在台北世贸南港展览1馆4楼 M0701a摊位展示最…

【C++】struct 和 class 的区别

欢迎来到博主 Apeiron 的博客,祝您旅程愉快。时止则止,时行则行。动静不失其时,其道光明。 目录 1、缘起 2、示例代码 3、总结 1、缘起 在 C 中,struct 和 class 唯一的区别就在于 默认的访问权限不同。区别如下: …

界面控件DevExpress WinForms全新的UI模板,解决各种业务线需求!

去年秋天DevExpress官方发布了一个新的 WinForms UI模板预览版(第一个EAP只提供给DevExpress宇宙版激活的用户) ,这些精炼的、随时可用的“模板”旨在启动表单设计/开发过程。有了这个模板,用户可以创建/交付现成的UI解决方案&…

MySQL进阶- SQL优化和视图

目录 SQL优化插入数据时的SQL优化(insert优化,和大批量数据插入)主键优化order by优化(排序操作的优化)group by优化(分组优化)limit优化(分页查询优化) SQL优化 插入数…

高压放大器在驱动压电陶瓷进行铝板无损检测中的应用研究

想要达成在不损害或不影响被测对象使用性能及自身性质的前提下,对被测对象内部进行缺陷,结构,失效分析,就得用到无损检测(Non Destructive Testing)技术,最常用的无损检测方法有很多&#xff0c…

软件测试总结

软件生命周期(SDLC)的六个阶段 1、问题的定义及规划 此阶段是软件开发方与需求方共同讨论,主要确定软件的开发目标及其可行性。 2、需求分析 在确定软件开发可行的情况下,对软件需要实现的各个功能进行详细分析。需求分析阶段是一个很重要…

Web的基本漏洞--CSRF漏洞

目录 一、CSRF漏洞介绍 1.CSRF漏洞原理 2.CSRF漏洞的类型 3.漏洞识别 4.漏洞攻击 5.CSRF漏洞的危害 6.CSRF漏洞防御 7.CSRF和XSS的区别 一、CSRF漏洞介绍 1.CSRF漏洞原理 CSRF(cross site request forgery)是指跨站请求伪造,是指利用受害者尚未…

whistle以及谷歌插件Proxy SwitchyOmega实现代理

whistle提供本地服务器,以及代理 Proxy SwitchyOmega拦截浏览器的网络请求,指向whistle服务 ip 为什么要用它们呢? 其实一开始使用的是mac的charles,但是出现了网页上传文件数据的时候会被篡改,也可能是我配置的原因…

交换机的4种网络结构方式:级联方式、堆叠方式、端口聚合方式、分层方式

交换机是计算机网络中重要的网络设备之一,用于实现局域网(LAN)内部的数据转发和通信。交换机可以采用不同的网络结构方式来满足不同的网络需求和拓扑结构。本文将详细介绍交换机的四种网络结构方式:级联方式、堆叠方式、端口聚合方…

快速实现TF03-CAN与电脑通信操作说明

目录 一、前言二、工具准备三、连接方式3.1 串口通信连接方式3.2 CAN 通信连接方式 四、TF03 与电脑通信操作说明4.1 切换为CAN通信4.2 安装 USB_CAN TOOL 驱动4.3 CAN 通信下修改波特率 五、常见问题反馈5.1 V9.11 USB-CAN tool按照上述方案发送文件指令不成功的解决方案 一、…