Zabbix3.4從入門到精通

来源:https://www.cnblogs.com/wenrulaogou/archive/2020/01/14/12190660.html
-Advertisement-
Play Games

zabbix 基礎 第1章 關於zabbix 1.1 為什麼要使用監控 1.對系統不間斷實時監控2.實時反饋系統當前狀態3.保證服務可靠性安全性4.保證業務持續穩定運行 1.2 如何進行監控 比如我們需要監控磁碟的使用率1.如何查看磁碟使用率df h2.監控磁碟的那些指標block、inode3.如 ...


zabbix-基礎

第1章 關於zabbix

1.1 為什麼要使用監控

1.對系統不間斷實時監控
2.實時反饋系統當前狀態
3.保證服務可靠性安全性
4.保證業務持續穩定運行

1.2 如何進行監控

比如我們需要監控磁碟的使用率
1.如何查看磁碟使用率df -h
2.監控磁碟的那些指標block、inode
3.如何獲取具體的信息df -h|awk'//$/{print $(NF-1)}'
4.獲取的數值到達多少報警 80%

1.3 流行的監控工具

1.cacti、Nagios、Zabbix、
2.Lepus(天兔)資料庫監控系統
3.Open-Falcon 小米
4.Prometheus(普羅米修斯,Docker、K8s)

1.4 到一家新公司,如何入手監控

1.硬體監控 路由器、交換機、防火牆
2.系統監控 CPU、記憶體、磁碟、網路、進程、TCP
3.服務監控 nginx、php、tomcat、redis、memcache、mysql
4.WEB監控 請求時間、響應時間、載入時間、
5.日誌監控 ELk(收集、存儲、分析、展示)日誌易
6.安全監控 Firewalld、WAF(Nginx+lua)、安全寶、牛盾雲、安全狗
7.網路監控 smokeping 多機房
8.業務監控

第2章 zabbix部署

2.1 基礎環境劃分

主機名 IP地址 功能
zabbix 172.16.1.71 zabbix服務端
web01 172.16.1.7 zabbix客戶端 nginx
web02 172.16.1.8 zabbix客戶端 nginx
db01 172.16.1.51 資料庫

2.2 安裝zabbix

Zabbix-Server,是一個C/S和B/S結構
1.安裝Zabbix-server

[root@zabbix ~]# rpm -ivhhttps://mirrors.aliyun.com/zabbix/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-2.el7.noarch.rpm
[root@zabbix ~]# yum install -yzabbix-server-mysql zabbix-web-mysql zabbix-agent mariadb-server

2.創建Zabbix資料庫以及用戶
#啟動資料庫,加入開機自啟

[root@zabbix ~]# systemctl enable mariadb
[root@zabbix ~]# systemctl start mariadb

創建資料庫並授權

[root@zabbix ~]# mysql -uroot -p
MariaDB [(none)]> create database zabbixcharacter set utf8 collate utf8_bin;   
MariaDB [(none)]> grant all privileges on zabbix.*to zabbix@localhost identified by 'zabbix';
MariaDB [(none)]> exit

3.導入基礎架構和數據

[root@zabbix ~]# cd/usr/share/doc/zabbix-server-mysql-3.4.14/
進入這個目錄可能不報錯 目錄不存在 大多是因為版本不同 導致目錄名稱改變
[root@zabbix zabbix-server-mysql-3.4.14]# ll
total 2112
-rw-r--r-- 1 root root      98 Sep 14 04:04 AUTHORS
-rw-r--r-- 1 root root  857849 Sep 14 04:04 ChangeLog
-rw-r--r-- 1 root root   17990 Sep 14 04:04 COPYING
-rw-r--r-- 1 root root 1267039 Sep 14 04:09create.sql.gz
-rw-r--r-- 1 root root      52 Sep 14 04:04 NEWS
-rw-r--r-- 1 root root     188 Sep 14 04:04 README
[root@zabbix zabbix-server-mysql-3.4.14]#  zcat create.sql.gz |mysql -uroot zabbix
[root@zabbix zabbix-server-mysql-3.4.14]# mysql-uroot -p    進入資料庫確認一下是否導入成功
MariaDB [(none)]> use zabbix;
MariaDB [zabbix]> show tables;
140 rows in set (0.00 sec)  #因內容過多此處只粘貼總數

