Blog:博客园 个人

在使用Zabbix过程中,正确的调整Zabbix系统,使之保持高性能是非常重要的,能够充分利用硬件资源,监控更多主机和性能指标。

硬件

关于zabbix server端硬件的建议:

  • 处理器:使用最新稳定的处理器,一般同级别的处理器,新一代的往往比上一代的性能更强、功耗更低;
  • 磁盘:建议固态硬盘,或者不低于10K RPM的机械硬盘,建议做RAID;
  • 内存:通常建议不低于8G,若监控主机超过1000台,建议配置更高的内存;
  • 网卡:建议至少千兆网卡;

官网硬件配置参考:

规模 平台 CPU/内存 数据库 受监控的主机数量
小型 CentOS Virtual Appliance MySQL InnoDB 100
中型 CentOS 2 CPU cores/2GB MySQL InnoDB 500
大型 RedHat Enterprise Linux 4 CPU cores/8GB RAID10 MySQL InnoDB 或 PostgreSQL >1000
极大型 RedHat Enterprise Linux 8 CPU cores/16GB Fast RAID10 MySQL InnoDB 或 PostgreSQL >10000

Tips:实际配置应不低于官方推荐。

系统

  • 使用最新稳定版的操作系统,比如CentOS目前最新稳定版是7.9;
  • 最小化安装系统镜像,按需安装Zabbix Server需要的依赖;
  • 调整内核参数,调整open filesmax user processes等参数;
  • 应以特定用户最小权限去运行Zabbix程序和文件;
  • 时间同步,在运行 Zabbix 的服务器上拥有精确的系统日期非常重要;

数据库

  • 推荐MySQL5.7+;
  • 独立部署;
  • 推荐使用固态+Raid;
  • 足够的磁盘空间

Zabbix 数据库大小主要取决于这些变量,这些变量决定了存储的历史数据量:

  • 每秒处理值的数量;
  • 历史数据;

Zabbix 将接收到的值保存一段固定的时间,通常为几周或几个月。 每个新值都需要一定量的磁盘空间用于数据和索引。

web服务

  • PHP:建议使用Zabbix官网推荐版本;
  • Nginx:建议使用最新稳定版本;

Zabbix Server

配置文件优化参考:

