## **UDP、TCP區別,適用場景**
### 1.區別
| 對比項 | UDP | TCP |
| --- | --- | --- |
| 連接性 | 無連接 | 面向連接 |
| 可靠性 | 不可靠 | 可靠 |
| 報文 | 面向報文-數據報模式 | 面向字節流-流模式 |
| 雙工性 | 一對一、一對多、多對一、多對多 | 全雙工 |
| 流量控制 | 無 | 有(滑動窗口) |
| 擁塞控制 | 無 | 有(慢開始、擁塞避免、快重傳、快恢復) |
| 傳輸速度 | 快 | 慢 |
| 資源要求 | 較少 | 較多 |
| 首部開銷 | 8字節 | 20字節 |
| 數據順序 | 不保證 | 保證 |
### 2.UDP 適用場景
面向數據報方式、網絡數據大多為短消息、擁有大量 Client、對數據安全性無特殊要求、網絡負擔非常重,但對響應速度要求高
### 3.TCP適用場景
文件傳輸(FTP HTTP 對數據準確性要求較高,速度可以相對慢) 發送或接收郵件(POP IMAP SMTP 對數據準確性要求高,非緊急應用) 遠程登錄(telnet SSH 對數據準確性有要求,有連接的概念)
- PHP篇
- 函數傳值和傳引用的區別
- 簡述PHP的垃圾回收機制
- 簡述CGI、FAST-CGI、PHP-FPM的關系
- 常見正則表達式
- 多進程寫文件,如何保證都寫成功
- php支持回調函數的數組函數
- MySQL篇
- MySQL的兩種存儲引擎區別
- 事務的四大特性
- 數據庫事務隔離級別
- 什么是索引
- 索引有哪些數據結構,優缺點
- 索引的一些潛規則
- SQL的優化方案
- 簡述MySQL的鎖機制
- 死鎖是怎么產生的?怎么解決?
- 簡述MySQL的主從復制過程,延遲問題怎么解決
- 分布式事務的解決方案
- 數據庫中間件MyCat
- Linux篇
- Linux常用命令
- 對日志文件的IP出現的次數進行統計,并顯示次數最多的前5名
- WEB篇
- 跨域是怎么產生的,如何解決跨域
- Redis篇
- redis介紹
- redis和memcached區別
- redis的持久化方案
- 緩存穿透、擊穿、雪崩、預熱、更新、降級
- 網絡篇
- 計算機網絡體系結構
- 簡述TCP的三次握手、四次揮手過程
- UDP、TCP 區別,適用場景
- HTTP常見狀態碼含義
- 設計模式篇
- 單例模式
- 簡單工廠模式
- 抽象工廠模式
- 觀察者模式
- 策略模式
- 注冊模式
- 適配器模式
- 安全篇
- 跨站腳本攻擊(XSS)
- 跨站點請求偽造(CSRF)
- SQL 注入
- 應用層拒絕服務攻擊
- PHP安全
- 運維篇
- docker面試題
- 消息隊列篇
- 架構篇
- 數據結構與算法篇