maven至今還是Java編程語(yǔ)言構(gòu)建的事實(shí)標(biāo)準(zhǔn),大部分項(xiàng)目還在使用maven來(lái)進(jìn)行構(gòu)建,因此了解maven內(nèi)部運(yùn)行的原理對(duì)定位和分析問(wèn)題還是很有裨益的。本篇文章主要介紹一些...
maven至今還是Java編程語(yǔ)言構(gòu)建的事實(shí)標(biāo)準(zhǔn),大部分項(xiàng)目還在使用maven來(lái)進(jìn)行構(gòu)建,因此了解maven內(nèi)部運(yùn)行的原理對(duì)定位和分析問(wèn)題還是很有裨益的。本篇文章主要介紹一些...
前言 公司最近在接入攝像頭,但是攝像頭返回的流地址是rtsp格式的,前端無(wú)法直接播放。經(jīng)過(guò)調(diào)研后,決定采用ffmpeg進(jìn)行轉(zhuǎn)碼,推流到srs,再由前端進(jìn)行獲取。srs可以支持...
定義 分區(qū):在Mongo/ES和Solr被稱為分片(shard),在HBase中稱為區(qū)域(Region),Bigtable中是表塊(tablet),Cassandra和Ria...
復(fù)制的目的: 高可用 允許斷網(wǎng)時(shí)繼續(xù)工作 低延遲 高吞吐量 由于數(shù)據(jù)會(huì)隨著時(shí)間改變,流行的數(shù)據(jù)變更復(fù)制算法是個(gè)難題,流行的變更復(fù)制算法有下面三種: 單領(lǐng)導(dǎo) 多領(lǐng)導(dǎo) 無(wú)領(lǐng)導(dǎo) 單...
隨著應(yīng)用程序的升級(jí),系統(tǒng)需要保持向后兼容(新代碼讀舊數(shù)據(jù))和向前兼容(舊代碼讀新數(shù)據(jù)).數(shù)據(jù)的編碼支持更好的兼容性尤為重要. 編碼數(shù)據(jù) 序列化: 將內(nèi)存中的數(shù)據(jù)編碼成字節(jié)序列...
哈希索引:key -> offset 通過(guò)文件存儲(chǔ),為了避免磁盤空間耗盡,采用合并與壓縮段文件,保留最新的鍵值.局限: 文件需要放進(jìn)內(nèi)存,范圍查詢效率不高SSTable(排序...
線程的概念 線程不能獨(dú)立存在,資源由操作系統(tǒng)分配給進(jìn)程,但是CPU資源是分配給線程的.同一個(gè)進(jìn)程內(nèi)的線程: 共享: 堆(主要存放使用new操作創(chuàng)建的對(duì)象實(shí)例)和方法區(qū)(JVM...
JDK動(dòng)態(tài)代理 使用 首先定義一個(gè)接口類 再定義實(shí)現(xiàn)該接口的類,用以生成需要被代理的實(shí)例對(duì)象 使用InvocationHandler定義invoke方法,用以替代被代理對(duì)象執(zhí)...
@RequestParam 在使用Spring Boot的過(guò)程中,經(jīng)常使用的是@RequestParam,可以獲得請(qǐng)求參數(shù)值的解析。它有四個(gè)屬性: value:url中的參數(shù)...
在Leetcode上有一系列經(jīng)典的股票買賣問(wèn)題,也是典型的動(dòng)態(tài)規(guī)劃問(wèn)題.也可以利用在每一天的狀態(tài)是否買賣來(lái)解決.然而每一天的買賣關(guān)系受到了前一天操作的邏輯上的約束,看起來(lái)更像...
動(dòng)態(tài)規(guī)劃的核心就是將問(wèn)題分解成子問(wèn)題,然后推導(dǎo)出公式,根據(jù)公式利用以前計(jì)算的結(jié)果進(jìn)行計(jì)算.它需要枚舉出所有的可能,和貪心算法不一樣.但是問(wèn)題的難點(diǎn)在于,如何將問(wèn)題分解并推導(dǎo)出...
垃圾回收需要解決的三個(gè)問(wèn)題是: 哪些內(nèi)存需要回收 何時(shí)回收 如何回收 哪些內(nèi)存需要回收 對(duì)于Java內(nèi)存運(yùn)行時(shí)區(qū)域,程序計(jì)數(shù)器\虛擬機(jī)棧\本地方法棧三個(gè)部分是線程私有的,隨線...
運(yùn)行時(shí)數(shù)據(jù)區(qū)域 Java虛擬機(jī)所管理的內(nèi)存包括五個(gè)運(yùn)行時(shí)數(shù)據(jù)區(qū)域: 程序計(jì)數(shù)器 為了線程切換后能恢復(fù)到正確的執(zhí)行位置, 每條線程都需要有一個(gè)獨(dú)立的程序計(jì)數(shù)器,因而程序計(jì)數(shù)器是...
類加載過(guò)程 類對(duì)象和普通對(duì)象是不同的,類對(duì)象是在類加載的時(shí)候完成的,是jvm創(chuàng)建的并且是單例的,作為這個(gè)類和外界交互的入口, 而普通的對(duì)象一般是在調(diào)用new之后創(chuàng)建。在Jav...
題目介紹 給定字符串s,以及正則匹配模式p,判斷是否能匹配成功。其中.表示可以匹配任意一個(gè)字符,*表示可以匹配0個(gè)或者任意多個(gè)前綴字符。 Examples: Solution...
關(guān)于最大堆 什么是最大堆和最小堆?最大(?。┒咽侵冈跇渲?,存在一個(gè)結(jié)點(diǎn)而且該結(jié)點(diǎn)有兒子結(jié)點(diǎn),該結(jié)點(diǎn)的data域值都不小于(大于)其兒子結(jié)點(diǎn)的data域值,并且它是一個(gè)完全二叉...
Spring AOP 簡(jiǎn)介 如果說(shuō) IoC 是 Spring 的核心,那么面向切面編程就是 Spring 最為重要的功能之一了,在數(shù)據(jù)庫(kù)事務(wù)中切面編程被廣泛使用。 AOP 即...