参数名称 说明
CacheSize 256M 缓存大小, 单位为字节。 用于存储主机、监控项、触发器数据的共享内存大小。 Zabbix2.2.3以前的版本最大可配置值为2GB。
CacheUpdateFrequency 60 Zabbix 配置缓存更新频率, 单位为秒. 另外参考 runtime control 选项。
DebugLevel 3 指定调试等级: 0 - Zabbix进程的起停基本信息 1 - 严重(Critical)信息 2 - 错误(Error)信息 3 - 警告(Warning)信息 4 - 调试(Debug)信息 (产生大量信息) 5 - 扩展调试 (产生更多信息) 另外可参考 runtime control 选项。
ExportFileSize 1G 每个导出文件的最大限制,单位为字节。仅当ExportDir参数设置后才使用,用于轮转生成导出的文件。 此参数从Zabbix 4.0.0开始支持。
HistoryCacheSize 128M 历史缓存数据大小, 单位为字节。
HistoryIndexCacheSize 16M 历史索引缓存大小, 单位为字节。\缓存一个item大概需要大小为100字节的空间。 该参数从Zabbix 3.0.0开始支持。
HistoryStorageDateIndex 1 启用历史数据预处理,可以将数据存储到不同的基于时间的索引: 0 - 禁止 1 - 允许
HistoryStorageURL 你的ES URL 历史数据存储 HTTP[S] URL,用于把历史数据存储到ElasticSearch。 这个参数参考 Elasticsearch进行配置。
HistoryStorageTypes uint,dbl,str,log,text 以逗号分隔的列表配置哪些类型的历史数据需要存储到Elasticsearch。 这个参数参考 Elasticsearch 进行配置。
HousekeepingFrequency 3 Zabbix 执行 housekeeping 的频率 (单位为小时)。 housekeeping负责从数据库中删除过期的信息。 注意: 为了防止 housekeeper 负载过大 (例如, 当历史和趋势周期大大减小时), 对于每一个监控项,不会在一个housekeeping周期内删除超过4倍HousekeepingFrequency 的过期数据。 因此, 如果 HousekeepingFrequency 是 1小时, 一个周期内不会删除超过4小时的过期信息 (从最旧的数据开始) 。 备注: 为降低 server压力, housekeeping将在server启动以后,延迟30分钟执行。 因此, 如果 HousekeepingFrequency 是1小时,server启动30分后执行第一次 housekeeping , 然后按1小时为周期重复执行。从Zabbix 2.4.0以后有了这种延迟行为。 从Zabbix 3.0.0开始,可以设置HousekeepingFrequency为0来禁止自动housekeeping。 此时 housekeeping 只能通过 housekeeper_execute 启动, 在一个housuekeeping周期内删除的过期信息时长为从最后一次housekeeping以来到配置周期的4倍,不少于4小时且不大于4天。 也可参见运行控制 选项。
LogFile 日志文件名称。
LogFileSize 128 日志文件大小,单位 MB。 0 - 禁止日志文件自动回滚. 注意: 如果日志文件达到限定的大小,文件回滚失败, 不管是什么原因, 现有的日志会被截断,并重新记录日志。
LogType file 日志输出类型: file - 写入LogFile 参数指定的日志文件中, system - 写入syslog, console - 控制台输出. 从Zabbix 3.0.0开始支持该参数。
LogSlowQueries 3 数据库查询消耗时间,大于该时间将会记入日志 (毫秒)。 0 - 不记录慢查询日志。 DebugLevel=3时该选项可用。 从Zabbix 1.8.2开始支持该参数
MaxHousekeeperDelete 50000 一个housekeeping周期内,一个任务删除的最大行数 (相应的表名,字段名,值)。 如果设置为0,不限制删除的行数,这种情况,你必须清楚这样做的影响! 从Zabbix 1.8.2 开始支持该参数,仅在对已经被删除的监控项进行历史和趋势数据删除操作时有效。
ProxyConfigFrequency 180 Zabbix server 多少秒向Zabbix proxy 发送一次配置数据,用于被动模式的proxy 。 从Zabbix 1.8.3开始支持该参数。
ProxyDataFrequency 1 Zabbix server 多少秒向Zabbix proxy请求一次历史数据, 用于被动模式的proxy。\从Zabbix 1.8.3开始支持该参数。
StartDBSyncers 8 数据库进程的初始实例数量。 在版本1.8.5之前,上限是64。 这个参数从Zabbix 1.8.3开始得到了支持。
StartAlerters 12 报警进程的初始实例数量。 从Zabbix 3.4.0开始支持该参数。
StartDiscoverers 12 发现进程的初始实例数量。 在Zabbix 1.8.5版本之前,最大能设置为255。
StartEscalators 12 escalators进程的初始实例数量。 从Zabbix 3.0.0开始支持该参数。
StartHTTPPollers 6 HTTP 轮询进程的初始实例数量1. 在Zabbix 1.8.5版本之前,最大能设置为255。
StartIPMIPollers 3 IPMI 轮询进程的初始实例数量。 在Zabbix 1.8.5版本之前,最大能设置为255。
StartJavaPollers 6 Java 轮询子进程的初始实例数量。1. 从Zabbix 2.0.0开始支持该参数。
StartLLDProcessors 2 Number of pre-forked instances of low-level discovery (LLD) workers1. The LLD manager process is automatically started when an LLD worker is started. This parameter is supported since Zabbix 4.2.0.
StartPingers 12 ICMP pingers进程的初始实例数量1. 在Zabbix 1.8.5版本之前,最大能设置为255。
StartPollersUnreachable 6 不可达主机 (包括IPMI 和 Java)的轮询进程的初始实例数量。1. 从Zabbix 2.4.0开始,如果IPMI或Java轮询器启动,那么至少有一个针对不可访问主机的轮询进程必须运行。 在Zabbix 1.8.5版本之前,最大能设置为255。 这个参数从Zabbix 1.8.3版本缺失。
StartPollers 12 轮询进程的初始实例数量。1.\注意如果要内部,聚合,计算的监控项能正常工作,这个参数值必须非0。
StartPreprocessors 12 预处理工作进程的初始实例数量。\预处理管理进程将跟随预处理工作进程启动。1. 从Zabbix 3.4.0开始支持该参数。
StartProxyPollers 3 被动proxy的轮询进程初始实例数量。1.\在Zabbix 1.8.5版本之前,最大能设置为255。 从Zabbix 1.8.3开始支持该参数。
StartSNMPTrapper 0 设置为1, SNMP trapper进程将启动。 从Zabbix 2.0.0开始支持该参数。
StartTimers 1 计时器进程的初始实例数量。 计时器进程处理基于时间的触发器和维护期功能。 只有第一个计时器进程处理维护期。 从Zabbix 2.2.0开始支持该参数。
StartTrappers 12 trapper进程的初始实例数量。1. Trapper接收来自Zabbix发送者、主动agent和主动proxies的数据。 至少要运行一个trapper进程用于在web前端展示服务器可用性和队列视图。 在Zabbix 1.8.5版本之前,最大能设置为255。
StartVMwareCollectors 2 vmware采集器进程的初始实例数量。\从Zabbix 2.2.0开始支持该参数。
StatsAllowedIP 逗号分隔的IP地址列表,可选CIDR表示法, 或外部Zabbix实例的DNS名称. 只接受来自此处列出的地址的Stats请求。如果未设置此参数,则不接受stats请求。 如果启用IPv6支持,则'127.0.0.1', '::127.0.0.1', '::ffff:127.0.0.1' 与'::/0'等价表示为允许任何IPv4或IPv6地址。'0.0.0.0/0'可用于允许任何IPv4地址。 示例: StatsAllowedIP=127.0.0.1,192.168.1.0/24,::1,2001:db8::/32,zabbix.example.com 从Zabbix 4.2.0开始支持此参数。
Timeout 3 agent, SNMP设备或外部检查的超时时长(单位为秒)。
TrapperTimeout 300 定义trapper处理数据的超时时间。
TrendCacheSize 16M 趋势数据缓存大小,单位字节。 用于存储趋势数据的共享内存大小。
UnavailableDelay 60 在资源不可用期间,Zabbix多少秒检查一次资源是否可用。
UnreachableDelay 15 在资源不可达期间 ,Zabbix多少秒检查一次资源是否可达。
UnreachablePeriod 45 在主机 不可用多少秒后,即视为主机不可用。
User zabbix 降低系统某普通用户的权限。 仅当以'root'身份运行且AllowRoot参数设置为禁止时,该参数才起作用。 从Zabbix 2.4.0开始支持该参数。
ValueCacheSize 8M
VMwareCacheSize 8M 存储VMware数据的共享内存大小。 VMware内部检查[vmware,buffer,…] 可以用来监控VMware缓存使用情况 (参见 内部检查)。 注意,如果没有配置并启动vmware收集器实例,那么共享内存就不会被分配。\从Zabbix 2.2.0开始支持该参数。
VMwareFrequency 60 间隔多少秒从单个VMware服务收集数据。\任何VMware监控项的最小更新周期都大于或等于该时间。 从Zabbix 2.2.0开始支持该参数。
VMwarePerfFrequency 60 间隔多少秒从单个VMware服务检索性能计数器统计数据。 该时间为任一VMware 监控项(使用VMware性能计数器)的最小更新间隔。 从Zabbix 2.2.9, 2.4.4开始支持该参数。
VMwareTimeout 10 vmware采集器等待 VMware 服务(vCenter or ESX 管理程序)响应的最大时长。 从Zabbix 2.2.9, 2.4.4开始支持该参数。