4.啟動Zabbix Server進程,在zabbix_server.conf中編輯資料庫配置

[root@m01 ~]# vi/etc/zabbix/zabbix_server.conf  #以下四處需要更改
以下四處大部分起初都被註釋 應該把註釋取消  以下是需要修改的內容所在行 
DBHost=localhost                         #91行
DBName=zabbix                            #101行
DBUser=zabbix                            #117行
DBPassword=zabbix                        #126行
# 啟動ZabbixServer進程
[root@zabbix ~]# systemctl enable zabbix-server
[root@zabbix ~]# systemctl start zabbix-server

5.編輯Zabbix前端的PHP配置,Zabbix前端的Apache配置文件位於 /etc/httpd/conf.d/zabbix.conf。一些PHP設置已經完成了配置。

[root@zabbix ~]# vim /etc/httpd/conf.d/zabbix.conf
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 always_populate_raw_post_data -1
# php_value date.timezone Asia/Shanghai              #20行
依據所在時區,取消 “date.timezone” 設置的註釋,並正確配置(Asia/Shanghai)。在配置文件更改後,需要重啟ApacheWeb伺服器。

6.啟動httpd服務

[root@zabbix ~]#systemctl enable httpd
[root@zabbix ~]#systemctl start httpd

2.3 網頁配置zabbix-web界面

配置完以上內容後 網頁輸入10.0.0.71/zabbix進入zabbix安裝界面、
歡迎界面, 直接下一步即可

檢查依賴項是否不存在任何異常

配置zabbixWeb連接資料庫(如果直接選用遠程資料庫 可以在此處修改)

配置ZabbixServer伺服器的主機名或主機IP地址和埠號, 以及安裝的名稱(可選)

安裝前摘要,檢查配置參數。如果一切都正確,請按"下一步"按鈕或"後退"按鈕來更改配置參數。

提示已成功地安裝了Zabbix前端。配置文件/etc/zabbix/web/zabbix.conf.php被創建。

至此Zabbix已經安裝完畢
預設登陸ZabbixWeb的用戶名Admin,密碼zabbix

第3章 zabbix-web界面優化

3.1 修改為中文字體



點擊update後即為中文字體
(修改為中文字體後可能有些界面會產生亂碼 我們還應該修改下字元集,防止產生亂碼)

3.2 調整字元集

1.先搜索zabbix-web包對應字元存放的目錄

[root@zabbix ~]# rpm -ql zabbix-web|grep fonts
/usr/share/zabbix/fonts

2.進入對應字體目錄,發現字體是一個軟鏈接

[root@zabbix ~]# cd /usr/share/zabbix/fonts/
[root@zabbix fonts]# ll
lrwxrwxrwx 1 root root 33 Oct 11 03:20graphfont.ttf -> /etc/alternatives/zabbix-web-font

3.進入軟鏈接對應的目錄,發現還是軟鏈接

[root@zabbix fonts]# cd /etc/alternatives/
[root@zabbix alternatives]# ll
lrwxrwxrwx1 root root 38 Oct 11 03:20 zabbix-web-font ->/usr/share/fonts/dejavu/DejaVuSans.ttf

4.進入最終字體存放的目錄

[root@zabbix alternatives]# cd/usr/share/fonts/dejavu/

5.將預設字體進行改名

[root@zabbix-server alternatives]# mvDejaVuSans.ttf DejaVuSans.ttf_bak

6.上傳自己準備好的字體,字體可以通過windows電腦獲取

(c:\windows\fonts)

7.最後將新上傳的字體進行改名

[root@zabbix dejavu]# mv simkai.ttf DejaVuSans.ttf

註意:如果字體是ttc,修改為ttf也行。

3.3 調整web界面視窗位置

該操作可以不執行
為了以後方便我們觀察 所以我們修改下 web界面的視窗安排
圖片所示是預設的  點擊編輯儀錶盤 便可以拖動各個小視窗

將如下圖四欄 往上提即可然後保存
目的是方便日後查看

第4章 監控內容部署

4.1 配置一臺主機

1.      在客戶端安裝zabbix-agent

[root@web01 ~]# rpm -ivhhttps://mirrors.aliyun.com/zabbix/zabbix/3.4/rhel/7/x86_64/zabbix-agent-3.4.12-1.el7.x86_64.rpm

