廣東-深圳 .....?..."/>
您好,登錄后才能下訂單哦!
下面的面試題不分語(yǔ)言,適用于所有編程語(yǔ)言,更多偏向設(shè)計(jì)。
該功用于行政區(qū)域劃分,商品分類,等等 例如中國(guó)->廣東-深圳 .....
要求:
無(wú)限極分類,層次深度不限
快速檢索,不能使用遞歸
只能使用一個(gè)數(shù)據(jù)庫(kù)表實(shí)現(xiàn)
可以生成樹(shù)形目錄
一個(gè)商品有很多屬性,例如尺寸,顏色這些屬性有固定的值,而另一些屬性如重量,體積是需要填寫(xiě)具體數(shù)值的,并且還有對(duì)應(yīng)的單位。
要求:
商品分類(上一個(gè)問(wèn)題中已經(jīng)實(shí)現(xiàn))
商品屬性,有多個(gè)屬性,且數(shù)目不確定,所以需要設(shè)計(jì)成可以無(wú)限添加
商品屬性即可下拉選擇,也可以填寫(xiě)具體數(shù)值
問(wèn)題:
商品搜索怎么解決下載 ,包含商品名稱,屬性,屬性值,描述的搜索
商品的庫(kù)存怎么設(shè)計(jì)下載
分類搜索,怎樣列出所有子分類以及子分類下的所有分類(無(wú)限深度)
場(chǎng)景模擬: 用戶開(kāi)戶注冊(cè)時(shí)常常填寫(xiě)了一部分資料,就離開(kāi)了,有幾種情況
用戶放棄注冊(cè)
網(wǎng)絡(luò)連接失敗
提交出錯(cuò)
其他鏈接吸引了用戶點(diǎn)擊
等等原因......
需求:
要求記錄用戶填寫(xiě)資料,再次回來(lái)(數(shù)日/數(shù)月后)點(diǎn)擊注冊(cè)的時(shí)候,用戶不用重新填寫(xiě)所有資料,只需完成未完成的部分即可。
重要資料例如手機(jī),電郵,即時(shí)通訊號(hào)碼等等需要記錄到數(shù)據(jù)庫(kù),已被公司回訪客戶。
在用戶成功注冊(cè)后應(yīng)該刪除之前保留在數(shù)據(jù)庫(kù)中的手機(jī),電郵,即時(shí)通訊等等。
請(qǐng)問(wèn)如何實(shí)現(xiàn)?資料怎樣保存?下載
簡(jiǎn)述什么是事務(wù)處理?
在不能使用數(shù)據(jù)庫(kù)的事務(wù)處理以及鎖(表鎖/行級(jí)鎖)時(shí),怎么保持?jǐn)?shù)據(jù)一致性?怎么解決數(shù)據(jù)庫(kù)并發(fā)操作?
怎樣解決避免多個(gè)用戶讀讀取同一條數(shù)據(jù)記錄?
怎樣避免多個(gè)用戶更新同一條數(shù)據(jù)
例如有一個(gè)電商網(wǎng)站每個(gè)小時(shí)有100個(gè)用戶下單,公司需要有10個(gè)客服處理用戶的訂單。
問(wèn)題:
當(dāng)10位員工進(jìn)入admin后臺(tái),查看訂單會(huì)出現(xiàn)什么問(wèn)題?
怎樣防止一個(gè)訂單被一個(gè)以上的人看到?下載
如果兩個(gè)員工同事看到同一個(gè)個(gè)訂單,怎樣避免員工,重復(fù)審批同一張訂單?下載
如果訂單X最先被員工A點(diǎn)開(kāi),這是員工A去忙其他事情,X定點(diǎn)就會(huì)一直掛起,怎樣將訂單重新分配?
簡(jiǎn)述 MVC 原理以及實(shí)現(xiàn)
怎樣實(shí)現(xiàn) URL 路由
怎樣實(shí)現(xiàn)類,方法訪問(wèn)權(quán)限控制下載
請(qǐng)問(wèn)下面代碼下載 怎么實(shí)現(xiàn)?
用你最熟悉的語(yǔ)言實(shí)現(xiàn)。
{% highlight java %}
DB db = new DB() db.select(new field("name","age"...)).from("user").where(new And("xxx=xx", "xxx=xxx")).limit(10).offset(10).orderby("id",DESC)
{% endhighlight %}
什么是阻塞,什么是非阻塞?
什么是同步,什么是異步?
什么情況下使用線程鎖?
進(jìn)程與線程的區(qū)別?
進(jìn)程間通信有那幾種,線程通信有那幾種,以及各自的優(yōu)勢(shì)?
消息有哪些瓶頸?
什么是序列化
常用序列化方式都有哪些下載
CDN 緩存的原理?
CDN 都可能緩存那些內(nèi)容?
網(wǎng)站首頁(yè)90%的內(nèi)容是靜態(tài)的,但是用戶登錄狀態(tài),消息狀態(tài)是動(dòng)態(tài)的怎么解決?
JSON 可能緩存嗎?下載
瀏覽器緩存與CDN緩存的關(guān)系,怎樣實(shí)現(xiàn)用戶瀏覽器與CDN同時(shí)緩存?
編寫(xiě)一個(gè)求和程序
s = new Sum(); s.add(10).add(5).add(6) s.add(10).add(5).add(6)......add(3) 可以無(wú)限的寫(xiě)下去 obj = new Object() obj.a() obj.b() obj.c() ... ... obj.z() obj.a().b().c() ... z()
與上面類似
這是 一個(gè)簡(jiǎn)單的 OOP 面試題,在做多年的面試經(jīng)驗(yàn)中,發(fā)現(xiàn)很多人不知道怎樣實(shí)現(xiàn)上面的問(wèn)題
Restfull 是基于HTTP協(xié)議的RPC系統(tǒng),對(duì)于公共服務(wù)不存在安全上面的考慮,調(diào)用方法也多是ajax,所以公共系統(tǒng)是開(kāi)放的。
如果是私有服務(wù),就需要考慮安全問(wèn)題了,試題如下:
什么是 CQRS
可以在那些地方處理 CQRS
怎樣為 Restful 增加 HTTP 認(rèn)證
增加 http 認(rèn)證有哪些方式下載
用戶與密碼安全嗎?
購(gòu)買(mǎi)的證書(shū)與自己生成的證書(shū)有什么區(qū)別
SSL 怎樣配置,在哪里配置
訪問(wèn) SSL 的 Restful 需要注意什么
什么是順平分割,什么是垂直分割
分表,分庫(kù)有需要主要那些事項(xiàng)
分表,分庫(kù)后怎么解決夸庫(kù)查詢
分表,分庫(kù)后怎么創(chuàng)建索引
數(shù)據(jù)庫(kù)復(fù)制有哪幾種?下載
簡(jiǎn)述主從復(fù)制,主主復(fù)制,環(huán)形復(fù)制
當(dāng)選擇主從復(fù)制是軟件開(kāi)發(fā)上有哪些注意事項(xiàng)
主主如何應(yīng)用
背景模擬: 有一個(gè)電商平臺(tái)已經(jīng)開(kāi)發(fā)完畢,編譯打包,上線,運(yùn)營(yíng)。 由于市場(chǎng)瞬息萬(wàn)變,原有的打折系統(tǒng)設(shè)計(jì)已經(jīng)不能滿足現(xiàn)在的需求,如果不修改可會(huì)會(huì)給公司帶來(lái)經(jīng)濟(jì)隨時(shí)。 現(xiàn)在需要重新修改程序邏輯,但問(wèn)題來(lái)了。目前正在做推廣促銷活動(dòng),系統(tǒng)訪問(wèn)量大不能中斷現(xiàn)有服務(wù),哪怕30都會(huì)給公司帶來(lái)不可挽回的損失。
我的問(wèn)題:
怎樣在這個(gè)系統(tǒng)的設(shè)計(jì)之初解決后面遇到的問(wèn)題
如何設(shè)計(jì)一個(gè)彈性打折系統(tǒng)下載
在不重啟的情況下怎樣改編編譯語(yǔ)言的內(nèi)部運(yùn)行邏輯
問(wèn)題延伸: 這個(gè)問(wèn)題可以延伸到蘋(píng)果IOS,例如發(fā)布app到蘋(píng)果appstore至少需要半個(gè)月,半個(gè)月可能存在很多變數(shù),很可能應(yīng)用被審批通過(guò),程序已經(jīng)不在適合當(dāng)前的情況了。
什么是高可用
什么是雙機(jī)熱備,雙機(jī)熱備有那些缺陷
什么是雙活
請(qǐng)簡(jiǎn)述實(shí)現(xiàn)軟件高可用要考慮那些因素
請(qǐng)簡(jiǎn)述設(shè)計(jì)一個(gè)遠(yuǎn)程異地災(zāi)備系統(tǒng)
兩個(gè)機(jī)房怎樣設(shè)計(jì)災(zāi)備系統(tǒng)
三個(gè)機(jī)房怎樣設(shè)計(jì)災(zāi)備系統(tǒng)
跨境情況需要考慮那些影響因素
數(shù)據(jù)庫(kù)怎樣實(shí)現(xiàn)災(zāi)備
緩存怎樣實(shí)現(xiàn)災(zāi)備
應(yīng)用服務(wù)器怎樣實(shí)現(xiàn)災(zāi)備
Web 服務(wù)器怎樣實(shí)現(xiàn)災(zāi)備下載
計(jì)劃任務(wù)、定時(shí)周期運(yùn)行的程序怎樣災(zāi)備
消息隊(duì)列怎樣實(shí)現(xiàn)災(zāi)備
雙活的軟件怎樣實(shí)現(xiàn)同一時(shí)刻只能一個(gè)運(yùn)行,或者交替運(yùn)行
怎樣實(shí)現(xiàn)軟件自動(dòng)化部署,實(shí)現(xiàn)自動(dòng)化部署的關(guān)鍵幾點(diǎn)是什么?
怎樣處理配置文件
怎樣排除不必要或者不希望部署的文件
怎樣實(shí)現(xiàn)增量部署
怎樣實(shí)現(xiàn)差異部署
怎樣部署大文件,例如視頻等。問(wèn)題:有一個(gè)文件有500M,內(nèi)容隨時(shí)有修改,也會(huì)不定期追加,怎樣實(shí)現(xiàn)差異部署,而不是再次發(fā)布一個(gè)500M的文件。
怎樣部署編譯軟件
怎樣備份
怎樣部署windows程序下載
怎樣快速回撤,切換時(shí)間點(diǎn)或者指定的版本。
以上不允許使用GIT/SVN實(shí)現(xiàn)自動(dòng)部署。要求自動(dòng)化不是在30秒內(nèi)完成。
插件有幾部分組成
如何實(shí)現(xiàn)插件安裝,卸載,啟用,禁用?
安裝,卸載,啟用,禁用怎樣實(shí)現(xiàn)不停機(jī),不關(guān)閉服務(wù)的情況進(jìn)行?
怎樣實(shí)現(xiàn) URL 路由
怎樣實(shí)現(xiàn)控制器
怎樣實(shí)現(xiàn)視圖
怎樣實(shí)現(xiàn)模型
框架分為幾個(gè)部分?
采用什么協(xié)議與框架通信?
如果考慮到性能使用二進(jìn)制協(xié)議你怎樣實(shí)現(xiàn)?
如何解決并發(fā)沖突?
如何支持事務(wù)?
你怎樣與消息隊(duì)列集成或者通信?
背景:計(jì)劃任務(wù)即周期或定時(shí)運(yùn)行的程序,我們要解決單點(diǎn)故障問(wèn)題與負(fù)載均衡的問(wèn)題,在一個(gè)分布式系統(tǒng)中單節(jié)點(diǎn)是不允許的。
設(shè)計(jì)要求:能夠?qū)崿F(xiàn)高可用,負(fù)載均衡,橫向擴(kuò)展
怎樣處理同時(shí)運(yùn)行產(chǎn)生的沖突問(wèn)題?
怎樣排隊(duì)運(yùn)行?
任務(wù)如何持久化?
一個(gè)節(jié)點(diǎn)宕機(jī),另一個(gè)節(jié)點(diǎn)怎么接管沒(méi)有完成的任務(wù)?
如何橫向擴(kuò)展?
擴(kuò)展,收縮,維護(hù)如果能做到不停機(jī),不影響業(yè)務(wù)?
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。