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
  • 移動開發(一):使用.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.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...