MySQL 8.0 OCP 1Z0-908 題目解析(37)

題目146

Choose two.

Which two are true about binary logs used in asynchronous replication?

□ A) The master connects to the slave and initiates log transfer.
□ B) They contain events that describe all queries run on the master.
□ C) They contain events that describe database changes on the master.
□ D) They are pulled from the master to the slave.
□ E) They contain events that describe only administrative commands run on the master.

翻譯

選擇兩項。

關于異步復制中使用的二進制日志,哪兩項是正確的?

□ A) 主庫連接到從庫并啟動日志傳輸。
□ B) 它們包含描述主庫上運行的所有查詢的事件。
□ C) 它們包含描述主庫上數據庫更改的事件。
□ D) 它們從主庫被拉取到從庫。
□ E) 它們僅包含描述主庫上運行的管理命令的事件。

解析和答案

  • 選項A:在異步復制中,是從庫連接到主庫并請求二進制日志,而不是主庫連接到從庫,A錯誤。
  • 選項B:二進制日志并不包含主庫上運行的所有查詢,例如一些不需要記錄的查詢(如 SELECT 語句,除非開啟了查詢日志等特殊設置)不會被記錄,B錯誤。
  • 選項C:二進制日志主要記錄主庫上導致數據庫更改的事件,如 INSERTUPDATEDELETE 等操作,C正確。
  • 選項D:在異步復制中,從庫主動從主庫拉取二進制日志,D正確。
  • 選項E:二進制日志不僅包含管理命令,還包含數據更改等操作的事件,E錯誤。

綜上,正確答案是 CD

知識點總結

  • MySQL 異步復制:了解異步復制的工作原理,包括主庫和從庫之間的連接方式以及二進制日志的傳輸過程。
  • 二進制日志內容:掌握二進制日志所包含的事件類型,主要是數據庫更改的事件,而不是所有查詢或僅管理命令。
  • 復制中的日志拉取:理解在異步復制中,從庫如何獲取主庫的二進制日志,即從庫主動拉取主庫的二進制日志。

題目147

Choose the best answer.

Examine these entries from the general query log:

Time                          Id Command Argument
2019-12-17T00:36:23.389450Z   24 Connect root@localhost on mydb using SSL/TLS
2019-12-17T00:36:23.389754Z   24 Query select @@version_comment limit 1
2019-12-17T00:36:23.929519Z   25 Connect root@localhost on mydb using SSL/TLS
2019-12-17T00:36:23.929846Z   25 Query select @@version_comment limit 1
2019-12-17T00:36:27.633082Z   24 Query START TRANSACTION
2019-12-17T00:36:30.321657Z   24 Query UPDATE t1 SET val = 1 WHERE ID = 130
2019-12-17T00:36:32.417433Z   25 Query START TRANSACTION
2019-12-17T00:36:33.617642Z   25 Query UPDATE t2 SET val = 5 WHERE ID = 3805
2019-12-17T00:36:36.049458Z   25 Query UPDATE t1 SET val = 10 WHERE ID = 130
2019-12-17T00:36:38.513674Z   24 Query UPDATE t2 SET val = 42 WHERE ID = 3805

All UPDATE statements reference existing rows.
Which describes the outcome of the sequence of statements?

○ A) All statements execute without error.
○ B) A deadlock occurs immediately.
○ C) Connection 25 experiences a lock wait timeout.
○ D) A deadlock occurs after innodb_lock_wait_timeout seconds.
○ E) Connection 24 experiences a lock wait timeout.

翻譯

選擇最佳答案。

查看通用查詢日志中的這些條目:

Time                          Id Command Argument
2019-12-17T00:36:23.389450Z   24 Connect root@localhost on mydb using SSL/TLS
2019-12-17T00:36:23.389754Z   24 Query select @@version_comment limit 1
2019-12-17T00:36:23.929519Z   25 Connect root@localhost on mydb using SSL/TLS
2019-12-17T00:36:23.929846Z   25 Query select @@version_comment limit 1
2019-12-17T00:36:27.633082Z   24 Query START TRANSACTION
2019-12-17T00:36:30.321657Z   24 Query UPDATE t1 SET val = 1 WHERE ID = 130
2019-12-17T00:36:32.417433Z   25 Query START TRANSACTION
2019-12-17T00:36:33.617642Z   25 Query UPDATE t2 SET val = 5 WHERE ID = 3805
2019-12-17T00:36:36.049458Z   25 Query UPDATE t1 SET val = 10 WHERE ID = 130
2019-12-17T00:36:38.513674Z   24 Query UPDATE t2 SET val = 42 WHERE ID = 3805

所有 UPDATE 語句都引用了現有的行。
哪個描述了這些語句序列的結果?

○ A) 所有語句都無錯誤地執行。
○ B) 立即發生死鎖。
○ C) 連接 25 遇到鎖等待超時。
○ D) 在 innodb_lock_wait_timeout 秒后發生死鎖。
○ E) 連接 24 遇到鎖等待超時。

解析和答案

  • 選項A:由于存在死鎖風險,不會所有語句都無錯誤執行,A錯誤。
  • 選項B:連接24先更新了t1表的ID=130的行,連接25更新了t2表的ID=3805的行,然后連接25要更新t1表的ID=130的行(此時被連接24的事務鎖定 ),連接24要更新t2表的ID=3805的行(此時被連接25的事務鎖定 ),這種循環等待會立即導致死鎖,B正確。
  • 選項C:不是連接25單獨遇到鎖等待超時,而是死鎖,C錯誤。
  • 選項D:死鎖是立即發生的,不是等待 innodb_lock_wait_timeout 秒后,D錯誤。
  • 選項E:不是連接24單獨遇到鎖等待超時,而是死鎖,E錯誤。

所以答案是B。

知識點總結

  • 死鎖概念:了解死鎖的定義,即兩個或多個事務在執行過程中,因爭奪資源而造成的一種互相等待的現象,若無外力作用,它們都將無法推進下去。
  • 死鎖產生條件:掌握死鎖產生的四個必要條件,包括互斥條件(資源不能被共享,只能由一個進程使用 )、請求與保持條件(進程已獲得資源,又對其他資源發出請求 )、不剝奪條件(進程已獲得的資源,在未使用完之前,不能被剝奪 )、循環等待條件(若干進程之間形成一種頭尾相接的循環等待資源關系 )。
  • InnoDB死鎖檢測:清楚 InnoDB 存儲引擎會自動檢測死鎖,當檢測到死鎖時,會回滾其中一個事務,以打破死鎖。
  • 事務與鎖:明白在 InnoDB 中,事務在執行 UPDATE 等操作時會對相關的行加鎖,不同的事務對同一行的操作會導致鎖競爭,從而可能引發死鎖。
  • 死鎖處理:知道當發生死鎖時,MySQL 會自動選擇一個事務進行回滾,通常是回滾擁有最少行級鎖的事務,以解決死鎖問題。
  • 鎖等待超時:了解 innodb_lock_wait_timeout 參數的作用,它用于設置事務等待行鎖的超時時間,當事務等待鎖的時間超過該值時,會發生鎖等待超時錯誤,而不是死鎖。
  • 死鎖與鎖等待超時區別:區分死鎖和鎖等待超時的不同,死鎖是兩個或多個事務互相等待對方的鎖,而鎖等待超時是一個事務等待另一個事務的鎖超過了指定的時間。
  • 事務隔離級別影響:明白不同的事務隔離級別(如 READ COMMITTEDREPEATABLE READ )可能會影響死鎖的發生概率和處理方式,REPEATABLE READ 是 InnoDB 的默認隔離級別,在該級別下可能更容易發生死鎖。
  • 死鎖預防與避免:掌握一些預防和避免死鎖的方法,如按相同的順序訪問表和行、避免在事務中持有鎖的時間過長、使用更短的事務等。
  • 日志分析:能夠通過分析通用查詢日志(general query log)等日志文件,識別事務的執行順序和鎖的競爭情況,從而判斷是否存在死鎖風險以及死鎖發生的原因。