Tips:太多的数据采集进程 (pollers, unreachable pollers, HTTP pollers, Java pollers, pingers, trappers, proxypollers) 与 IPMI manager , SNMP trapper 和预处理工作进程(preprocessing workers)一起会耗尽预处理管理器的每进程文件描述符限制。因此,需要增大open filesmax user processes

Agent

推荐使用Zabbix Agent2。Agent和Agent2版本对比如下:

参数 Zabbix agent Zabbix agent 2
程序设计语言 C 一部分使用C,其他用go
守护进程 yes no (Windows 5.0.4之后版本支持)
扩展支持 自定义C的可加载模块 自定义GO的插件
请求
支持平台 Linux, IBM AIX, FreeBSD, NetBSD, OpenBSD, HP-UX, Mac OS X, Solaris: 9, 10, 11, Windows: 从xp开始所有的桌面和服务端版本。 Linux, Windows: 从xp开始所有的桌面和服务端版本。
支持的加密库 GnuTLS 3.1.18 and newer OpenSSL 1.0.1, 1.0.2, 1.1.0, 1.1.1 SSL库 - tested with versions 2.7.4, 2.8.2 (某些限制的使用, 查看 加密详情页). Linux: OpenSSL 1.0.1和最新版本在Zabbix 4.4.8之后支持。 MS Windows: OpenSSL 1.1.1或者最新版. OpenSSL库必须开启PSK,否则LibreSSL不支持.
监控进程
进程 每个server/proxy都有独立的进程。 单个进程多线程。 这最大的线程数由GOMAXPROCS环境变量决定。
指标 UNIX: 查看支持的 items. Windows: 查看指定Windows版本的监控项. UNIX: Zabbix agent支持所有指标。 其他的, agent2 提供Docker, Memcached, MySQL, PostgreSQL, Redis, systemd (查看agent2的监控项)的Zabbix-native监控方案 Windows: Zabbix agent支持所有指标和HTTPS检查 net.tcp.service* , LDAP. 其他的, agent2 提供关于PostgreSQL, Redis的Zabbix-native监控方案。
并发 单进程按监控项顺序进行检查 来自不同插件的检查或一个插件内的多个检查可以同时执行。
计划/灵活 间隔 仅支持被动检查。 支持主动检查。
第三方traps no yes
Additional features
永久存储 no yes
超时设置 只能定义agent级别。 超时插件可以覆盖在agent上的级别超时设置。
删除用户权限 yes (Unix-like systems only) no
用户可配置密码套件 yes no

