-
“逃離”單體,GitHub的微服務(wù)架構(gòu)實踐
1、旅程開啟 GitHub 創(chuàng)建于 2008 年,其宗旨是為開發(fā)人員托管和分享代碼提供便利。GitHub 的創(chuàng)建者也是開源貢獻(xiàn)者,他們在 Ruby 社區(qū)非常有影響力。正因為如此,GitHub 的架構(gòu)深深地扎根于 Ruby on Rails。在公司的整個發(fā)展歷程中,我們雇傭了世界上最好的 Ruby 開發(fā)人員,幫助我們擴(kuò)展和優(yōu)化代碼庫。如今,我們的平臺上已經(jīng)有超過 5000 萬名開發(fā)人員,每年有超過 8000 萬個 pull 請求合并,全球各大洲有超過 1 億個代碼存儲庫。如你所見,這個單體架構(gòu)已經(jīng)…
-
2023 年值得關(guān)注的 5 個 CNCF 新項目
云原生計算基金會(CNCF)成立于 2015 年,旨在傳播和推廣云原生基金會的開放標(biāo)準(zhǔn)和項目。CNCF 在市場上享有全球認(rèn)可,并在定義和引領(lǐng)云計算的未來方面發(fā)揮著至關(guān)重要的作用。 目前,CNCF 下有 141 個上市項目,分為四個層次。 Sandbox 沙盒:尚未在技術(shù)前沿的生產(chǎn)中廣泛測試的 Experminatl 項目 Incubating 孵化:由少數(shù)用戶成功用于生產(chǎn)的項目,擁有健康的貢獻(xiàn)者池 Graduated 已畢業(yè):項目被認(rèn)為是穩(wěn)定的、被廣泛采用的、生產(chǎn)就緒的,吸引了成千上萬的貢獻(xiàn)者 …
-
10大漏洞之邏輯漏洞
一、邏輯漏洞概念 在十大漏洞中,邏輯漏洞被稱為“不安全的對象引用,和功能訪問控制缺失”,在漏洞中占用比例比較高,那么到底什么是邏漏洞呢? 概念:邏輯漏洞是指由于程序邏輯輸入管控不嚴(yán)或者邏輯太復(fù)雜,導(dǎo)致程序不能夠正常處理或處理錯誤。 邏輯漏洞根據(jù)功能需求的不同產(chǎn)生的漏洞方式也不同,一般出現(xiàn)在網(wǎng)站程序的登陸注冊、密碼找回、驗證方式、交易支付金額等地方。 二、邏輯漏洞情景 1、登錄驗證碼爆破 有些系統(tǒng),手機獲取驗證碼的時候,沒有對驗證碼的驗證次數(shù)進(jìn)行限制,或者是沒有對驗證碼的有限時間進(jìn)行限制,就會造成…
-
深入理解Linux I/O系統(tǒng)
傳統(tǒng)的 System Call I/O 在 Linux 系統(tǒng)中,傳統(tǒng)的訪問方式是通過 write() 和 read() 兩個系統(tǒng)調(diào)用實現(xiàn)的,通過 read() 函數(shù)讀取文件到到緩存區(qū)中,然后通過 write() 方法把緩存中的數(shù)據(jù)輸出到網(wǎng)絡(luò)端口。 傳統(tǒng) I/O 操作的數(shù)據(jù)讀寫流程,整個過程涉及 2 次 CPU 拷貝、2 次 DMA 拷貝,總共 4 次拷貝,以及 4 次上下文切換。 CPU 拷貝: 由 CPU 直接處理數(shù)據(jù)的傳送,數(shù)據(jù)拷貝時會一直占用 CPU 的資源。 DMA 拷貝: 由 CPU …
-
Redis 只會用緩存?16種妙用讓同事直呼牛X
1、緩存 String類型 例如:熱點數(shù)據(jù)緩存(例如報表、明星出軌),對象緩存、全頁緩存、可以提升熱點數(shù)據(jù)的訪問數(shù)據(jù)。 2、數(shù)據(jù)共享分布式 String 類型,因為 Redis 是分布式的獨立服務(wù),可以在多個應(yīng)用之間共享 例如:分布式Session <dependency>?? <groupId>org.springframework.session</groupId>?? <artifactId>spring-session-data-redis…
-
安服工程師技能手冊詳細(xì)總結(jié)
目錄 (一)基礎(chǔ)網(wǎng)絡(luò)必備技能 (二)常見工具的使用 (三)滲透測試技能 (四)漏掃技能(報告,修復(fù),獨立支撐能力) (五)應(yīng)急響應(yīng) (六)安全加固 (七)對于安全產(chǎn)品的理解 (八)CTF、靶機學(xué)習(xí),漏洞挖掘等 0x01 技能知識點詳解 (一)基礎(chǔ)網(wǎng)絡(luò)必備技能 1、ip、子網(wǎng)掩碼計算、組局域網(wǎng)、一個網(wǎng)卡設(shè)置多個IP 2、SNAT與DNAT SNAT:修改請求報文的源地址,用于局域網(wǎng)訪問互聯(lián)網(wǎng) DNAT:修改請求報文的目標(biāo)地址,用于互聯(lián)網(wǎng)訪問局域網(wǎng) #DNAT iptables -t nat -A …
-
40個 Nginx 常問面試題
“Nginx 是一款輕量級的 Web 服務(wù)器、反向代理服務(wù)器,由于它的內(nèi)存占用少,啟動極快,高并發(fā)能力強,在互聯(lián)網(wǎng)項目中廣泛應(yīng)用。 什么是 Nginx? “Nginx 是一個 輕量級 / 高性能的反向代理 Web 服務(wù)器,用于 HTTP、HTTPS、SMTP、POP3 和 IMAP 協(xié)議。他實現(xiàn)非常高效的反向代理、負(fù)載平衡,他可以處理 2-3 萬并發(fā)連接數(shù),官方監(jiān)測能支持 5 萬并發(fā),現(xiàn)在中國使用 nginx 網(wǎng)站用戶有很多,例如:新浪、網(wǎng)易、 騰訊等。 Nginx 有哪些優(yōu)點? 跨平臺、配置簡…
-
MySQL 常用腳本
常用功能腳本 1.導(dǎo)出整個數(shù)據(jù)庫 ? 1 mysqldump -u 用戶名 -p –default-character-set=latin1 數(shù)據(jù)庫名 > 導(dǎo)出的文件名(數(shù)據(jù)庫默認(rèn)編碼是latin1) 2 3 mysqldump -u wcnc -p smgp_apps_wcnc > wcnc.sql?? 2.導(dǎo)出一個表 1 mysqldump -u 用戶名 -p 數(shù)據(jù)庫名 表名> 導(dǎo)出的文件名 2 3 mysqldump -u wcnc -p smgp_apps…
-
Prometheus Metric 的實踐總結(jié),搞定監(jiān)控需注意~
使用 Promethues 實現(xiàn)應(yīng)用監(jiān)控的一些實踐 在這篇文章中我們介紹了如何利用 Prometheus 監(jiān)控應(yīng)用。在后續(xù)的工作中隨著監(jiān)控的深入,我們結(jié)合自己的經(jīng)驗和官方文檔總結(jié)了一些 Metrics 的實踐。希望這些實踐能給大家提供參考。 確定監(jiān)控對象 在具體設(shè)計 Metrics 之前,首先需要明確需要測量的對象。需要測量的對象應(yīng)該依據(jù)具體的問題背景、需求和需監(jiān)控的系統(tǒng)本身來確定。 從需求出發(fā) Google 針對大量分布式監(jiān)控的經(jīng)驗總結(jié)出四個監(jiān)控的黃金指標(biāo),這四個指標(biāo)對于一般性的監(jiān)控測量對象都…
-
45 個 Git 經(jīng)典操作場景,專治不會合代碼
git對于大家應(yīng)該都不太陌生,熟練使用git已經(jīng)成為程序員的一項基本技能,盡管在工作中有諸如?Sourcetree這樣牛X的客戶端工具,使得合并代碼變的很方便。但找工作面試和一些需彰顯個人實力的場景,仍然需要我們掌握足夠多的git命令。 下邊我們整理了45個日常用git合代碼的經(jīng)典操作場景,基本覆蓋了工作中的需求。 我剛才提交了什么? 如果你用?git commit -a?提交了一次變化(changes),而你又不確定到底這次提交了哪些內(nèi)容。你就可以用下面的命令顯示當(dāng)前HEAD上的最近一次的提交…