題目148

Choose the best answer.

Examine this partial output for InnoDB Cluster status:

"topology": {"host1:3377": {"address": "host1:3377","mode": "R/W",[...]"status": "ONLINE","version": "8.0.18"},"host2:3377": {"address": "host2:3377","mode": "R/O",[...]"status": "(MISSING)"},"host3:3377": {"address": "host3:3377","mode": "R/O",[...]"status": "ONLINE","version": "8.0.18"}
}

Which statement explains the state of the instance deployed on host2?

○ A) It can rejoin the cluster by using the command cluster.addInstance(‘@host3:3377’).
○ B) It has been expelled from the cluster because of a transaction error.
○ C) It can be recovered from a donor instance on host3 by cloning using the command cluster.rejoinInstance(‘@host3:3377’).
○ D) It has been removed from the cluster by using the command STOP GROUP_REPLICATION;.
○ E) It can rejoin the cluster by using the command dba.rebootClusterFromCompleteOutage().

翻譯

選擇最佳答案。

查看 InnoDB Cluster 狀態的部分輸出:\

"topology": {"host1:3377": {"address": "host1:3377","mode": "R/W",[...]"status": "ONLINE","version": "8.0.18"},"host2:3377": {"address": "host2:3377","mode": "R/O",[...]"status": "(MISSING)"},"host3:3377": {"address": "host3:3377","mode": "R/O",[...]"status": "ONLINE","version": "8.0.18"}
}

哪條語句解釋了部署在 host2 上的實例的狀態?

○ A) 它可以通過使用命令 cluster.addInstance(‘@host3:3377’) 重新加入集群。
○ B) 由于事務錯誤,它已被驅逐出集群。
○ C) 它可以通過使用命令 cluster.rejoinInstance(‘@host3:3377’) 從 host3 上的捐贈者實例克隆來恢復。
○ D) 它已通過使用命令 STOP GROUP_REPLICATION; 從集群中移除。
○ E) 它可以通過使用命令 dba.rebootClusterFromCompleteOutage() 重新加入集群。

解析和答案

  • 選項Acluster.addInstance 用于添加新實例,而不是讓缺失的實例重新加入,A錯誤。
  • 選項B:狀態為 (MISSING) 不一定是因為事務錯誤,B錯誤。
  • 選項C:當實例狀態為 (MISSING) 時,可以使用 cluster.rejoinInstance 命令從在線的捐贈者實例(如 host3 )克隆數據來恢復,C正確。
  • 選項DSTOP GROUP_REPLICATION 是停止組復制,不是移除實例,D錯誤。
  • 選項Edba.rebootClusterFromCompleteOutage 用于完全 outage 后的集群重啟,不是針對單個缺失實例,E錯誤。

所以答案是C。

知識點總結

  • InnoDB Cluster 實例狀態:了解 InnoDB Cluster 中實例的不同狀態,如 ONLINE(MISSING) 等,以及每種狀態的含義和處理方法。
  • 實例恢復命令:掌握用于恢復缺失實例的命令,如 cluster.rejoinInstance,該命令可以從在線的捐贈者實例克隆數據來恢復缺失的實例。
  • 集群管理操作:清楚不同的集群管理命令的作用,如 cluster.addInstance(添加新實例 )、cluster.rejoinInstance(恢復缺失實例 )、dba.rebootClusterFromCompleteOutage(完全 outage 后的集群重啟 )等,以便在不同情況下選擇正確的命令進行操作。

題目149

Choose the best answer.

MySQL Enterprise Monitor Query Analyzer is configured to monitor an instance.

Which statement is true?

○ A) The Query Response Time index (QRTI) is fixed to 100ms and cannot be customized.
○ B) Enabling the events_statements_history_long consumer allows tracking the longest running query.
○ C) An agent must be installed locally on the instance to use the Query Analyzer.
○ D) The Query Analyzer can monitor an unlimited number of normalized statements.
○ E) The slow query log must be enabled on the monitored server to collect information for the Query Analyzer.

