勤學如春起之苗,不見其增,日有所長;輟學如磨刀之石,不見其損,日有所虧。我在 github 上新建了乙個倉庫 日問,每天至少乙個問題。有關全棧,graphql,devops,微服務以及軟技能,促進職業成長,歡迎交流。
以諸葛武侯的誡子書與君共勉
夫君子之行,靜以修身,儉以養德。非澹泊無以明志,非寧靜無以致遠。夫學須靜也,才須學也,非學無以廣才,非志無以成學。淫慢則不能勵精,險躁則不能治性。年與時馳,意與日去,遂成枯落,多不接世,悲守窮廬,將復何及!**搜尋引擎
開放問題,不過你至少得知道乙個發行版...
一般採用漏桶演算法:
漏桶初始為空
api 呼叫是在往漏桶裡注水
漏桶會以一定速率出水
水滿時 api 拒絕呼叫
可以使用redis
的計數器實現
計數器初始為空
api 呼叫計數器增加
給計數器設定過期時間,隔段時間清零,視為一定速率出水
計數器達到上限時,拒絕呼叫
當然,這只是大致思路,這時會有兩個問題要注意
最壞情況下的限流是額定限流速率的2倍
條件競爭問題
最簡單的bind
一行就可以實現,而在實際面試過程中也不會考察你太多的邊界條件
function.prototype.fakebind = function(obj)
測試一下
function f (arg)
// output: 3, 4
f.bind()(4)
// output: 3, 4
f.fakebind()(4)
ifconfig
是最簡單最常用,但是列印資訊太多了
$ ifconfig
netstat
與ip
也挺好用,特別是它們還可以列印路由表
$ netstat -i
$ ip link
$ ip addr
在redis
處維護乙個物件,記錄每個 group 所對應的connections
/sockets
當 client 剛連入 server 時,便加入某個特定的組,或者叫 room,比如 student01,剛開始連入 server,可能要加入 room:student:01
,class:201901
,group:10086
【q028】在linux中如何獲取登入的使用者
$ who
$ last
fingerprintjs2
一圖勝千言
使用jsonb_pretty
函式,示例如下
乙個簡單的promise
的粗糙實現,關鍵點在於
當pending
時,thenable
函式由乙個佇列維護
當狀態變為resolved(fulfilled)
時,佇列中所有thenable
函式執行
當resolved
時,thenable
函式直接執行
rejected
狀態同理
class prom
return new prom(resolve => resolve(value))
} constructor (fn) ) => res(fn(value)))})}
const reject = (e) => ) => rej(fn(e)))})}
fn(resolve, reject)
} then (fn)
if (this.status === 'pending') ) })}
} catch (fn)
if (this.status === 'pending') ) })}
}}prom.resolve(10).then(o => o * 10).then(o => o + 10).then(o => )
return new prom((resolve, reject) => reject('error')).catch(e => )
首參不一樣,直接上 api
react.cloneelement(
element,
[props],
[...children]
)react.createelement(
type,
[props],
[...children]
)
它一般可以使用第三方庫 clipboard.js 來實現,原始碼很簡單,可以讀一讀
主要有兩個要點
選中複製
選中主要利用了 selection api
選中的**如下
const selection = window.getselection();
const range = document.createrange();
range.selectnodecontents(element);
selection.removeallranges();
selection.addrange(range);
selectedtext = selection.tostring();
取消選中的**如下
window.getselection().removeallranges();
它有現成的第三方庫可以使用: select.js
複製就比較簡單了,execcommand
document.exec('copy')
Python 全棧 191 問(附答案)
作為程式設計師,你的電腦裡 書架上,一定少不了 python 的資料和課程。免費的電子書,花錢買的課,實體書籍.現在想一下,你真正從中學到多少 python 全棧 60 天精通之路 這個專欄 day1 day38 就已經完整解決下面的191個問題,day39 day61 精彩繼續.而現在訂閱它只需七...
大廠面試中常問的棧排序
很多大廠的筆試題中都會要求面試者寫一段棧排序,因為棧這個資料結構平時我們用的比較少,導致很多面試者一下子都有點懵逼,這裡就來給大家解惑一下吧 題目 乙個棧中有10個隨機大小的元素,這個是初始棧 可以讓你申請乙個空棧作為交換使用 不准使用任何其他資料結構進行儲存 最終按照從小到大的順序輸出原始棧 思路...
Java高階面試必問 Dubbo面試題彙總
1 預設使用的是什麼通訊框架,還有別的選擇嗎?2 服務呼叫是阻塞的嗎?3 一般使用什麼註冊中心?還有別的選擇嗎?4 預設使用什麼序列化框架,你知道的還有哪些?5 服務提供者能實現失效踢出是什麼原理?6 服務上線怎麼不影響舊版本?7 如何解決服務呼叫鏈過長的問題?8 說說核心的配置有哪些?9 dubb...