Proxy

Zabbix proxy 是一个可以从一个或多个受监控设备采集监控数据并将信息发送到 Zabbix server 的进程,主要是代表 Zabbix server 工作。 所有收集的数据都在本地缓存,然后传输到 proxy 所属的 Zabbix server。

部署Zabbix proxy 是可选的,但可能非常有利于分担单个 Zabbix server 的负载。 如果只有代理采集数据,则 Zabbix server 上会减少 CPU 和磁盘 I/O 的开销。

建议:

  • 尽量减少Server直接监控主机的数量,建议由多个Proxy负担大部分的负载;
  • 选择性能较好的主机作为Proxy;

配置优化参考:

必须配置 说明
CacheSize 256M 缓存大小, 单位为字节。 用于存储主机、监控项数据的共享内存大小。 在Zabbix 5.0.1版本这参数的最大值可以从8G增加到64G。
ConfigFrequency 180 每隔多少秒proxy从Zabbix server获取配置数据。 该参数只有主动proxy才会使用,proxy工作模式由参数ProxyMode决定。
DataSenderFrequency 1 Proxy将采集到的数据以一定的时间间隔(单位为秒)发送给Zabbix server。 该参数只有主动proxy才会使用,proxy工作模式由参数ProxyMode决定。
DebugLevel 3 指定调试等级: 0 - Zabbix进程的起停基本信息 1 - 重要(Critical)信息 2 - 错误(Error)信息 3 - 警告(Warning)信息 4 - 调试(Debug)信息 (产生大量信息) 5 - 扩展调试 (产生更多信息)
EnableRemoteCommands 0 是否允许Zabbix server远程执行命令。 0 - 禁止 1 - 允许 从Zabbix 3.4.0开始支持该参数。
HeartbeatFrequency 60 心跳信息发送频率,单位为秒。 用于监视proxy的可用性。 0 - 禁止 该参数只有主动proxy才会使用,proxy工作模式由参数ProxyMode决定。
HistoryCacheSize 128M 历史缓存数据大小, 单位为字节。 存储历史数据使用共享内存.
HistoryIndexCacheSize 16M 历史索引缓存大小, 单位为字节。\缓存一个item大概需要大小为100字节的空间。 该参数从Zabbix 3.0.0开始支持。
HousekeepingFrequency 1 Zabbix 执行 housekeeping 的频率 (单位为小时)。 housekeeping负责从数据库中删除过期的信息。 注意: 为了防止 housekeeper 负载过大 (例如, 当历史和趋势周期大大减小时), 对于每一个监控项,不会在一个housekeeping周期内删除超过4倍HousekeepingFrequency 的过期数据。 因此, 如果 HousekeepingFrequency 是 1小时, 一个周期内不会删除超过4小时的过期信息 (从最旧的数据开始) 。 备注: 为降低 server压力, housekeeping将在server启动以后,延迟30分钟执行。 因此, 如果 HousekeepingFrequency 是1小时,serverg启动30分后执行第一次 housekeeping , 然后按1小时为周期重复执行。从Zabbix 2.4.0以后有了这种延迟行为。 从Zabbix 3.0.0开始,可以设置HousekeepingFrequency为0来禁止自动housekeeping。 此时 housekeeping 只能通过 housekeeper_execute 启动, 在一个housuekeeping周期内删除的过期信息时长为从最后一次housekeeping以来到配置周期的4倍,不少于4小时且不大于4天。
LogFile 日志文件名字
LogFileSize 128M 日志文件大小,单位 MB。 0 - 禁止日志文件自动回滚. 注意: 如果日志文件达到限定的大小,文件回滚失败, 不管是什么原因, 现有的日志会被截断,并重新记录日志。
LogRemoteCommands 1 当执行shell命令时可以记录日志。 0 - 禁止 1 - 允许 从Zabbix 3.4.0开始支持该参数。
LogType file 日志输出类型: file - 写入LogFile 参数指定的日志文件中, system - 写入syslog, console - 控制台输出. 从Zabbix 3.0.0开始支持该参数。
LogSlowQueries 3 数据库查询消耗时间,大于该时间将会记入日志 (毫秒)。 0 - 不记录慢查询日志。 DebugLevel=3时该选项可用。 从Zabbix 1.8.2开始支持该参数。
ProxyLocalBuffer 24 Proxy将在本地保留数据N小时,即使数据已与server同步。\如果第三方应用程序将使用本地数据,则可以使用此参数。
ProxyMode 0 Proxy工作模式。 0 - 主动模式 1 - 被动模式 从Zabbix 1.8.3开始支持该参数。 注意 当使用 Active proxy 时,敏感的 proxy 配置数据可供有权访问Zabbix server trapper端口的应用使用。 因为第三方应用可以假装是活动proxy并请求配置数据而不会进行身份验证。
ProxyOfflineBuffer 72 如果无法连接Zabbix server,proxy将保留数据N小时。\旧数据将丢失。
StartDBSyncers 8 数据库进程的初始实例数量。 在版本1.8.5之前,上限是64。 这个参数从Zabbix 1.8.3开始得到了支持。
StartDiscoverers 8 发现进程的初始实例数量。 在Zabbix 1.8.5版本之前,最大能设置为255。
StartHTTPPollers 3 HTTP 轮询进程的初始实例数量。
StartIPMIPollers 1 IPMI 轮询进程的初始实例数量。 在Zabbix 1.8.5版本之前,最大能设置为255。
StartJavaPollers 3 Java 轮询子进程的初始实例数量。 从Zabbix 2.0.0开始支持该参数。
StartPingers 4 ICMP pingers进程的初始实例数量 在Zabbix 1.8.5版本之前,最大能设置为255。
StartPollersUnreachable 8 不可达主机 (包括IPMI 和 Java)的轮询进程的初始实例数量。 从Zabbix 2.4.0开始,如果IPMI或Java轮询器启动,那么至少有一个针对不可访问主机的轮询进程必须运行。\在Zabbix 1.8.5版本之前,最大能设置为255。 这个参数从Zabbix 1.8.3开始得到了支持。
StartPollers 12 轮询进程的初始实例数量。\在Zabbix 1.8.5版本之前,最大能设置为255。
StartPreprocessors 8 pre-forked实例的预处理线程数量1. 预处理器工作进程启动时,预处理管理器进程将自动启动。 从Zabbix 4.2.0开始支持该参数。
StartSNMPTrapper 0 设置为1, SNMP trapper进程将启动。 从Zabbix 2.0.0开始支持该参数。
StartTrappers 8 trapper进程的初始实例数量。 Trapper接收来自Zabbix发送者、主动agent的数据。 至少要运行一个trapper进程用于在web前端展示服务器可用性和队列视图。 在Zabbix 1.8.5版本之前,最大能设置为255。
StartVMwareCollectors 2 vmware采集器进程的初始实例数量。\从Zabbix 2.2.0开始支持该参数。
StatsAllowedIP ip地址列表以”,”分割,也可以使用CIDR、或者DNS. 只接受ip里表中的请求. 如果未设置此参数,则不接受请求.如果启用ipv6,则 '127.0.0.1', '::127.0.0.1', '::ffff:127.0.0.1' ipv4和ipv6都支持 ,'::/0' 支持IPv4或者IPv6地址. '0.0.0.0/0' 只支持ipv4. 例如:StatsAllowedIP=127.0.0.1,192.168.1.0/24,::1,2001:db8::/32,zabbix.example.com 从Zabbix 4.2.0开始支持该参数。
Timeout 3 agent、SNMP设备或外部检查的超时时长(单位为秒)。
TrapperTimeout 60 定义trapper处理数据的超时时间。
UnavailableDelay 60 在资源不可达期间,Zabbix多少秒检查一次资源是否可用。
UnreachableDelay 15 在资源不可 期间 ,Zabbix多少秒检查一次资源是否可达.
UnreachablePeriod 45 在资源不可期间 ,Zabbix多少秒检查一次资源是否可达。
VMwareCacheSize 64M 存储VMware数据的共享内存大小。 VMware内部检查[vmware,buffer,…] 可以用来监控VMware缓存使用情况 (参见 内部检查)。 注意,如果没有配置并启动vmware收集器实例,那么共享内存就不会被分配。\从Zabbix 2.2.0开始支持该参数。
VMwareFrequency 60 间隔多少秒从单个VMware服务收集数据。\任何VMware监控项的最小更新周期都大于或等于该时间。 从Zabbix 2.2.0开始支持该参数。
VMwarePerfFrequency 60 间隔多少秒从单个VMware服务检索性能计数器统计数据。 该时间为任一VMware 监控项(使用VMware性能计数器)的最小更新间隔。 从Zabbix 2.2.9, 2.4.4开始支持该参数。
VMwareTimeout 10 vmware采集器等待 VMware 服务(vCenter or ESX 管理程序)响应的最大时长。 从Zabbix 2.2.9, 2.4.4开始支持该参数。