翻譯

選擇最佳答案。

MySQL Enterprise Monitor Query Analyzer 已配置為監控一個實例。

哪個陳述是正確的?

○ A) 查詢響應時間指數(QRTI)固定為 100ms,無法自定義。
○ B) 啟用 events_statements_history_long 消費者允許跟蹤運行時間最長的查詢。
○ C) 必須在實例本地安裝代理才能使用 Query Analyzer。
○ D) Query Analyzer 可以監控無限數量的規范化語句。
○ E) 必須在被監控的服務器上啟用慢查詢日志才能為 Query Analyzer 收集信息。

解析和答案

  • 選項A:查詢響應時間指數(QRTI)是可以自定義的,不是固定為 100ms,A錯誤。
  • 選項Bevents_statements_history_long 主要用于記錄語句歷史,不一定能直接跟蹤運行時間最長的查詢,B錯誤。
  • 選項C:MySQL Enterprise Monitor Query Analyzer 不需要在實例本地安裝代理,C錯誤。
  • 選項D:Query Analyzer 可以監控無限數量的規范化語句,D正確。
  • 選項E:雖然慢查詢日志可以提供信息,但 Query Analyzer 不一定依賴慢查詢日志,還可以通過其他方式收集信息,E錯誤。

綜上,正確答案是 D

知識點總結

  • MySQL Enterprise Monitor Query Analyzer:了解 MySQL Enterprise Monitor Query Analyzer 的功能和特點,包括其對語句的監控能力。
  • 查詢響應時間指數(QRTI):掌握 QRTI 的作用和可配置性,以及如何根據實際需求進行調整。
  • 監控代理與日志:理解 Query Analyzer 與監控代理、慢查詢日志等之間的關系,以及它們在監控過程中的作用。

題目150

Choose two.

Examine this query and its output:

mysql> select * from sys.user_summary_by_statement_type where statement in ('select', 'insert', 'Quit');
+------+----------+---------+----------------+-------------+-------------+-------------+--------------+--------------+-----------+
| user | statement| total   | total_latency  | max_latency | lock_latency| rows_sent   | rows_examined| rows_affected| full_scans|
+------+----------+---------+----------------+-------------+-------------+-------------+--------------+--------------+-----------+
| app  | select   | 919866  | 2.41 h         | 330.01 ms   | 1.52 m      | 542614816   | 542614816    | 0            | 919958    |
| app  | insert   | 923070  | 1.66 h         | 287.41 ms   | 1.65 m      | 0           | 0            | 923026       | 0         |
| app  | Quit     | 679892  | 9.54 s         | 170.97 ms   | 0 ps        | 0           | 0            | 0            | 0         |
| bob  | select   | 344964  | 53.61 m        | 328.42 ms   | 34.51 s     | 203509545   | 203509542    | 0            | 344847    |
| bob  | insert   | 346159  | 37.94 m        | 235.77 ms   | 36.94 s     | 0           | 0            | 346159       | 0         |
| bob  | Quit     | 254971  | 3.65 s         | 69.91 ms    | 0 ps        | 0           | 0            | 0            | 0         |
| root | select   | 230621  | 36.88 m        | 21.47 s     | 23.81 s     | 135639074   | 135644067    | 0            | 230595    |
| root | insert   | 231585  | 25.86 m        | 364.22 ms   | 31.45 s     | 0           | 0            | 4150423      | 0         |
| root | Quit     | 170363  | 2.24 s         | 130.14 ms   | 0 ps        | 0           | 0            | 0            | 0         |
+------+----------+---------+----------------+-------------+-------------+-------------+--------------+--------------+-----------+
9 rows in set (0.00 sec)

Which two statements are true?

□ A) User bob had a significantly higher ratio of SELECT + INSERT statements to quit than both app and root users.
□ B) User bob had the largest total time waiting for locks.
□ C) The app user had the highest total number of rows read from storage engines.
□ D) The root user had the largest number of modified rows for a SELECT statement.
□ E) The root user had the largest single wait time.

