1. 程式人生 > >跨域處理與分散式ID

跨域處理與分散式ID

跨域是什麼?瀏覽器從一個域名的網頁去請求另一個域名的資源時,域名、埠、協議任一不同,都是跨域 。我們是採用前後端分離開發的,也是前後端分離部署的,必然會存在跨域問題。 怎麼解決跨域?很簡單,只需要在controller類上添加註解@CrossOrigin 即可!這個註解其實是CORS的實現。
​ CORS(Cross-Origin Resource Sharing, 跨源資源共享)是W3C出的一個標準,其思想是使用自定義的HTTP頭部讓瀏覽器與伺服器進行溝通,從而決定請求或響應是應該成功,還是應該失敗。因此,要想實現CORS進行跨域,需要伺服器進行一些設定,同時前端也需要做一些配置和分析。本文簡單的對服務端的配置和前端的一些設定進行分析。

分散式ID:snowflake (雪花)演算法
在這裡插入圖片描述
預設情況下41bit的時間戳可以支援該演算法使用到2082年,10bit的工作機器id可以支援1024臺機器,序列號支援1毫秒產生4096個自增序列id . SnowFlake的優點是,整體上按照時間自增排序,並且整個分散式系統內不會產生ID碰撞(由資料中心ID和機器ID作區分),並且效率較高,經測試,SnowFlake每秒能夠產生26萬ID左右