www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當前位置:首頁 > 公眾號精選 > 架構(gòu)師社區(qū)
[導讀]我是一個web服務(wù)器,我的工作是給人類提供上網(wǎng)服務(wù),我每天要為數(shù)以萬計的人提供網(wǎng)頁瀏覽服務(wù)。已經(jīng)是深夜了,我還在和手下幾個兄弟為了一件事緊張討論著。

我是一個web服務(wù)器

我是一個web服務(wù)器,我的工作是給人類提供上網(wǎng)服務(wù),我每天要為數(shù)以萬計的人提供網(wǎng)頁瀏覽服務(wù)。

深夜,我偷聽到程序員要對session下手……

已經(jīng)是深夜了,我還在和手下幾個兄弟為了一件事緊張討論著。

“老大,現(xiàn)在咱們每天處理的請求越來越多了,session同步的問題不能再拖了,必須想個辦法”

“二哥說的是啊,老大,不能再拖了”

“老二,老三,咱們是一個集群,你們說的問題我不是不知道,我昨天聽程序員們在討論說要給我們接入一個叫Redis的家伙,相信這一問題很快就能得到解決啦,大家再忍忍?!?

深夜,我偷聽到程序員要對session下手……

“Redis,他是誰,什么來頭?怎么沒聽過這號人物”

“我也沒見過,等等看吧”

session-cookie時代

到底是什么問題,讓我們兄弟幾個如此著急上火?事情還得從多年以前說起······

那時候,這倆兄弟還沒來,就我一個web服務(wù)器,每天處理的不過是一些靜態(tài)資源文件,像HTML、CSS、JS、圖片等等,日子過的清閑自在。

深夜,我偷聽到程序員要對session下手……

日子一天天過著,互聯(lián)網(wǎng)卻悄然發(fā)生著變化。除了靜態(tài)網(wǎng)頁之外,可以動態(tài)交互的網(wǎng)絡(luò)應用開始如雨后春筍般涌現(xiàn),像各種各樣的論壇啊,購物網(wǎng)站啊之類的。

這家公司的老板也不例外,招了一幫程序員要搞一套支持動態(tài)網(wǎng)頁交互的網(wǎng)站出來。

以往的時候,我只需要按照HTTP協(xié)議的規(guī)范處理請求就完事兒了。不過動態(tài)交互應用出現(xiàn)后,我還得記住每一個請求背后的用戶是誰,要不然就張冠李戴,全亂套了。

為了解決這個問題,程序員們想出了一個叫session的辦法:

瀏覽器登陸以后,我就分配一個session id,表示一個會話,然后返回給瀏覽器,讓它保存著。后續(xù)再來請求的時候,就把它給帶上,我就能知道是誰啦!

深夜,我偷聽到程序員要對session下手……

還別說,這辦法還是挺管用的,成功解決了用戶身份識別的問題,這一用就是好幾年。

不過,互聯(lián)網(wǎng)的發(fā)展實在是太快了,用戶量蹭蹭上漲,而我卻發(fā)起了愁。

原先用戶量少的時候,session id管理起來倒也簡單,現(xiàn)在用戶越來越多,對應的session id數(shù)量也與日俱增,我有點不堪重負了。

終于前不久,公司對web服務(wù)器進行了擴展,給我找來了兩個小弟,還專門添置了一個nginx來進行負載均衡,這一下我們變成了3臺web服務(wù)器組成的小集群了。

深夜,我偷聽到程序員要對session下手……

我的工作一下輕松了許多,兩位小兄弟為了分擔了不少。我原以為以后的日子要好過一些了,可沒想到,兩位小兄弟的加入?yún)s引入了新的問題。

原先的session id雖然很多,我一個人累是累點,但是方便管理啊!現(xiàn)在人手是增加了,可是這個session id的管理問題卻變得復雜起來。

因為咱們現(xiàn)在是個集群,請求如果發(fā)到我這,我給登記了session id,但下一次請求說不定就發(fā)到老二那里,一會兒又發(fā)到老三那里,這個就說不準了,這樣我們幾個手頭的信息不一致,就會出現(xiàn)一些異常情況,用戶估計要破口大罵:這什么辣雞網(wǎng)站?

后來我們跟nginx商量了一下,讓他同一個用戶來的請求都發(fā)給我們固定的一個人,這才穩(wěn)住了局面。

不過好景不長,后面我們?nèi)值芏枷嗬^出現(xiàn)過宕機的情況,這時候nginx還是得把請求交給還在工作的兄弟,原來的問題就又出現(xiàn)了!

我們幾個逼急了,商量了一下,干脆大家伙來同步session id的信息好了,有新增、失效的情況都給其他幾個兄弟招呼一下,大家都管理一份,這樣就不會出現(xiàn)不一致的問題了。

