CDH6.0.1 搭建過程及所遇到的錯誤處理

来源:https://www.cnblogs.com/aiitzzx0116/archive/2020/04/16/12714557.html
-Advertisement-
Play Games

一、集群伺服器配置說明(整個過程中我會提前把一些小坑填上,有的坑後面沒有提到) IP 節點名 OS Cores Memory Disk Remark 172.25.16.1 cdh1 CentOS7.5 40 128 4T cloudera Server、cloudera agent 172.25. ...


一、集群伺服器配置說明(整個過程中我會提前把一些小坑填上,有的坑後面沒有提到

IP  節點名 OS Cores Memory Disk Remark
172.25.16.1 cdh1 CentOS7.5 40 128 4T cloudera Server、cloudera agent
172.25.16.2 cdh2 CentOS7.5 4 64 40T cloudera agent
172.25.16.3 cdh3 CentOS7.5 4 64 40T cloudera agent
172.25.16.4 cdh4 CentOS7.5 4 64 40T ccloudera agen

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

註1:這裡主機名儘量小寫,後面配置主機是會出警告

二、CDH6.0.1配套軟體配置

  •        JDK1.8.0_131
  •         mysql5.7

name

版本

來源

CM

6.0.1

https://archive.cloudera.com/cm6/6.0.1/

CDH

6.0.1

https://archive.cloudera.com/cdh6/6.0.1/parcels/

hadoop

3.0.0-cdh6.0.1

cdh自帶包

hive

2.1.1-cdh6.0.1

cdh自帶包

hbase

2.0.0-cdh6.0.1

cdh自帶包

solr

7.0.0+cdh6.0.1

cdh自帶包

impala

3.0.0-cdh6.0.1

cdh自帶包

hue

3.9.0+cdh6.0.1

cdh自帶包

sqoop

1.4.7-cdh6.0.1

cdh自帶包

kafka

1.0.0-cdh6.0.1

cdh自帶包

spark

2.2.0+cdh6.0.1

cdh自帶包

oozie

5.0.0-beta1-cdh6.0.1

cdh自帶包

kudu

1.6.0-cdh6.0.1

cdh自帶包

flume-ng

flume-ng

cdh自帶包

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

註意:其他組件需要單獨安裝部署,eg:flink,kylin,ELK等

三、基礎環境配置

1、關閉防火牆[CDH1-4]

 1 臨時關閉防火牆
 2 
 3 # systemctl stop firewalld
 4 
 5 永久防火牆開機自啟動
 6 
 7 # systemctl disable firewalld
 8 
 9 查看防火牆狀態
10 
11 # systemctl status firewalld

 

2、selinux關閉[CDH1-4]

1 # vim /etc/sysconfig/selinux SELINUX=disabled
2 
3 重啟機器,命令:
4 
5 # reboot
6 
7 重啟後檢查:
8 
9 # sestatus –v

 

3、配置各節點之間ssh免密登錄[CDH1-4]

 1 1. CentOS預設沒有啟動ssh無密登錄,
 2 
 3 # vim /etc/ssh/sshd_config
 4 
 5 2、去掉其中3行的註釋,每台伺服器都要配置
 6 
 7 開啟 RSAAuthentication yes
 8 
 9 開啟 PubkeyAuthentication yes
10 
11 開啟 AuthorizedKeyFile .ssh/authorized_keys
12 
13 # ssh-keygen -t rsa 一直按回車
14 
15 # ls /root/.ssh/ id_rsa 和 id_rsa.pub # cp id_rsa.pub authorized_keys 兩個woker節點執行
16 
17 # cat ~/.ssh/authorized_keys | ssh root@172.20.32.1 'cat >> ~/.ssh/authorized_keys'
18 
19 3、CDH1上執行
20 
21 # scp authorized_keys root@172.20.32.2:/root/.ssh/
22 
23 # scp authorized_keys root@172.20.32.3:/root/.ssh/
24 
25 # scp known_hosts root@172.20.32.2:/root/.ssh/
26 
27 # scp known_hosts root@172.20.32.3:/root/.ssh/
28 
29 4、CDH2-4執行
30 
31 # chmod 700 ~/.ssh
32 
33 # chmod 600 ~/.ssh/authorized_keys
34 
35 5、重啟ssh服務
36 
37 # systemctl restart sshd.service
38 
39 6、驗證能否無密碼ssh,在master伺服器上執行操作
40 
41 # ssh cdh1
42 
43 7、不同用戶之間退出
44 
45 # logout

 

4、hostname config[cdh1-4]

 1 master上執行
 2 
 3 # vim /etc/hosts
 4 
 5 172.25.16.1 cdh1
 6 
 7 172.25.16.2 slave1
 8 
 9 172.25.16.3 slave2
10 
11 172.25.16.4 slave3
12 
13 通過scp 發送給其他機器
14 
15 # for i in 2 3 4 ;do scp /etc/hosts $cdh$i:/etc ;done

 

 

5、NTP伺服器設置[CDH1-4]

自行配置或看我博客NTP配置文章

6、安裝jdk[CDH1-4]

 1 方法一:自行安裝
 2 
 3 1.下載“jdk-8u131-linux-x64.tar.gz”,放到/usr/java/目錄下
 4 
 5 2.解壓 # tar -xzvf jdk-8u131-linux-x64.tar.gz
 6 
 7 3.在任何目錄下均可編輯
 8 
 9 # vim /etc/profile.d/java_home.sh
10 
11 export JAVA_HOME=/usr/java/jdk1.8.0_141
12 
13 export JRE_HOME=$JAVA_HOME/jre
14 
15 export PATH=$PATH:$JAVA_HOME/bin
16 
17 export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib
18 
19 4、刷新環境變數
20 
21 # source /etc/profile
22 
23 方法二:採用cdh自帶jdk包
24 
25 下載 對應JAVA包
26 
27 wget https://archive.cloudera.com/cm6/6.0.1/redhat7/yum/RPMS/x86_64/oracle-j2sdk1.8-1.8.0+update141-1.x86_64.rpm
28 
29 安裝rpm包
30 
31 rpm -ivh oracle-j2sdk1.8-1.8.0+update141-1.x86_64.rpm
32 
33 修改環境變數
34 
35 export JAVA_HOME=/usr/java/jdk1.8.0_141-cloudera export JRE_HOME=$JAVA_HOME/jre
36 
37 export PATH=$PATH:$JAVA_HOME/bin export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib

 

 

註2!必須在該目錄下安裝JDK,後續cdh預設載入此路徑的JDK**

7.優化虛擬記憶體需求率[cdh1-4]

 1 cdh1
 2 
 3 # cat /proc/sys/vm/swappiness
 4 
 5 顯示如下: 30
 6 
 7 臨時降低虛擬記憶體需求率
 8 
 9 # sysctl vm.swappiness=0
10 
11 永久降低虛擬記憶體需求率
12 
13 # echo 'vm.swappiness = 0' > /etc/sysctl.d/swappiness.conf
14 
15 並運行如下命令使生效
16 
17 # sysctl -p
18 
19 ---------------------------
20 
21 CDH2-4 檢查虛擬記憶體需求率
22 
23 # cat /proc/sys/vm/swappiness
24 
25 顯示如下: 30 臨時降低虛擬記憶體需求率
26 
27 # sysctl vm.swappiness=10
28 
29 永久降低虛擬記憶體需求率 # echo 'vm.swappiness = 10' > /etc/sysctl.d/swappiness.conf
30 
31 並運行如下命令使生效
32 
33 # sysctl -p

 

8. 解決透明大頁面問題[cdh1-4]

 1 檢查透明大頁面問題
 2 
 3 # cat /sys/kernel/mm/transparent_hugepage/defrag
 4 
 5 如果顯示為: [always] madvise never
 6 
 7 臨時關閉透明大頁面問題
 8 
 9 # echo never > /sys/kernel/mm/transparent_hugepage/defrag
10 
11 確認配置生效
12 
13 # cat /sys/kernel/mm/transparent_hugepage/defrag
14 
15 應該顯示為: always madvise [never]
16 
17 配置開機自動生效
18 
19 # echo never > /sys/kernel/mm/transparent_hugepage/enabled

 

 

9.mysql安裝[任選擇一臺機器]

 1 下載源文件
 2 
 3 # wget https://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm
 4 
 5 安裝源文件
 6 
 7 # rpm -ivh mysql57-community-release-el7-9.noarch.rpm
 8 
 9 安裝資料庫
10 
11 # yum install mysql-server
12 
13 啟動資料庫
14 
15 # systemctl restart mysqld

 

 

10 、拷貝mysql-connector-java到各個節點指定目錄下[cdh1-4]

 1 1、下載文件
 2 
 3 wget https://dev.mysql.com/get/Downloads/Connector-J/mysql-connector-java-5.1.46.tar.gz
 4 
 5 2、解壓文件
 6 
 7 tar zxvf mysql-connector-java-5.1.46.tar.gz
 8 3、創建目錄
 9 
10 mkdir -p /usr/share/java/ cd mysql-connector-java-5.1.46
11 
12 4、複製jar包
13 
14 cp mysql-connector-java-5.1.46-bin.jar /usr/share/java/mysql-connector-java.jar

 

11、創建資料庫[172.25.16.2]

 1 mysql -u root -p 
 2 
 3 CREATE DATABASE db_cdh6_amon DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
 4 
 5 CREATE DATABASE db_cdh6_hue DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
 6 
 7 CREATE DATABASE db_cdh6_metastore DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
 8 
 9 CREATE DATABASE db_cdh6_sentry DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
10 
11 CREATE DATABASE db_cdh6_oozie DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
12 
13 CREATE DATABASE db_cdh6_hive DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
14 
15 GRANT ALL ON db_cdh6_scm.* TO 'cdh6'@'%' IDENTIFIED BY '123123';
16 
17 GRANT ALL ON db_cdh6_amon.* TO 'cdh6'@'%' IDENTIFIED BY '123123';
18 
19 GRANT ALL ON db_cdh6_hue.* TO 'cdh6'@'%' IDENTIFIED BY '123123';
20 
21 GRANT ALL ON db_cdh6_metastore.* TO 'cdh6'@'%' IDENTIFIED BY '123123';
22 
23 GRANT ALL ON db_cdh6_sentry.* TO 'cdh6'@'%' IDENTIFIED BY '123123';
24 
25 GRANT ALL ON db_cdh6_oozie.* TO 'cdh6'@'%' IDENTIFIED BY '123123';
26 
27 GRANT ALL ON db_cdh6_hive.* TO 'cdh6'@'%' IDENTIFIED BY '123123';
28 
29 FLUSH PRIVILEGES; 

 

 

四、Cloudera Manager安裝

 

1、配置 Cloudera Manager 倉庫CDH1-4(可以選擇,也可下載rpm自行手動安裝)

 

1 下載
4 wget https://archive.cloudera.com/cm6/6.0.1/redhat7/yum/RPMS/x86_64/cloudera-manager-agent-6.0.1-610811.el7.x86_64.rpm
5 
6 wget https://archive.cloudera.com/cm6/6.0.1/redhat7/yum/RPMS/x86_64/cloudera-manager-daemons-6.0.1-610811.el7.x86_64.rpm
7 
8 wget https://archive.cloudera.com/cm6/6.0.1/redhat7/yum/RPMS/x86_64/cloudera-manager-server-6.0.1-610811.el7.x86_64.rpm

 

 

2.安裝 CM Server 和 Agent

 

 1 1、安裝依賴
 4 yum -y install bind-utils redhat-lsb psmisc cyrus-sasl-plain cyrus-sasl-gssapi portmap httpd mod_ssl openssl-devel python-psycopg2 MySQL-python
 7 2、cdh1安裝:
 9 
10 [root@cdh1~]# yum install cloudera-manager-daemons cloudera-manager-agent cloudera-manager-server
12 
13 3、cdh2-4安裝:
14 
15 [root@cdh2~]# yum install cloudera-manager-daemons cloudera-manager-agent
16 
17 [root@cdh3 ~]# yum install cloudera-manager-daemons cloudera-manager-agent
18 
19 [root@cdh4 ~]# yum install cloudera-manager-daemons cloudera-manager-agent

 

 

 

 

3.設置 Cloudera Manager 資料庫

 

 1 mysql在本地時執行:
 2 
 3 [root@master ~]# rm -rf //cloudera-scm-server/db.mgmt.properties
 4 
 5 [root@master ~]# /opt/cloudera/cm/scm_prepare_database.sh mysql db_cdh6_scm -h172.25.16.206 -uroot -p'123123' --scm-host 172.25.16.206 db_cdh6_scm root 123123
 6 
 7 JAVA_HOME=/usr/java/jdk1.8.0_131-cloudera
 8 
 9 Verifying that we can write to /etc/cloudera-scm-server
10 
11 Creating SCM configuration file in /etc/cloudera-scm-server
12 
13 Executing: /usr/java/jdk1.8.0_131/bin/java -cp /usr/share/java/mysql-connector-java.jar:/usr/share/java/oracle-connector-java.jar:/usr/share/java/postgresql-connector-java.jar:/opt/cloudera/cm/schema/../lib/* com.cloudera.enterprise.dbutil.DbCommandExecutor /etc/cloudera-scm-server/db.properties com.cloudera.cmf.db.
14 
15 [         main] DbCommandExecutor INFO Successfully connected to database.
16 
17 All done, your SCM database is configured correctly!

 

 

註3  Hive報錯:

 1 JDBC driver cannot be found. Unable to find the JDBC database... Validate Hive Metastore schema (70)) 已失敗
 2 
 3 <property>
 4 
 5   <name>javax.jdo.option.ConnectionURL</name>
 6 
 7   <value>jdbc:mysql://my_cluster.com:3306/hive1?useUnicode=true&characterEncoding=UTF-8</value>
 8 
 9 </property>
10 
11 <property>
12 
13   <name>javax.jdo.option.ConnectionDriverName</name>
14 
15   <value>com.mysql.jdbc.Driver</value>
16 
17 </property>

 

 

 

 

4.安裝 CDH[master]

 

配置CDH的軟體包 parcels(namenode01)

 

CM安裝成功之後,接下來我們就可以通過CM安裝CDH的方式構建企業大數據平臺。所以首先需要把CDH的parcels包下載到CM主伺服器上。

 

1 [root@master ~]# cd /opt/cloudera/parcel-repo
2 
3 [root@master ~]# wget https://archive.cloudera.com/cdh6/6.0.1/parcels/CDH-6.0.1-1.cdh6.0.1.p0.590678-el7.parcel
4 
5 [root@master ~]# wget https://archive.cloudera.com/cdh6/6.0.1/parcels/manifest.json
6 
7 [root@master ~]# wget https://archive.cloudera.com/cdh6/6.0.1/parcels/CDH-6.0.1-1.cdh6.0.1.p0.590678-el7.parcel.sha256
8 
9 [root@master ~]# mv CDH-6.0.1-1.cdh6.0.1.p0.590678-el7.parcel.sha256 CDH-6.0.1-1.cdh6.0.1.p0.590678-el7.parcel.sha

 

 

註意!上面最好指定ip,切勿使用hostname很容易出現問題

 

也可以執行下麵的操作

 

在manifest.json文件中,找到對應版本的秘鑰,複製到.sha文件中

 

1 [root@master ~]# echo "2e650f1f1ea020a3efc98a231b85c2df1a50b030" > CDH-6.0.1-1.cdh6.0.1.p0.590678-el7.parcel.sha
2 
3 修改屬主屬組
4 
5 [root@master ~]# chown cloudera-scm.cloudera-scm /opt/cloudera/parcel-repo/ *
6 啟動 Cloudera Manager Server[master]
7 [root@master ~]# systemctl start cloudera-scm-server
8 如果啟動中有什麼問題,可以查看日誌。[master]
9 [root@master ~]# tail -f /var/log/cloudera-scm-server/cloudera-scm-server.log

 

 

五、 Cloudera瀏覽器配置

 

1、瀏覽器配置Cloudera Manager

 

瀏覽器打開:IP:7180

 

1)登錄、

 

賬號:admin

 

密碼:admin

 

2)選擇部署版本

 

選擇免費60天測試,正式版等可以實現需求在進行選擇。

 

3)勾選上需要安裝的主機

 

全部勾選

 

4)部署CDH

 

可以看到所下載並安裝的CDH版本表示前面部署成功,否則需要線上下載。

 

5)前面配置無誤則無須下載,否則表示前面配置有誤。分發可能需要一段時間,視集群大小而定(此時集群一定要保證Master可以免密碼登錄到其它機器上)。

 

6)檢查集群狀態

 

檢查集群的狀況,可根據提示信息修改配置並重新檢查。

 

a、cdh 托管主機之間的 Java 版本不一致

 

.......

 

有些地方忘記了,自行百度一下,前邊步驟對了問題不大

 

7)選擇需要安裝的組件,可自定義安裝。 這個可以選擇少點,安裝好CM之後可以慢慢添加服務。

 

8)給集群各個節點分配角色,目前所知道需要註意的地方是HBase Thrift Server不要為空,否則Hue無法訪問HBase。主要看hive的角色

 

9)設置mysql連接。

 

註意: 這裡很容易報錯,都是表許可權、名稱、密碼的錯誤。

 

10)下一步

 

後面的一路“繼續”下去即可。安裝所需時間較長,請耐心等待。

 

 後續服務自行安裝

 

錯誤集錦:

 

檢查主機正確性:

 

從CDH 6開始,PostgreSQL支持的Hue要求Psycopg2版本至少為2.5.4,有關更多信息,請參見文章。以下主機缺少Psycopg2庫的相容版本

 

安裝Psycopg2

 

pip3 install psycopg2==2.5.4

 

沒有PIP3 自行安裝 python

 

Hive錯誤,connector連接錯誤

 

cp -r mysql-connector-java-5.1.41.jar /usr/share/java/mysql-connector-java.jar

 

Cloudera 建議將 /proc/sys/vm/swappiness 設置為 0。當前設置為 60。

 

sysctl vm.swappiness=0 echo 0 > /proc/sys/vm/swappiness echo never > /sys/kernel/mm/transparent_hugepage/defrag echo never > /sys/kernel/mm/transparent_hugepage/enabled

 

 

 

Exception in thread "main" java.lang.AbstractMethodError: com.mysql.jdbc.JDBC4Connection.getSchema()Ljava/lang/String;

 

解決:

 

1 wget https://dev.mysql.com/get/Downloads/Connector-J/mysql-connector-java-5.1.46.tar.gz
2 
3 tar zxvf mysql-connector-java-5.1.46.tar.gz
4 
5 mkdir -p /usr/share/java/ cd mysql-connector-java-5.1.46 
6 
7 cp mysql-connector-java-5.1.46-bin.jar /usr/share/java/mysql-connector-java.jar

 

 

 有問題留言!!!!

 

 

 

 

 

 

 

 

 


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

-Advertisement-
Play Games
更多相關文章
  • 基本GCC命令的使用 GCC是一套由GNU項目開發的編程語言編譯器,可處理C語言、 C++、Fortran、Pascal、Objective C、Java等等。GCC通常是 跨平臺軟體的編譯器首選。gcc是GCC套件中的編譯驅動程式名。 若電腦是x86 64位系統,為了編譯成IA 32指令集, 則 ...
  • 目錄和文件都能操作的命令 rm cp mv rm 英文原意:remove files or directories 功能:刪除文件或目錄 語法:rm 選項[ fir] 文件或目錄 cp 英文原意:copy files and directories 功能:複製文件和目錄 語法:cp 選項[ adil ...
  • 本文主要給大家羅列了HBase協處理器載入的三種方式:Shell載入(動態)、Api載入(動態)、配置文件載入(靜態)。其中靜態載入方式需要重啟HBase。 我們假設我們已經有一個現成的需要載入的協處理器Jar包: HelloCoprocessor 0.0.1.jar 。 協處理器載入的三種方式 S ...
  • 一個問題 有一張表test,這張表除了主鍵id外,還有a,b, c 三列 假設給這三個欄位建一個複合索引 index_abc (a, b, c),問,下麵幾種查詢中,哪種查詢會用到索引 index_abc ? 1. 查詢一 select * from test where a > 1000 and ...
  • 前言:當項目上線並穩定運行後,我們就需要考慮自動備份功能了,自動備份固然簡單,但是需要相應的自動刪除來配合使用。 首先我們打開SqlServer管理工具(SSMS),在左側目錄中找到 管理-->右鍵維護計劃-->新建維護計劃 雙擊左側下方目錄:創建 ”清除維護“ 任務 雙擊後打開提示視窗,我們設置 ...
  • 文章目錄 前言 Druid介紹 主要特性 基礎概念 數據格式 數據攝入 數據存儲 數據查詢 查詢類型 架構 運維 OLAP方案對比 使用場景 使用建議 參考 近期主題 前言 項目早期、數據(報表分析)的生產、存儲和獲取業務,MySQL基本上可以滿足需要,但是隨著業務的快速增長,數據量翻至億為單位時, ...
  • 前言: 工欲善其事必先利其器,今天給大家介紹一下HBase Shell十大花式利器,在日常運維工作中,可以試著用起來。 1. 交互模式 也就是我們最常用到的Shell命令行的方式。 2. 非交互模式 與交互模式比較 如果我們想要知道HBase Shell命令執行之後是否成功,那一定要使用非交互模式。 ...
  • 一、Redis 1、簡介 【官方簡介地址:】 https://redis.io/topics/introduction 看不懂不要緊,先混個眼熟,慢慢來...。 【初步認識 Redis:】 Redis is an open source (BSD licensed), in-memory data ...
一周排行
    -Advertisement-
    Play Games
  • 示例項目結構 在 Visual Studio 中創建一個 WinForms 應用程式後,項目結構如下所示: MyWinFormsApp/ │ ├───Properties/ │ └───Settings.settings │ ├───bin/ │ ├───Debug/ │ └───Release/ ...
  • [STAThread] 特性用於需要與 COM 組件交互的應用程式,尤其是依賴單線程模型(如 Windows Forms 應用程式)的組件。在 STA 模式下,線程擁有自己的消息迴圈,這對於處理用戶界面和某些 COM 組件是必要的。 [STAThread] static void Main(stri ...
  • 在WinForm中使用全局異常捕獲處理 在WinForm應用程式中,全局異常捕獲是確保程式穩定性的關鍵。通過在Program類的Main方法中設置全局異常處理,可以有效地捕獲並處理未預見的異常,從而避免程式崩潰。 註冊全局異常事件 [STAThread] static void Main() { / ...
  • 前言 給大家推薦一款開源的 Winform 控制項庫,可以幫助我們開發更加美觀、漂亮的 WinForm 界面。 項目介紹 SunnyUI.NET 是一個基於 .NET Framework 4.0+、.NET 6、.NET 7 和 .NET 8 的 WinForm 開源控制項庫,同時也提供了工具類庫、擴展 ...
  • 說明 該文章是屬於OverallAuth2.0系列文章,每周更新一篇該系列文章(從0到1完成系統開發)。 該系統文章,我會儘量說的非常詳細,做到不管新手、老手都能看懂。 說明:OverallAuth2.0 是一個簡單、易懂、功能強大的許可權+可視化流程管理系統。 有興趣的朋友,請關註我吧(*^▽^*) ...
  • 一、下載安裝 1.下載git 必須先下載並安裝git,再TortoiseGit下載安裝 git安裝參考教程:https://blog.csdn.net/mukes/article/details/115693833 2.TortoiseGit下載與安裝 TortoiseGit,Git客戶端,32/6 ...
  • 前言 在項目開發過程中,理解數據結構和演算法如同掌握蓋房子的秘訣。演算法不僅能幫助我們編寫高效、優質的代碼,還能解決項目中遇到的各種難題。 給大家推薦一個支持C#的開源免費、新手友好的數據結構與演算法入門教程:Hello演算法。 項目介紹 《Hello Algo》是一本開源免費、新手友好的數據結構與演算法入門 ...
  • 1.生成單個Proto.bat內容 @rem Copyright 2016, Google Inc. @rem All rights reserved. @rem @rem Redistribution and use in source and binary forms, with or with ...
  • 一:背景 1. 講故事 前段時間有位朋友找到我,說他的窗體程式在客戶這邊出現了卡死,讓我幫忙看下怎麼回事?dump也生成了,既然有dump了那就上 windbg 分析吧。 二:WinDbg 分析 1. 為什麼會卡死 窗體程式的卡死,入口門檻很低,後續往下分析就不一定了,不管怎麼說先用 !clrsta ...
  • 前言 人工智慧時代,人臉識別技術已成為安全驗證、身份識別和用戶交互的關鍵工具。 給大家推薦一款.NET 開源提供了強大的人臉識別 API,工具不僅易於集成,還具備高效處理能力。 本文將介紹一款如何利用這些API,為我們的項目添加智能識別的亮點。 項目介紹 GitHub 上擁有 1.2k 星標的 C# ...