風(fēng)中的 FAQ-2

51.go modules依賴管理
  • 簡介
    一般從GOPATH未妹、vendor文件夾下尋找依賴包。使用該功能后根據(jù)go.mod文件中的記錄下載依賴逢渔。
go.mod中使用//作為注釋
module:定義當(dāng)前模塊和包路徑
require:定義依賴的模塊和版本
exclude:排除特定模塊和版本的使用
replace:模塊源的替換
使用 go get xxx會自動將依賴模塊添加到go.mod文件中
網(wǎng)絡(luò)訪問不了golang.org/x等谷歌擴(kuò)展包完箩,可以使用replace
    replace (
            golang.org/x/crypto => github.com/golang/crypto latest
            golang.org/x/sys => github.com/golang/sys latest
    )
  • go mod 命令:go mod <命令> [可選參數(shù)]
    初始化目錄:go mod init
    執(zhí)行報(bào)錯(cuò)(outside GOPATH, no import comments)
    方法1)手動創(chuàng)建go.mod文件泵喘,寫入module your_module_name,執(zhí)行g(shù)o mod tidy
    方法2)main包加入import聲明秆乳,package main // import "your_module_name"懦鼠,執(zhí)行g(shù)o mod init / go mod tidy
    更新整理依賴:go mod tidy 更新無用模塊、添加缺失模塊
    將依賴復(fù)制到vendor文件夾下:go mod vendor
    驗(yàn)證模塊是否正確:go mod verify
    下載指定名稱的模塊到本地緩存中:go mod download
    命令行編輯:go mod edit
    解釋為什么需要這個(gè)模塊:go mod why
52.golang中使用json

序列化

支持:string屹堰、bool肛冶、數(shù)字類型、數(shù)組和切片双藕、結(jié)構(gòu)體淑趾、map
不支持:channel、complex忧陪、function類型扣泊,結(jié)構(gòu)體中的循環(huán)數(shù)據(jù)結(jié)構(gòu)

結(jié)構(gòu)體中自定義字段名稱

`json:"name,string"` 表示序列化時(shí)字段轉(zhuǎn)換為name,類型為string
`json:"age,omitempty"`omitempty忽略空值嘶摊,當(dāng)為空值時(shí)不序列化
`json:"-"`始終忽略
  • 使用標(biāo)準(zhǔn)庫內(nèi)建JSON包
    Marshal:序列化為JSON
    Unmarshal:JSON反序列化為結(jié)構(gòu)體
  • 高性能JSON庫推薦jsoniter
    快6倍以上延蟹;支持java、go叶堆;一行代碼遷移到j(luò)soniter阱飘;go get github.com/json-iterator/go
    var json = jointer.ConfigCompatibleWithStandardLibrary
53.刷新DNS緩存

訪問github時(shí)比較慢:參考http://www.reibang.com/p/0493dcc15d6f
刷新DNS緩存:參考http://cnzhx.net/blog/how-to-flush-dns-cache-in-linux-windows-mac/

54.ubuntu安裝jdk8

apt-get install software-properties-common
apt-get install software-properties-common python-software-properties
add-apt-repository ppa:webupd8team/java
apt-get update
apt-get install oracle-java8-installer
java -version

55.xorm Sync2 table struct to database時(shí)報(bào)錯(cuò)

結(jié)構(gòu)體中的屬性,需要大寫字母開頭

56.go json 序列化、反序列化時(shí)沥匈,如何動態(tài)修改字段

使用quicktag包蔗喂,動態(tài)修改結(jié)構(gòu)體tag
再進(jìn)行marshal、unnmarshal高帖,這樣就可以動態(tài)處理了缰儿。
https://github.com/dovejb/quicktag

57.mongodb 大量insert時(shí)報(bào)錯(cuò)

mongodb出現(xiàn)E11000 duplicate key error collection(id重復(fù)的解決辦法)
原因是同時(shí)插入時(shí),id為mongodb自動生成的散址,造成了生成了相同的id插入乖阵。
解決方法:只要是在插入的字段中有_id="",MongoDB就不會幫我們生成,那么就解決了這個(gè)問題预麸。那么怎么生成一惟一的_id呢瞪浸,我們可以使用uuid來生成。