深夜,我偷聽到程序員要對session下手……

搞了半天,又變成以前一個人管理所有session id的情況了,不僅如此,還要抽出時間和幾位兄弟同步,把session id搬來搬去,工作量不減反增了。

就這樣艱難的過了一段日子,大家都怨聲載道,所以有了開頭的那一番討論。

這一次,希望這位新來的叫Redis的伙伴能拯救我們。

獨立緩存——Redis

過了幾天,總算把這個叫Redis的小伙伴給盼來了!

這小子看起來特別精神,了解清楚情況后,告訴我們說:“三位老哥,以后這session id都統(tǒng)一存在我這里吧,你們別各自保存了,這不是各位的擅長”

“你行嗎?”,老二看著不太相信他的話,一臉不屑。

“行不行,試試不就知道了嗎?”

深夜,我偷聽到程序員要對session下手……

接下來,我們聽從了Redis的建議,不再保存這煩人的session id,全部一股腦兒交給了他,我們需要的時候再找他獲取。

你還別說,這小子個子不大,本事不小,讀寫速度都特快,讓我們頭疼的問題總算是解決了!

Token時代

幾個月后的一天···

“聽說了嗎?程序員們又要更改session id的存儲方案了”,這一天,老二神神秘秘的說到。

“不對不對,我聽到的版本是以后不用session id了,要變天了!”,老三也湊了上來。

一旁的redis老哥一聽不樂意了,“咋的?是嫌我干的不好嗎?”

我也趕緊催促,“你倆就別賣關(guān)子了,聽到了什么,快說說”

深夜,我偷聽到程序員要對session下手……

老三示意大家圍攏一些,小聲說到:“我上次聽兩個程序員在議論,不知道他們在哪里學來了一套叫JWT(JSON Web Token) 的技術(shù),硬說讓我們來管理保存session id負擔太重了,以后不保存了!還說,還說···”

“還說啥,你倒是說啊!”

“還說,Redis也不是萬能的,也有崩潰的風險,一崩潰就全完了,所以要革新技術(shù)”,老三繼續(xù)說到。

Redis一聽更著急上火了,“我工作這么久以來,從沒有撂過挑子吧,怎么能這么說我呢?再不行我也可以像你們搞個集群嘛”

“Redis老弟你先別急。唉,老三,這不保存session id,以后怎么鑒別用戶呢?你有沒有聽到他們怎么說的?”

“聽他們說,沒有session id,但是換了一個token,用它來識別用戶”

老二一聽不以為意:“換了個名字,換湯不換藥嘛!咱們還不是要保存token,才能匹配誰是誰”

老三搖了搖頭:“不是的,這可不只是改了個名字那么簡單!這個token是由三部分構(gòu)成,就像這樣:”

深夜,我偷聽到程序員要對session下手……

“你們看,第一部分是JWT的基本信息,然后把用戶的身份信息放在第二部分,接著和第一部分合在一起做一個計算,計算的時候加入了一個只有我們才知道的密鑰secretkey,計算結(jié)果作為第三部分。最后三部分拼在一起作為最終的token發(fā)送給客戶端保存著···”

還沒等老三說完,老二點出了其中的關(guān)鍵:“我知道了,后面咱們再收到這個token的時候,就可以通過同樣的算法驗證前面兩部分的結(jié)果和第三部分是不是相同,就知道這個token是不是偽造的啦!因為密鑰只有我們知道,別人沒辦法偽造出一個token的!最后確認有效之后,再取第二部分的用戶身份信息,就知道這是誰了!”

深夜,我偷聽到程序員要對session下手……

聽完他們的分析,我和Redis老兄都默默的點了點頭,“有點意思啊,這樣一來,咱們確實不用存了!不過現(xiàn)在咱們幾個工作配合的也挺好的,他們費這么大勁是為了什么???”

“我猜他們是想節(jié)約開支,把Redis老哥給裁掉!”,老二說到。

老三搖了搖頭,“依我看,八成他們是想展示技術(shù)給領(lǐng)導看,這不又快到職級晉升答辯了,他們想搞事情!唉,老大,這事你怎么看?”

“我啊,我···”

朋友們,你怎么看?session-cookie和JWT,你更傾向誰?

免責聲明:本文內(nèi)容由21ic獲得授權(quán)后發(fā)布,版權(quán)歸原作者所有,本平臺僅提供信息存儲服務(wù)。文章僅代表作者個人觀點,不代表本平臺立場,如有問題,請聯(lián)系我們,謝謝!

本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫毥谦F公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風險,如企業(yè)系統(tǒng)復雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅持高質(zhì)量發(fā)展策略,塑強核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運營商 數(shù)字經(jīng)濟

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團)股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