golang的協(xié)程相信大家都不陌生,在golang中的使用也很簡(jiǎn)單诫隅,只要加上一個(gè)關(guān)鍵字go即可建钥,雖然說(shuō)大家都知道,但是真的在實(shí)際使用中又遇到這樣那樣的問(wèn)題,坑其實(shí)還是挺多的。...
golang的協(xié)程相信大家都不陌生,在golang中的使用也很簡(jiǎn)單诫隅,只要加上一個(gè)關(guān)鍵字go即可建钥,雖然說(shuō)大家都知道,但是真的在實(shí)際使用中又遇到這樣那樣的問(wèn)題,坑其實(shí)還是挺多的。...
json和struct轉(zhuǎn)換簡(jiǎn)單介紹 熟悉 Golang 的朋友對(duì)于 json 和 struct 之間的轉(zhuǎn)換一定不陌生坏瞄,為了將代碼中的結(jié)構(gòu)體與 json 數(shù)據(jù)解耦,通常我們會(huì)在...
微服務(wù)在當(dāng)今的互聯(lián)網(wǎng)架構(gòu)中的重要性我在這里就不多說(shuō)了甩卓,隨著微服務(wù)的大范圍應(yīng)用,服務(wù)發(fā)現(xiàn)這個(gè)詞也變的越來(lái)越火熱蕉斜。在平時(shí)的工作中逾柿,我發(fā)現(xiàn)現(xiàn)在很多人喜歡把一些很簡(jiǎn)單的事情說(shuō)的很復(fù)雜...
引言 "微服務(wù)"這個(gè)概念想必不用我說(shuō)大家都知道弱匪,就算沒(méi)接觸過(guò)也聽(tīng)說(shuō)過(guò)青瀑。簡(jiǎn)單來(lái)說(shuō)就是以前系統(tǒng)中的,用戶萧诫,搜索斥难,內(nèi)容,等等模塊都在一起帘饶,這樣會(huì)導(dǎo)致代碼越來(lái)越冗余哑诊,越來(lái)越難維護(hù),所...
golang中一個(gè)非常鮮明的特點(diǎn)就是引入了指針的使用镀裤,這個(gè)在py、php缴饭、java中都是不支持的暑劝,但是很多讀者都反饋說(shuō)對(duì)指針不是很了解,所以今天寫(xiě)了這篇文章颗搂,當(dāng)然我盡量用通俗...
@睿哥小怪獸 謝謝您的認(rèn)可 感興趣可以關(guān)注我的公眾號(hào) 程序員小飯 咱們一起加油
golang協(xié)程池的設(shè)計(jì)前言 現(xiàn)在很多公司都在陸續(xù)的搭建golang的語(yǔ)言棧担猛,大家有沒(méi)有想過(guò)為什么會(huì)出現(xiàn)這種情況?一是因?yàn)間o比較適合做中間件峭火,還有一個(gè)原因就是go的并發(fā)支持比較好毁习,也就是咱們平時(shí)所...
基數(shù)估算 HyperLogLog 是一種基數(shù)估算算法。所謂基數(shù)估算卖丸,就是估算在一批數(shù)據(jù)中纺且,不重復(fù)元素的個(gè)數(shù)有多少。最常見(jiàn)的場(chǎng)景就是統(tǒng)計(jì)uv稍浆。首先要說(shuō)明载碌,HyperLogLog...
前言 我們先思考一個(gè)常見(jiàn)的業(yè)務(wù)問(wèn)題:如果你負(fù)責(zé)開(kāi)發(fā)維護(hù)一個(gè)大型的網(wǎng)站衅枫,有一天老板找產(chǎn)品經(jīng)理要網(wǎng)站每個(gè)網(wǎng)頁(yè)每天的 UV 數(shù)據(jù)嫁艇,然后讓你來(lái)開(kāi)發(fā)這個(gè)統(tǒng)計(jì)模塊,你會(huì)如何實(shí)現(xiàn)弦撩? 統(tǒng)計(jì)u...
為什么要做限流 首先讓我們先看一看系統(tǒng)架構(gòu)設(shè)計(jì)中步咪,為什么要做“限流”。 旅游景點(diǎn)通常都會(huì)有最大的接待量益楼,不可能無(wú)限制的放游客進(jìn)入猾漫,比如故宮每天只賣(mài)八萬(wàn)張票点晴,超過(guò)八萬(wàn)的游客,無(wú)...
前言 一般互聯(lián)網(wǎng)的項(xiàng)目都是部署在linux服務(wù)器上的粒督,如果linux服務(wù)器出了問(wèn)題,那么咱們平時(shí)學(xué)習(xí)的高并發(fā)禽翼,穩(wěn)定性之類的是沒(méi)有任何意義的屠橄,所以對(duì)linux性能的把握就顯得非...
前言 現(xiàn)在很多公司都在陸續(xù)的搭建golang的語(yǔ)言棧,大家有沒(méi)有想過(guò)為什么會(huì)出現(xiàn)這種情況闰挡?一是因?yàn)間o比較適合做中間件锐墙,還有一個(gè)原因就是go的并發(fā)支持比較好,也就是咱們平時(shí)所...
大家都知道redis默認(rèn)是16個(gè)db解总,但是這些db底層的設(shè)計(jì)結(jié)構(gòu)是什么樣的呢贮匕?我們來(lái)簡(jiǎn)單的看一下源碼,重要的字段都有所注釋 redis中的所有kv都是存放在dict中的,di...
redis的hash的基本命令暫時(shí)先不多說(shuō)花枫,我們直接步入正文在redis的hash結(jié)構(gòu)中刻盐,存在這樣一種現(xiàn)象 我們先給user:001分別設(shè)置了name,age,sex屬性,然...
關(guān)于set的命令和常用場(chǎng)景我們暫時(shí)先不說(shuō)了劳翰,如果對(duì)命令不太熟悉的朋友可以用 help @set命令查看敦锌,我們先來(lái)看set中的一種現(xiàn)象 大家都知道set是一種無(wú)序的集合,通過(guò)S...
zset為有序的佳簸,自動(dòng)去重的集合數(shù)據(jù)類型乙墙,zset數(shù)據(jù)結(jié)構(gòu)底層實(shí)現(xiàn)為字典(dict)+跳表(skiplist)當(dāng)數(shù)據(jù)比較少時(shí),用ziplist編碼數(shù)據(jù)結(jié)構(gòu)存儲(chǔ)生均,當(dāng)滿足以下條件...
大家在訪問(wèn)網(wǎng)站的時(shí)候听想,經(jīng)常會(huì)看到圖片展示不出來(lái)的時(shí)候,如下圖 大家有沒(méi)有想過(guò)這是為什么嘛马胧?其實(shí)這是一種簡(jiǎn)單的防盜鏈的處理汉买,那么盜鏈?zhǔn)鞘裁茨兀繛槭裁葱枰滥嘏寮梗吭蹅兘裉靵?lái)一起揭開(kāi)...
前言 只要說(shuō)到聯(lián)合索引蛙粘,大家肯定都會(huì)想到“最左匹配”,相信不用解釋大家也知道是啥意思威彰,也很簡(jiǎn)單出牧,但是聯(lián)合索引中又有不少特殊情況, 比如: 這個(gè)如何建立索引歇盼?如果回答是直接建立...