import uuid
_id = uuid.uuid3(uuid.NAMESPACE_DNS, "標(biāo)志性的字段(例如名字等)"+datetime.datetime.now().strftime('%Y-%m-%d')
UUID.randomUUID().toString().replace("-", "").toLowerCase();

如果id為自定義的吏祸,可以try catch異常單獨(dú)處理对蒲。

58.一個(gè)請求的網(wǎng)絡(luò)流程

https://www.cnblogs.com/tymagic/p/11533517.html

59.還回地址的處理流程
image.png
60.tcpdump使用

https://www.cnblogs.com/golinux/p/11012781.html
https://blog.csdn.net/lgh1117/article/details/80213397

61.mac node更新到最新版

第一步,先查看本機(jī)node.js版本:

node -v

第二步贡翘,清除node.js的cache:

sudo npm cache clean -f

第三步齐蔽,安裝 n 工具,這個(gè)工具是專門用來管理node.js版本的床估,別懷疑這個(gè)工具的名字含滴,是他是他就是他,他的名字就是 "n"

sudo npm install -g n

第四步丐巫,安裝最新版本的node.js

sudo n stable

第五步谈况,再次查看本機(jī)的node.js版本:

node -v

第六步,更新npm到最新版:

sudo npm install npm@latest -g --force

第七步递胧,驗(yàn)證

node -v
npm -v
62.安裝yarn

npm i -g yarn

63.mysqlworkbench安裝時(shí)報(bào)錯(cuò)

如何解決Mysql workbench requires the visual C++ 2019 redistributable package
去這里下載
https://support.microsoft.com/en-us/help/2977003/the-latest-supported-visual-c-downloads
選擇提示要求的版本碑韵,安裝完后就可以安裝Mysql workbench了

64.jq使用

cat deploy.conf | jq -r '.hosts[]'

{
"name": "host1",
"ip": "xxx.xxx.xx.xxx",
"user": "root",
"passwd": "xxx"
}
{
"name": "host2",
"ip": "xxx.xxx.xx.xxx",
"user": "root",
"passwd": "xxx"
}
{
"name": "host3",
"ip": "xxx.xxx.xx.xxx",
"user": "root",
"passwd": "xxx"
}

cat deploy.conf | jq -r '.hosts[]|select(.name=="host1")|.user+"@"+.ip'

root@xxx.xxx.xx.xxx
-r:去掉引號
select()過濾選擇
[]拿到數(shù)組中的元素去掉[]

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市缎脾,隨后出現(xiàn)的幾起案子祝闻,更是在濱河造成了極大的恐慌,老刑警劉巖遗菠,帶你破解...
    沈念sama閱讀 218,284評論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件联喘,死亡現(xiàn)場離奇詭異,居然都是意外死亡辙纬,警方通過查閱死者的電腦和手機(jī)豁遭,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,115評論 3 395
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來贺拣,“玉大人蓖谢,你說我怎么就攤上這事捂蕴。” “怎么了闪幽?”我有些...
    開封第一講書人閱讀 164,614評論 0 354
  • 文/不壞的土叔 我叫張陵啥辨,是天一觀的道長。 經(jīng)常有香客問我盯腌,道長委可,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,671評論 1 293
  • 正文 為了忘掉前任腊嗡,我火速辦了婚禮,結(jié)果婚禮上拾酝,老公的妹妹穿的比我還像新娘燕少。我一直安慰自己,他們只是感情好蒿囤,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,699評論 6 392
  • 文/花漫 我一把揭開白布客们。 她就那樣靜靜地躺著,像睡著了一般材诽。 火紅的嫁衣襯著肌膚如雪底挫。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,562評論 1 305
  • 那天脸侥,我揣著相機(jī)與錄音建邓,去河邊找鬼。 笑死睁枕,一個(gè)胖子當(dāng)著我的面吹牛官边,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播外遇,決...
    沈念sama閱讀 40,309評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼注簿,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了跳仿?” 一聲冷哼從身側(cè)響起诡渴,我...
    開封第一講書人閱讀 39,223評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎菲语,沒想到半個(gè)月后妄辩,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體吟榴,經(jīng)...
    沈念sama閱讀 45,668評論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡赞辩,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,859評論 3 336
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了雕薪。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片胶哲。...
    茶點(diǎn)故事閱讀 39,981評論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡畔塔,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情澈吨,我是刑警寧澤把敢,帶...
    沈念sama閱讀 35,705評論 5 347
  • 正文 年R本政府宣布,位于F島的核電站谅辣,受9級特大地震影響修赞,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜桑阶,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,310評論 3 330
  • 文/蒙蒙 一柏副、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧蚣录,春花似錦割择、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,904評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至虐杯,卻和暖如春玛歌,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背擎椰。 一陣腳步聲響...
    開封第一講書人閱讀 33,023評論 1 270
  • 我被黑心中介騙來泰國打工支子, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人达舒。 一個(gè)月前我還...
    沈念sama閱讀 48,146評論 3 370
  • 正文 我出身青樓译荞,卻偏偏與公主長得像,于是被迫代替她去往敵國和親休弃。 傳聞我的和親對象是個(gè)殘疾皇子吞歼,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,933評論 2 355