翻譯

選擇兩個答案。

查看此查詢及其輸出:

mysql> select * from sys.user_summary_by_statement_type where statement in ('select', 'insert', 'Quit');
+------+----------+---------+----------------+-------------+-------------+-------------+--------------+--------------+-----------+
| user | statement| total   | total_latency  | max_latency | lock_latency| rows_sent   | rows_examined| rows_affected| full_scans|
+------+----------+---------+----------------+-------------+-------------+-------------+--------------+--------------+-----------+
| app  | select   | 919866  | 2.41 h         | 330.01 ms   | 1.52 m      | 542614816   | 542614816    | 0            | 919958    |
| app  | insert   | 923070  | 1.66 h         | 287.41 ms   | 1.65 m      | 0           | 0            | 923026       | 0         |
| app  | Quit     | 679892  | 9.54 s         | 170.97 ms   | 0 ps        | 0           | 0            | 0            | 0         |
| bob  | select   | 344964  | 53.61 m        | 328.42 ms   | 34.51 s     | 203509545   | 203509542    | 0            | 344847    |
| bob  | insert   | 346159  | 37.94 m        | 235.77 ms   | 36.94 s     | 0           | 0            | 346159       | 0         |
| bob  | Quit     | 254971  | 3.65 s         | 69.91 ms    | 0 ps        | 0           | 0            | 0            | 0         |
| root | select   | 230621  | 36.88 m        | 21.47 s     | 23.81 s     | 135639074   | 135644067    | 0            | 230595    |
| root | insert   | 231585  | 25.86 m        | 364.22 ms   | 31.45 s     | 0           | 0            | 4150423      | 0         |
| root | Quit     | 170363  | 2.24 s         | 130.14 ms   | 0 ps        | 0           | 0            | 0            | 0         |
+------+----------+---------+----------------+-------------+-------------+-------------+--------------+--------------+-----------+
9 rows in set (0.00 sec)

哪兩個陳述是正確的?

□ A) 用戶 bob 的 SELECT + INSERT 語句與 Quit 語句的比率明顯高于 app 和 root 用戶。
□ B) 用戶 bob 的總鎖等待時間最長。
□ C) app 用戶從存儲引擎讀取的總行數最多。
□ D) root 用戶的 SELECT 語句修改的行數最多。
□ E) root 用戶的單次等待時間最長。

解析和答案

  • 選項A:計算各用戶的 SELECT + INSERT 與 Quit 的比率,app 用戶的比率為 (919866 + 923070) / 679892 ≈ 2.71,bob 用戶的比率為 (344964 + 346159) / 254971 ≈ 2.70,root 用戶的比率為 (230621 + 231585) / 170363 ≈ 2.71,bob 用戶的比率并不明顯高于其他用戶,A錯誤。
  • 選項B:查看 lock_latency 列,bob 用戶的總鎖等待時間為 34.51 s + 36.94 s = 71.45 s,app 用戶為 1.52 m + 1.65 m = 184.2 s,root 用戶為 23.81 s + 31.45 s = 55.26 s,bob 用戶的總鎖等待時間不是最長,B錯誤。
  • 選項C:查看 rows_examined 列,app 用戶的 rows_examined 為 542614816,是所有用戶中最高的,C正確。
  • 選項D:SELECT 語句不會修改行,rows_affected 列對于 SELECT 語句為 0,D錯誤。
  • 選項E:查看 max_latency 列,root 用戶的 max_latency 為 21.47 s,app 用戶為 330.01 ms,bob 用戶為 328.42 ms,root 用戶的單次等待時間最長,E正確。

所以答案是CE。