2.配置修改/etc/zabbix/zabbix_agentd.conf內容

[root@web03 ~]# vim /etc/zabbix/zabbix_agentd.conf
Server=172.16.1.71  #97行 指向Zabbix-Server
Timeout=30 #238行 此處預設是註釋3或4 可以取消註釋修改成30

3.啟動服務並檢查

[root@web01 ~]# systemctl start zabbix-agent
[root@web01 ~]# systemctl enable zabbix-agent
[root@web01 ~]# netstat -lntp
Active Internet connections (only servers)  
tcp0      0 0.0.0.0:10050           0.0.0.0:*               LISTEN      981/zabbix_agentd

以上確認配置完成後 進入web界面網頁配置
點擊創建主機


配置完以上內容後 不要直接點擊添加
點擊模板->選擇連接指示器->選擇->搜索Linux->點擊小按鈕添加->最後添加


Template OS Linux 是必添加的監控
添加完成後 點擊主機(如果等幾分鐘 顯示ZBX則為添加成功 沒有問題)

4.2 自定義監控TCP

TCP的12種狀態

tcp[ESTABLISHED]
tcp[SYN_SENT]
tcp[SYN_RECV]
tcp[FIN_WAIT1]
tcp[FIN_WAIT2]
tcp[TIME_WAIT]
tcp[CLOSE]
tcp[CLOSE_WAIT]
tcp[LAST_ACK]
tcp[LISTEN]
tcp[CLOSING]
tcp[UNKNOWN]

1.在對應的主機上編寫自定義監控TCP的11中狀態[在本地進行取值,web01]

[root@web01 ~]# vim/etc/zabbix/zabbix_agentd.d/tcp.conf
UserParameter=tcp[*],netstat -ntal | awk'NR>1{print $NF}'| grep -i "$1" | wc -l

2.在server上使用zabbix_get獲取對應主機的值

[root@zabbix ~]# yum install zabbix-get -y
[root@zabbix ~]# zabbix_get -s 172.16.1.7 -ktcp[estab]

確認無誤後再添加
網頁配置內容
先添加一個模板 在模板里創建監控項這樣以後就不用再次創建
因為模板支持導出導入


創建完模板 點擊監控項

點擊創建監控項

然後開始創建
創建時 名稱只是讓人看的鍵值是最關鍵的 不能更改
添加完一個後  就可以使用這個來克隆其他的
需要註意的是 要確保每個鍵值都正常

克隆完後的 每個都要啟用預設創建完就是啟用的

添加完成後 我們要把模板加入到web01這台主機上進行監控
按照一開始添加模板 將TCP這個模板加入即可
 

檢查是否成功
如果有數據更新即為成功

4.3 自定義監控記憶體

