原创 詳細討論Java中偏向鎖、輕量級鎖及重量級鎖實現原理

最近因爲工作關係遇到了很多Java併發編程的問題,然後惡補了一下,現在就來說說Java目前的鎖實現原理 其實在JDK1.5以前的早期版本,還沒有那麼細粒度完善的鎖機制,基本上就一個synchronized打遍天下,但是從JDK1.6之後O

原创 2018 某外企大公司Java面試題

最近接到了某個知名外企公司的面試電話,說實話去的路上心裏很沒底,整個第一輪面試持續了40分鐘,問了許多技術問題,總結下來就是潛入深出,特別是對於Java底層實現和多線程實現上面特別深究,最終我也止步於第二輪面試,第二輪面試的問題實在是有點

原创 2018年JAVA最新面試題

整理一下2018年java技術要領 Top 基礎篇 Top 基本功 面向對象的特徵 final, finally, finalize 的區別 int 和 Integer 有什麼區別 重載和重寫的區別 抽象類和接口有什麼區別 說說反射的用

原创 微服務系統服務跟蹤監控-Zipkin配置

Springboot 使用2.0版本後相應的Zipkin也需要使用2.0版本的,官方建議直接在服務器使用命令運行Zipkin,Zipkin官網安裝說明 1.運行起來後訪問http://localhost:9411即可訪問到如下界面: 2

原创 Consul 註冊中心集羣搭建

簡介 之前公司一直用的是Eureka 1.X版本,但是自從SpringBoot升級到2.X版本後Eureka團隊對外宣佈不再開源且Eureka 2.X版本不在維護,這就一下子懵逼了,開始尋找Eureka的替代方案,最終選擇使用Consul

原创 SpringBoot + SolrCloud + Zookeeper 集羣搭建

搜索引擎大家用的比較多的應該是Solr和Elasticsearch,兩者之間的區別就不在此文做闡述了,一個支持實時查詢輕量級,一個數據結構更豐富更穩定,我公司使用的是Solr,因爲單點的Solr在千萬級數據進行全量建立索引時有時會產生奔潰

原创 收集了50道基礎的java面試題

一、Java基礎部分1、面向對象的特徵有哪些方面?答:面向對象的特徵主要有以下幾個方面:1)抽象:抽象是將一類對象的共同特徵總結出來構造類的過程,包括數據抽象和行爲抽象兩方面。抽象只關注對象有哪些屬性和行爲,並不關注這些行爲的細節是什麼。

原创 Linux 安裝配置Mysql-Proxy 讀寫分離

場景描述:數據庫Master主服務器:192.168.10.130數據庫Slave從服務器:192.168.10.131MySQL-Proxy調度服務器:192.168.10.132以下操作,均是在192.168.10.132即MySQL

原创 使用chroot命令限制SSH用戶的訪問製造僞牢籠

將 SSH 用戶會話限制訪問到特定的目錄內,特別是在 web 服務器上,這樣做有多個原因,但最顯而易見的是爲了系統安全。爲了鎖定 SSH 用戶在某個目錄,我們可以使用 chroot 機制。在諸如 Linux 之類的類 Unix 系統中更改

原创 Nginx 日誌記錄過濾某些IP

    有些時候我們可能會有一些特殊需求,比如不希望日誌記錄某些指定的IP或者我們需要在接受的請求Header中過濾默寫IP值,我們知道Nginx中記錄真實IP的參數是$remote_addr,記錄代理層IP的是$proxy_add_x_

原创 解決nginx訪問日誌記錄post數據

1. 問題描述nginx 在獲取post數據時候,如果是中文,則轉換成16進制顯示在日誌文件中,如下圖所示。日誌格式爲: log_format postdata '$remote_addr | $request_body | $resp_

原创 Spring + Quatz 組合提供動態定時任務

    我們都知道Quatz配合Spring可以進行定時任務的功能開發,但是大家是否知道如何提供動態定時功能呢?在不重啓項目的情況下提供接口給其他調用者調用實現動態生成定時任務    公司因爲已經開始實施微服務,所以對各個服務拆分已經劃的

原创 Java NIO以及其他線程模型原理解析

IO基本概念 Linux環境 Linux的內核將所有外部設備都可以看做一個文件來操作。那麼我們對與外部設備的操作都可以看做對文件進行操作。我們對一個文件的讀寫,都通過調用內核提供的系統調用;內核給我們返回一個file descriptor

原创 MySQL 5.7 優化InnoDB配置

InnoDB給MySQL提供了具有提交,回滾和崩潰恢復能力的事務安全(ACID兼容)存儲引擎。InnoDB鎖定在行級並且也在SELECT語句提供一個Oracle風格一致的非鎖定讀。這些特色增加了多用戶部署和性能。沒有在InnoDB中擴大鎖

原创 MySQL中刪除重複數據只保留一條

用SQL語句,刪除掉重複項只保留一條在幾千條記錄裏,存在着些相同的記錄,如何能用SQL語句,刪除掉重複的呢 1、查找表中多餘的重複記錄,重複記錄是根據單個字段(peopleId)來判斷SELECT * FROM peopl