原创 面試必問的集合-1.1:Set、List

ArrayList 排序 ArrayList 是一種 List 實現,它的內部用一個動態數組來存儲元素, 因此 ArrayList 能夠在添加和移除元素的時候進行動態的擴展和縮減。 java中實現對list的自定義排序主要通過兩種方式 1

原创 面試必問的http-1.3:http1.0-http1.1-http1.2區別

Http1.1 由於HTTP 1自身的侷限性,它不能很好的爲用戶提供性能良好的WEB服務。 於1999年6月正式發佈了HTTP1.1標準REC2616,它釐清了之前版本中很多有歧義的地方,而且還新增了很多重要的優化, 如持久連接、分塊編碼

原创 面試必問的http-1.2:問題整理

TCP-UDP區別: TCP,提供面向連接的服務,在傳送數據之前必須先建立連接,數據傳送完成後要釋放連接。因此TCP是一種可靠的的運輸服務,但是正因爲這樣,不可避免的增加了許多的開銷,比如確認,流量控制等。對應的應用層的協議主要有 SMT

原创 面試必問的http-1.0:OSI 和 TCP/IP協議劃分

OSI 7層協議: 至於具體ICP/IP是4層,還是5層,可能有些人的分法不一樣,這不是重點。 其實叫法可能不一樣,但內容是一樣的。                                                  

原创 面試必問的http-1.0:三次握手-四次揮手

1:http爲什麼是不安全的?     1:不能這麼問,         首先http協議本身不存在安全問題,並且協議本身也幾乎不會成爲攻擊的對象。         所謂的http不安全,         是指應用http協議的服務器和客

原创 關於【緩存穿透、緩存擊穿、緩存雪崩、熱點數據失效】解決方案

在我們的平常的項目中多多少少都會使用到緩存,因爲一些數據我們沒有必要每次查詢的時候都去查詢到數據庫。 特別是高 QPS 的系統,每次都去查詢數據庫,對於你的數據庫來說將是災難。 今天我們不牽涉多級緩存的知識,就把系統使用到的緩存方案,不管

原创 502 Bad Gateway 常見解決思路

一般在訪問某些網站或者我們在做本地測試的時候,服務器突然返回502 Bad Gateway Nginx, 這種問題相信大家也遇到不少了, 這裏我再總結下幾種處理方式,有缺少或者錯誤的希望有大神能指出。   一般的思維:502,說明服務器沒

原创 面試必問的HashMap-1.1:HashMap幾個關鍵點分析

  HashMap都不算什麼特別的,這裏整理下我的理解。 分析HashMap就不得不說下數據結構, 首先Java中有幾種數據結構:數組、鏈表、樹 數組的話:查詢效率高 鏈表新增效率高。 牛逼的是,我們的HashMap的數據接口就比較吊了,

原创 面試必問的HashMap-2.1:CurrentHashMap

ConcurrentHashMap與HashMap等的區別 1.HashMap HashMap是線程不安全的,在多線程環境下,使用Hashmap進行put操作會引起死循環,導致CPU利用率接近100%,所以在併發情況下不能使用HashMa

原创 面試必問的數據庫-4.1:sql-優化

1:關於批量插入數據(100萬)數據優化 思路: 1:變多次提交爲一次 2:使用批量操作 整理了兩種方法: 方法一: 1. public static void insert() {   2.         // 開時時間  

原创 面試必問的數據庫-3.2:索引-相關

  1:數據庫索引和選擇性的關係 在討論數據庫索引的時候,經常會提到“選擇性”(selectivity)這個概念。“選擇性”是描述列值數據分佈情況的一個重要屬性。“選擇性”和“基數”(cardinality)是兩個密不可分的概念。“基數”

原创 面試必問的數據庫-3.1:索引-底層實現原理

索引可以加快查詢的效率。 如果數據庫沒有加索引,sql中where是怎麼執行查找到目標的? 舉例: 如果想要查詢表格第二列是怎麼查找的? 如想查詢where col2=22的記錄,在沒有加索引的情況下是按順序從第一條記錄開始查找, 因此

原创 分佈式事務理解

事務是一組連續的操作,這一組操作要麼都成功執行,要麼都不能執行; 那麼什麼是數據庫事務呢? 數據庫事務一般具有以下幾個特徵: 原子性,構成事務的所有操作,要麼都執行完成,要麼全部不執行,不可能出現部分成功部分失敗的情況 一致性,在事務執行

原创 面試必問的多線程-1.4:各種鎖介紹

認識的鎖? 偏向鎖 輕量級鎖 重量級鎖 重入鎖 自旋鎖 共享鎖 獨佔鎖\排它鎖 讀寫鎖 公平鎖 非公平鎖 死鎖 活鎖 1:偏向鎖 是Java6引入的一項多線程優化,它會偏向於第一個訪問鎖的線程, 如果在運行過程中,同步鎖只有一個線程訪問,

原创 面試必問的Java-1.0:動態代理-靜態代理

Proxy代理模式是一種結構型設計模式,主要解決的問題是:在直接訪問對象時帶來的問題。 代理是一種常用的設計模式,其目的就是爲其他對象提供一個代理以控制對某個對象的訪問。代理類負責爲委託類預處理消息,過濾消息並轉發消息,以及進行消息被委託