知識點總結

  • sys 模式視圖sys.user_summary_by_statement_type 視圖用于匯總按用戶和語句類型分類的語句執行統計信息,包括執行次數、延遲、鎖等待時間、處理的行數等。
  • 鎖等待時間lock_latency 列表示該用戶在執行該類型語句時的總鎖等待時間,通過比較不同用戶的鎖等待時間可以了解各用戶的鎖競爭情況。
  • 數據讀取量rows_examined 列表示該用戶在執行該類型語句時從存儲引擎讀取的總行數,該值越高表示數據讀取量越大。
  • 單次等待時間max_latency 列表示該用戶在執行該類型語句時的最大單次等待時間,該值可以反映語句執行的最大延遲情況。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/91234.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/91234.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/91234.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

vue element 封裝表單

背景: 在前端系統開發中,系統頁面涉及到的表單組件比較多,所以進行了簡單的封裝。封裝的包括一些Form表單組件,如下:input輸入框、select下拉框、等 實現效果: 理論知識: 表單組件官方鏈接&…

flutter-完美解決鍵盤彈出遮擋輸入框的問題

文章目錄1. 前言2. 借助 Scaffold 的特性自動調整3. 使用 MediaQuery 精準控制抬升高度3.1. 底部抽屜內輸入框的方案4. 注意事項5. 總結1. 前言 在 Flutter 的開發過程中,經常會碰到某一個頁面有個 TextField 輸入組件,點擊的時候鍵盤會彈起來&#xff…

機器學習筆記(四)——聚類算法KNN、Kmeans、Dbscan

寫在前面:寫本系列(自用)的目的是回顧已經學過的知識、記錄新學習的知識或是記錄心得理解,方便自己以后快速復習,減少遺忘。概念部分大部分來自于機器學習菜鳥教程,公式部分也會參考機器學習書籍、阿里云天池。機器學習如果只啃概…

【C#】事務(進程 ID 64)與另一個進程被死鎖在鎖資源上,并且已被選作死鎖犧牲品。請重新運行該事務。不能在具有唯一索引“XXX_Index”的對象“dbo.Test”中插入重復鍵的行。

🌹歡迎來到《小5講堂》🌹 🌹這是《C#》系列文章,每篇文章將以博主理解的角度展開講解。🌹 🌹溫馨提示:博主能力有限,理解水平有限,若有不對之處望指正!&#…

LeetCode Hot 100 搜索二維矩陣

給你一個滿足下述兩條屬性的 m x n 整數矩陣:每行中的整數從左到右按非嚴格遞增順序排列。每行的第一個整數大于前一行的最后一個整數。給你一個整數 target ,如果 target 在矩陣中,返回 true ;否則,返回 false 。示例…

python畢設高分案例:基于機器學習的抑郁癥數據分析與預測系統,flask框架,算法包括XGboost模型、梯度提升樹模型等

1 緒論 1.1 課題研究背景和意義 1.1.1 研究背景 在醫療行業不斷發展的當下,數據量呈現出爆炸式增長,醫學數據的復雜性和多樣性也達到了前所未有的程度。電子病歷系統記錄了患者豐富的診療信息,醫學影像技術如 CT、MRI 等生成海量的圖像數據…

STM32與ADS1256多通道數據采樣原理及控制程序

好的,使用 STM32 與 ADS1256 通信讀取多通道電壓是精密數據采集的常見方案。ADS1256 是一款高精度、24 位、8 通道(或差分 4 通道)的 ΔΣ ADC,非常適合需要高分辨率的應用(如傳感器信號、醫療儀器等)。 以下是對整個過程的詳細分析及基于 STM32 HAL 庫的程序示例: 核…

Spring Boot 3.5.x 使用 SpringDoc 2 / Swagger3

這篇文章資料來自于網絡,對部分知識整理,這里只是記錄一下,僅供參考 為什么要用 Swagger Swagger 的核心思想是通過定義和描述 API 的規范、結構和交互方式,以提高 API 的可讀性、可靠性和易用性,同時降低 API 開發的難…

@RefreshScope 核心原理深度解析:Spring Boot 的動態魔法

讓我們通過全新的原理圖解和代碼級分析,揭開RefreshScope實現配置熱更新的神秘面紗!一、工作原理全景圖(優化版) #mermaid-svg-50lhLlOFeSRIWnLn {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px…