1.在Agent的/etc/zabbix/zabbix_agentd.d/*.conf自定義監控項, 使用UserParameter=KEY,shell command,目的是便於zabbixServer獲取ZabbixAgent對應監控項的數據

[root@web01 zabbix_agentd.d]# vim mem.conf 
UserParameter=Mem.Num,free -m |awk '/^Mem/{print$NF/$2*100}'
UserParameter=Swap.Num,free -m|awk '/^Swap/{print$3/$2*100}'
  1. 使用zabbix_agentd -p | grep KEY,如果獲取到值則正常
[root@web01 zabbix_agentd.d]# zabbix_agentd -p|grep-i Mem_Num
Mem_Num[t|38.501]
  1. 在ZabbixServer端測試獲取ZabbixAgent端自定義的監控項是否正常zabbix_get -s IP_addr -k KEY
[root@zabbix ~]# zabbix_get -s 172.16.1.7 -k Mem.Num
38.7064

然後開始網頁配置


將 Swap.Num 和 Mem.Num 都添加上

添加完成後 查看最新數據

配置完成

第5章 配置觸發器

5.1 配置單條件觸發器

ESTAB超過500就報警



檢查是否添加成功

5.2 多條件觸發器


記憶體使用剩餘不足百分之30且swap使用超過1%就報警

檢查

5.3 登錄用戶超過兩個人就報警


第6章 配置報警

6.1 配置web界面報警



6.2 配置郵件報警

將動作里的觸發器的狀態設置為已啟動(點一下已停止即可)
註意界面右上角 選擇為觸發器不然顯示內容不同

6.2.1 更改報警郵件信息

然後我們點擊名稱 進入配置界面(更改報警郵件發送的信息)
將預設的信息刪除 覆蓋掉
故障!!!: {TRIGGER.NAME}
報警主機:{HOST.NAME1}
報警服務: {ITEM.NAME1}
報警Key1: {ITEM.KEY1}:{ITEM.VALUE1}
報警Key2: {ITEM.KEY2}:{ITEM.VALUE2}
嚴重級別: {TRIGGER.SEVERITY}

恢復: {TRIGGER.NAME}
恢復主機:{HOST.NAME1}
恢復服務: {ITEM.NAME1}
恢復Key1:{ITEM.KEY1}:{ITEM.VALUE1}
恢復Key2: {ITEM.KEY2}:{ITEM.VALUE2}
恢復的內容也要修改

6.2.2 修改報警媒介類型

image.png

6.2.3 添加報警媒介


image.png
添加後 點擊更新 至此 郵件配置完成

6.3 企業微信報警

1.準備微信報警腳本, 腳本怎麼寫->腳本放在哪【相當於配置好了發件人】

[root@zabbix ~]# yum install python-pip -y
[root@zabbix ~]# pip install requests
[root@zabbix ~]# cd /usr/lib/zabbix/alertscripts

報警腳本內容

[root@zabbix alertscripts]# vim weixin.py 
#!/usr/bin/env python
#-*- coding: utf-8 -*-
#author: bgx
#date: 2018
#comment: zabbix接入微信報警腳本
 
import requests
import sys
import os
import json
import logging
 
#!/usr/bin/env python
#-*- coding: utf-8 -*-
#author: bgx
#date: 2018
#comment: zabbix接入微信報警腳本
 
import requests
import sys
import os
import json
import logging
 
logging.basicConfig(level = logging.DEBUG, format= '%(asctime)s, %(filename)s, %(levelname)s, %(message)s',
datefmt = '%a, %d %b %Y %H:%M:%S',
filename = os.path.join('/tmp','weixin.log'),
filemode = 'a')
 
 
corpid='wwabcf092986138a4f'
appsecret='47r80t2cfYbQfrOs8mRXUx84H44RdFTJ9BMvVaeQUVQ'
agentid=1000002
#獲取accesstoken
token_url='https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid='+ corpid + '&corpsecret=' + appsecret
req=requests.get(token_url)
accesstoken=req.json()['access_token']
 
#發送消息
msgsend_url='https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token='+ accesstoken
 
touser=sys.argv[1]
subject=sys.argv[2]
#toparty='3|4|5|6'
message=sys.argv[2] + "\n\n"+sys.argv[3]
 
params={
"touser": touser,
#"toparty": toparty,
"msgtype": "text",
"agentid": agentid,
"text": {
"content": message
        },
"safe":0
}
 
req=requests.post(msgsend_url,data=json.dumps(params))
 
logging.info('sendto:' + touser + ';;subject:' +subject + ';;message:' + message)

給腳本增加執行許可權並測試

[root@zabbix alertscripts]# chmod +x weixin.py
[root@zabbix alertscripts]# ./weixin.py  nfsnobodySubject Messages  #測試
[root@zabbix alertscripts]# rm -f /tmp/weixin.log   #刪除這個文件不然會報錯

開始web界面配置

下圖需要增加的內容(註意不要有空格  不然會報錯 很難發現)
{ALERT.SENDTO}#發給誰
{ALERT.SUBJECT}#發送的主題
{ALERT.MESSAGE}#發送的內容   
腳本名稱 直接填寫腳本的名稱即可
但要註意  腳本必須放在server端的/usr/lib/zabbix/alertscripts目錄下

添加完報警媒介類型後 在報警媒介新增 微信的報警資料  (添加完後不要忘記點擊更新)
image.png

6.4 配置報警升級

先創建兩個用戶組


增加報警媒介
image.png
修改用戶的許可權 只有管理員才能接收信息

點擊配置--動作

將已經存在的一項更新一下

然後添加一個新的

添加完成後 點擊更新此處只添加了兩個用戶  三個用戶 依次往下即可

第7章 快速配置新主機

7.1 配置zabbix本地

server端是zabbix本地伺服器  配置和其他伺服器略有不同
下載zabbix-agent

[root@zabbix ~]# rpm -ivhhttps://mirrors.tuna.tsinghua.edu.cn/zabbix/zabbix/3.4/rhel/7/x86_64/zabbix-agent-3.4.14-1.el7.x86_64.rpm
[root@zabbix ~]# vim/etc/zabbix/zabbix_agentd.conf

Timeout=30  #238行  把這個取消註釋 改成30即可  server端的 agent不需要修改server
要註意的是 server端要使用zabbix-get測試  -s 後的地址要寫127.0.0.1

[root@zabbix ~]# systemctl enablezabbix-agent.service 
[root@zabbix ~]# systemctl startzabbix-agent.service

網頁配置(server端有zabbix配置好的 只需要啟用即可)

server端有已經配好的兩個模板 只需要把TCP和記憶體的模板套用即可
(還需要把agent的conf文件從web伺服器拉過來)


把agent里的conf配置文件都拉過來

[root@zabbix ~]# scp [email protected]:/etc/zabbix/zabbix_agentd.d/* /etc/zabbix/zabbix_agentd.d/

重啟一下agent服務

[root@zabbix ~]# systemctl restartzabbix-agent.service

7.2 其他agent端

以db01配置為例  (其實除server端 其他配置除了IP地址都是一樣的)

[root@db01 ~]# rpm -ivh https://mirrors.tuna.tsinghua.edu.cn/zabbix/zabbix/3.4/rhel/7/x86_64/zabbix-agent-3.4.14-1.el7.x86_64.rpm

修改agent配置文件  server指向的IP地址是必須要修改的

[root@db01 ~]# vim /etc/zabbix/zabbix_agentd.conf    #以下是修改後的內容
Server=172.16.1.71    
Timeout=30

啟動服務並加入開機自啟動

[root@db01 ~]# systemctl enablezabbix-agent.service 
[root@db01 ~]# systemctl startzabbix-agent.service

然後進入網頁添加

添加模板  直接套用 (這就是創建模板的好處之一  可以直接套用)

把配置文件拉過來  然後重啟agent

[root@db01 ~]# scp [email protected]:/etc/zabbix/zabbix_agentd.d/* /etc/zabbix/zabbix_agentd.d/
[root@db01 ~]# systemctl restartzabbix-agent.service

檢查如圖兩處 可以看出是否有錯誤 下圖已配置完成

第8章 自定義圖形配置

8.1 聚合圖形配置

聚合圖形有助於觀察

點擊名稱 可以進入編輯或查看

點擊編輯 增加圖片

此處就像是表格 增加行和列 點擊更改就可以增加圖片

點擊圖片可以選擇圖片  右上角可以選擇群組(群組就是主機)

下圖就是增加完的內容  修改已存在的圖片也是點擊更改新增也一樣

8.2 幻燈片配置

幻燈片一般是在聚合圖形的基礎上配置
將聚合圖形改為幻燈片即可編輯幻燈片

如果只有一個聚合圖形 是不需要幻燈片的

點擊添加即可  延遲時間就是圖片更改時間

8.3 安裝圖形樹

1.安裝graphtree

[root@zabbix ~]# cd /usr/share/zabbix
[root@zabbix zabbix]# wget https://raw.githubusercontent.com/OneOaaS/graphtrees/master/graphtree3.0.4.patch

2.導入補丁包

[root@zabbix zabbix]# yum install -y patch
[root@zabbix zabbix]# patch  -Np0 <graphtree3.0.4.patch
[root@zabbix zabbix]# chown -R apache.apacheoneoaas

3.新增Apache配置文件

[root@zabbix zabbix]# vim/etc/httpd/conf.d/zabbix.conf
Alias /zabbix /usr/share/zabbix
Alias /oneoaas /usr/share/zabbix/oneoaas

4.重啟httpd服務

[root@zabbix zabbix]# systemctl restart httpd

第9章 拆分資料庫

9.1 拆分配置過程

LAP+MySQL架構(修改如下兩個文件中連接資料庫的配置信息)
將zabbix資料庫拆分到db01上
要修改以下兩個文件的內容

[root@zabbix ~]#  ll /etc/zabbix/zabbix_server.conf
[root@zabbix ~]#  ll /etc/zabbix/web/zabbix.conf.php

1.在新的資料庫上創建zabbix庫

[root@db01 ~]# mysql -uroot -pNfsnobody123.com
mysql> create database zabbix character setutf8 collate utf8_bin;
mysql> grant all privileges on zabbix.* tozabbix@'%' identified by 'Nfsnobody123.com'; 
#到此處會提示許可權過大 不用理會

2.在舊的zabbix伺服器上備份資料庫文件,然後倒至新的資料庫

[root@zabbix ~]#  mysqldump -uroot \
--databases zabbix \
--single-transaction > `date +%F%H`-zabbix.sql
[root@zabbix ~]#  cat 2018-08-2017-zabbix.sql |mysql -h10.0.0.51 -uzabbix -pNfsnobody123.com zabbix

3.修改zabbixServer的資料庫連接信息

[root@zabbix ~]#  vim /etc/zabbix/zabbix_server.conf   這是修改後的內容
DBHost=172.16.1.51
DBName=zabbix
DBUser=zabbix
DBPassword=Nfsnobody123.com
[root@m01 ~]# systemctl restart zabbix-server    修改後需要重啟

4.修改zabbixWeb連接資料庫信息   

[root@m01 ~]# vim /etc/zabbix/web/zabbix.conf.php   修改後如下圖
$DB['TYPE']= 'MYSQL';
$DB['SERVER']= '172.16.1.51';
$DB['PORT']= '0';
$DB['DATABASE'] = 'zabbix';
$DB['USER']     = 'zabbix';
$DB['PASSWORD'] = 'Nfsnobody123.com';
[root@m01 ~]# systemctl restart httpd

9.2 錯誤案例

如出現如下錯誤:請檢查資料庫是否允許遠程連接,對應的賬戶和密碼是否配置錯誤

[root@m01 ~]# tail -f/var/log/zabbix/zabbix_server.log
 2189:20180820:173636.941 [Z3001] connection todatabase 'zabbix' failed: [2003] Can't connect to MySQL server on '172.16.1.51'(111)

 
 
 
 
 
 
 
 
 
 
 
 
 
 
                                                    


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 開發環境: windows10 x64 專業版 工具準備: git 2.16.2 windows命令行版 java jdk 1.8:https://www.cnblogs.com/harmful-chan/p/12193497.html maven 3.6.3:https://www.cnblogs ...
  • 打開終端 輸入下麵命令回車: defaults delete com.apple.appstore.commerce Storefront 接上步驟,繼續輸入下麵命令回車: defaults write com.apple.appstore.commerce Storefront -string " ...
  • 安裝虛擬機: RedHat+CentOS 我說略會不會被打,哈哈,這個虛擬機的安裝之後我再補上吧~~ 首先查看已經安裝的mysql相關的包 rpm -qa | grep mysql 執行之後會出現以下結果,但是這僅僅是自帶的一個工具包,mysql其實並沒有安裝 在CentOS6.9用yum就可以安裝 ...
  • CentOS7 埠的開放關閉查看都是用防火牆來控制的,具體命令如下: 查看防火牆狀態:(active (running) 即是開啟狀態) [root@WSS bin]# systemctl firewalld status Unknown operation 'firewalld'. [root@ ...
  • 為什麼使用shell 可以快速、簡單的完成編程,實現自己的想法。Shell非常適合編寫小的工具,因為小工具更強調的是易於配置、維護、移植等,而不是執行效率。 當自己的想法確實有必要進行優化,有必要讓它更容易修改以及修正設計目的時,可以將shell編寫的工具重新用C、C++/python等語言重新實現 ...
  • [Unit] Description=The redis-server Process Manager Documentation=https://redis.io/ After=network.target [Service] Type=forking ExecStart=/root/redis- ...
  • 在整個地址空間範圍內讀寫各種類型的數據。通常MRAM的操作和時序類似於32位微控制器的規範和時序。與DLFASH相比,當今的非易失性存儲器可以接受MRAM設備的性能和吞吐量。 與當今的DFLASH相比,未來的汽車動力總成控制器可能需要更快,更加強大的非易失性和保活記憶體。在非易失性存儲器中使用MRAM ...
  • POSIX:Potable Operating System Interface of UNIX (可移植操作系統介面),是IEEE為要在各種UNIX操作系統上運行軟體,而定義API的一系列互相關聯的標準的總稱,其正式稱呼為IEEE Std 1003,而國際標準名稱為ISO/IEC 9945。 PO ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...