注意:Zabbix只支持不带BOM的UTF-8编码的配置文件。

Zabbix 5.0 优化建议的更多相关文章

  1. 20 Zabbix系统性能优化建议

    点击返回:自学Zabbix之路 20 Zabbix系统性能优化建议 1. Zabbix性能变慢的可能表现: zabbix队列有太多被延迟的item,可以通过administration-queue查看 ...

  2. 21 Zabbix系统性能优化建议

    点击返回:自学Zabbix之路 点击返回:自学Zabbix4.0之路 点击返回:自学zabbix集锦 21 Zabbix系统性能优化建议 1. Zabbix性能变慢的可能表现: zabbix队列有太多 ...

  3. Zabbix 6.0:原生高可用(HA)方案部署

    Blog:博客园 个人 本部署文档适用于CentOS 8.X/RHEL 8.X/Anolis OS 8.X/AlmaLinux 8.X/Rockey Linux 8.X. 原生的HA方案终于来了 相比 ...

  4. Zabbix 5.0:服务端进程总结

    Blog:博客园 个人 参考:<深入理解Zabbix监控系统>.<Zabbix用户手册> Zabbix服务端进程被分为不同的种类,每一种进程负责相应的任务,包括收集原始监控数据 ...

  5. .NET程序的性能要领和优化建议

    前几天在老赵的博客上看到,Bill Chiles (Roslyn 编译器的Program Manager)写了一篇文章叫做<Essential Performance Facts and .NE ...

  6. CentOS-6.5安装zabbix 3.0.4

    关闭selinux [root@localhost /]# sed -i "s#SELINUX=enforcing#SELINUX=disabled#g" /etc/selinux ...

  7. Unity开发-你必须知道的优化建议

    转自:http://blog.csdn.net/leonwei/article/details/18042603 最近研究U3D开发,个人认为,精通一种新的技术,最快最好的方法就是看它的documen ...

  8. mysql性能优化学习笔记-参数介绍及优化建议

    MySQL服务器参数介绍 mysql参数介绍(客户端中执行),尽量只修改session级别的参数. 全局参数(新连接的session才会生效,原有已经连接的session不生效) set global ...

  9. Jquery学习笔记--性能优化建议

    一.选择器性能优化建议 1. 总是从#id选择器来继承 这是jQuery选择器的一条黄金法则.jQuery选择一个元素最快的方法就是用ID来选择了. 1 $('#content').hide(); 或 ...

