網絡時代每個軟件都須要連網功能。身爲一個軟件工程師,多瞭解網絡原理的話,對於網絡相關問題的設定和故障排查,會有很大的幫助。這份教程文字有點多,建議你還能夠搭配如下閱讀資料,多方理解:
- 我是一個網卡
- DNS 原理入門
- HTTP 協議入門
- 你應該知道的HTTP基礎知識
- 網絡協議——寫給每一個懂點編程的同窗
- Khan: Internet 101 影片
- 圖解 HTTP, 人民郵電出版社
- 網絡是怎樣鏈接的, 人民郵電出版社
安裝 :javascript
百度統計 來統計用戶流量,css
Intercom 來作即時線上客服。html
這兩個是 JavaScript 插件放在 HTML 上的.java
HTTP緩存:git
https://developers.google.com/web/fundamentals/performance/optimizing-content-efficiency/http-cachingweb
使用瀏覽器緩存,能夠加快網頁加載速度。算法
開發者須要確保header提供正確的指令。數據庫
用戶發送請求,服務器接受後處理並返回response。它會根據請求中的data,判斷是否請求內容是否已變化,沒有變化的話,就在response中告訴Browser使用自身緩存,同時response中不會帶data。編程
當服務器返回響應時,還會發出一組 HTTP 標頭,用於描述響應的內容類型、長度、緩存指令、驗證令牌等。例如,在上圖的交互中,服務器返回一個 1024 字節的響應,指示客戶端將其緩存最多 120 秒,並提供一個驗證令牌(「x234dff」),可在響應過時後用來檢查資源是否被修改。segmentfault
經過Etag驗證緩存的響應:
第一次的請求和響應,瀏覽器會收到一個Etag令牌,內部存儲着隨機組合的數據,好比包括一個數據的updated_at時間戳。
第二次瀏覽器的請求內會包含這個Etag,服務器會檢查相應的數據,好比看數據的updated_at時間是否發生變化,
上圖中response告訴服務器,沒有變化,服務器會更新緩存存在的時間,並使用緩存中的數據。這節約了時間和帶寬。
Cache-Control
最佳緩存策略:
廢棄和更新緩存的response
根據不通的內容,設置不一樣的緩存方案。
組合使用 ETag、Cache-Control 和惟一網址來實現一舉多得:較長的過時時間、控制能夠緩存響應的位置以及隨需更新。
Http request和response的流程理解:
網絡時代每個軟件都須要連網功能。身爲一個軟件工程師,多瞭解網絡原理的話,對於網絡相關問題的設定和故障排查,會有很大的幫助。這份教程文字有點多,建議你還能夠搭配如下閱讀資料,多方理解:
Khan: Internet 101 影片 (可汗學院的影片)
Wires, cables, and WiFi
IP address and DNS
Protocol協議:IP協議(各個服務器的惟一地址)
IPv4就是包含country,地區region,subnetwork, devise四部分的ip網址組成。
DNS(Domain Name System) 域名。每一個域名對應一個ip地址。
Packet, routers, and reliability
數據被分紅小塊,發送,它沒有司機也沒有路徑,只有IP地址。根據cheapest原則,選擇傳輸方式。
如何保證數據徹底接收?使用Tcp protocol( Transmission control protocol)。每一個packet都有header記錄編號,最後根據編號組成完整的data。若是發現缺失會再要求重新發送缺乏的packet。
HTTP和HTML
Hypertext transfer Protocol 超文本傳輸協議
Hypertext Markup Language 超文本 標記語言
Https: Hypertext Transfer Protocol Secure
Https使用了SSL和TLS2個安全協議保證安全交互數據, 使用了Digital Certificate數字證書。
SSL: Secure Sockets Layer
TLS: Transport Layer Security
小結:
Http和DNS管理web文件的發送和接收;
Tcp/ip&Routing,分割和運輸Packets。
Wires, Cables& Wifi管理物理層的二進制的數據傳輸。
Encryption and public keys
encryption and decryption 編碼和解碼,解碼就是讓信息可讀
public key: 能夠分享給任何人,任何人均可以用它來encryption。
private key:只有一臺機器有,用來decryption公🔑編碼的信息。
https 使用了安全協議。
Cybersecurity and crime 網絡安全和犯罪
viruses, malware ,DDos attacks, phishing scams 網絡釣魚騙局