萬字詳解——OSI七層模型:網絡通信的完整架構解析

OSI七層模型:網絡通信的完整架構解析OSI(Open Systems Interconnection)七層模型是計算機網絡領域最基礎、最權威的參考框架。它由國際標準化組織(ISO)于1984年提出,旨在為不同廠商、不同技術的網絡設備和系…

一個人開發一個App(OpenApi)

為了少寫代碼,統一前后端的網絡層,我使用了OpenApi設計restful接口。然后用openapi-generator來生成flutter的代碼。生成go代碼用的是oapi-codegen,它對go更友好一些。 我們直接在api.yml中設計接口,所有的返回值與請求者都提取到components里…

光伏氣象監測系統:助力光伏發電的智慧大腦

光伏氣象監測系統:助力光伏發電的智慧大腦 柏峰【BF-GFQX】在全球積極推動能源轉型、大力倡導 “雙碳” 目標的當下,光伏發電憑借其清潔、可再生的顯著優勢,宛如一顆冉冉升起的新星,在能源領域迅速嶄露頭角,得以廣泛推…

SpringCloud01——項目演變、微服務遠程調用三種方式、springcloud介紹、nacos注冊中心

目錄 一、項目架構演變過程 1、單體應用架構 2、垂直應用架構 3、分布式服務架構 4、流動計算架構(SOA架構) 5、微服務架構 二、如何實現微服務遠程調用 1、HttpClient工具類(springboot中) 形式1:調用第三方…

Oracle 和 MySQL 中的日期類型比較

Oracle 和 MySQL 都提供了多種日期和時間數據類型,但它們在實現和功能上有一些差異。以下是兩者的主要日期類型對比:Oracle 日期類型DATE存儲日期和時間(精確到秒)格式:YYYY-MM-DD HH24:MI:SS示例:TO_DATE(…

基于 Redis 實現共享 Session 登錄的多種方法與實踐

全文目錄:開篇語**前言****1. 什么是共享 Session 登錄?****2. 基于 Redis 實現共享 Session 的基本方法****2.1 通過 Redis 存儲 Session 數據****2.1.1 基本流程****2.1.2 示例代碼(Java Spring Boot Redis)****3. 使用 Redis…

spring cloud + easyRules 零基礎搭建智能規則引擎

你是否曾想過在項目中嵌入一套輕量級且高度可擴展的規則引擎,輕松實現動態化的業務決策?在金融、電商、政務等領域,風險控制是業務安全的核心。傳統硬編碼方式很難應對復雜多變的風控需求,而規則引擎允許我們將這些規則獨立出來&a…

AI應用:電路板設計

Diode Computers 公司 Diode Computers是一家專注于利用AI技術進行定制電路板設計和制造的公司,提供從概念到量產的全流程服務。其核心優勢在于將電路板設計轉化為AI可理解的代碼形式,大幅提升設計效率并降低傳統EDA工具的使用門檻 0。 核心服務 設計與制…

RocketMQ學習系列之——客戶端消息確認機制

一、客戶端使用MQ基本代碼示例1、添加maven依賴<dependency><groupId>org.apache.rocketmq</groupId><artifactId>rocketmq-client</artifactId><version>5.3.0</version> </dependency>2、生產者代碼示例public class Produc…

[leetcode] 組合總和

39. 組合總和 - 力扣&#xff08;LeetCode&#xff09; i class Solution {int aim;vector<vector<int>> ret;vector<int> path; public:vector<vector<int>> combinationSum(vector<int>& nums, int target) {aim target;dfs(nums…

新能源行業B端極簡設計:碳中和目標下的交互輕量化實踐

新能源行業B端極簡設計&#xff1a;碳中和目標下的交互輕量化實踐內容摘要在新能源行業&#xff0c;碳中和目標正推動著企業追求更高的運營效率和更低的資源消耗。然而&#xff0c;傳統的B端交互設計往往復雜繁瑣&#xff0c;不僅增加了用戶的操作成本&#xff0c;還可能導致資…