随机推荐

  1. PTA 统计二叉树度为2的结点个数

    6-4 统计二叉树度为2的结点个数 (11 分)   本题要求实现一个函数,可统计二叉树中度为2的结点个数. 函数接口定义: int NodeCount ( BiTree T); T是二叉树树根指针, ...

  2. JetBrains Projector 体验

    先来一张最终效果图: JetBrains Projector 是 JetBrains 的"远程开发"解决方案,基于 Client + Server 架构,对标的是微软 VSCode ...

  3. 2021华为软件精英挑战赛(C/C++实现)-苦行僧的实现过程

    下面给出2021华为软件精英挑战赛参与的整个过程,虽然成绩不是很好,但是也是花了一些时间的,希望后面多多学习,多多进步. 代码已经上传到了Github上:https://github.com/myFr ...

  4. Windows + Jenkins + .NetFramework + SVN 持续部署

    Windows + Jenkins + .NetFramework + SVN 持续部署 环境准备 服务端环境 安装 Windows 服务器 1.阿里云购买临时服务器 阿里云:https://www. ...

  5. Java例题_17 猴子偷桃问题

    1 /*17 [程序 17 猴子吃桃问题] 2 题目:猴子吃桃问题 3 猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个 4 第二天早上又将剩下的桃子吃掉一半,又多吃了一个. 5 以后每天 ...

  6. 热更新语言--lua学习笔记

    一.lua安装和编程环境搭建 lua语言可以在官网:http://luadist.org/下载安装包安装,编程IDE之前学习使用的是SciTE(https://www.cnblogs.com/movi ...

  7. 从阿里云迁移分布式redis实例到华为云解决方案(详细)

    如果要换多数是经济因素啦- 一. 准备工作 先在华为云上买一台redis数据库,配置一定要注意多数要保持一致,至于4.0还是5.0倒问题不大亲测兼容 可用区要找现有ECS云主机中的相同的机器.记下:这 ...

  8. GitlabCI/CD&Kubernetes项目交付流水线实践

    GitlabCI实践 GitLabCI/CD基础概念 为什么要做CI/CD? GitLab CI/CD简介 GitLabCI VS Jenkins 安装部署GitLab服务 GitLabRunner实 ...

  9. 快速了解Web MVC设计模式

    MVC概述 MVC即 Model-View-Controller 的缩写,是按照职责划分模块一种设计模式,其中Model是核心. Model:模型.负责执行实际的业务,包含数据操作,可以向视图推送数据 ...

  10. 快速排序(QuickSort)Java版

    快速排序 快速排序是对冒泡排序的一种改进. 它的基本思想是:通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排 ...