中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當(dāng)前位置: 首頁(yè) > news >正文

重慶市建筑工程造價(jià)信息網(wǎng)優(yōu)化師是干嘛的

重慶市建筑工程造價(jià)信息網(wǎng),優(yōu)化師是干嘛的,廣東免費(fèi)建站公司,企業(yè)logo商標(biāo)1. 談?wù)剶?shù)據(jù)庫(kù)的樂(lè)觀鎖和悲觀鎖 樂(lè)觀鎖和悲觀鎖是數(shù)據(jù)庫(kù)并發(fā)控制中常用的兩種策略,用于處理多個(gè)事務(wù)同時(shí)訪問(wèn)和修改同一個(gè)數(shù)據(jù)時(shí)的并發(fā)沖突問(wèn)題。 數(shù)據(jù)庫(kù)的樂(lè)觀鎖是指在讀取數(shù)據(jù)時(shí),不對(duì)數(shù)據(jù)進(jìn)行加鎖,而是在更新數(shù)據(jù)時(shí)檢查數(shù)據(jù)版本是否發(fā)生變…

1. 談?wù)剶?shù)據(jù)庫(kù)的樂(lè)觀鎖和悲觀鎖

樂(lè)觀鎖和悲觀鎖是數(shù)據(jù)庫(kù)并發(fā)控制中常用的兩種策略,用于處理多個(gè)事務(wù)同時(shí)訪問(wèn)和修改同一個(gè)數(shù)據(jù)時(shí)的并發(fā)沖突問(wèn)題。

  • 數(shù)據(jù)庫(kù)的樂(lè)觀鎖是指在讀取數(shù)據(jù)時(shí),不對(duì)數(shù)據(jù)進(jìn)行加鎖,而是在更新數(shù)據(jù)時(shí)檢查數(shù)據(jù)版本是否發(fā)生變化,如果沒(méi)有變化則更新成功,否則更新失敗。樂(lè)觀鎖的優(yōu)點(diǎn)是并發(fā)性能好,因?yàn)槎鄠€(gè)事物可以同時(shí)訪問(wèn)同一行數(shù)據(jù),不會(huì)阻塞其他事物完成操作。但樂(lè)觀鎖也有缺點(diǎn),即需要維護(hù)版本號(hào)或時(shí)間戳等字段,增加了系統(tǒng)復(fù)雜度。
  • 悲觀鎖是指在讀取數(shù)據(jù)時(shí),認(rèn)為數(shù)據(jù)會(huì)被其他事物修改,因此對(duì)數(shù)據(jù)進(jìn)行加鎖,直到當(dāng)前事物完成操作并釋放鎖。悲觀鎖的缺點(diǎn)是會(huì)導(dǎo)致并發(fā)性能降低,因此多個(gè)事物不能訪問(wèn)同一行數(shù)據(jù),會(huì)阻塞等待其他事務(wù)完成操作。

選擇何種鎖機(jī)制,需要根據(jù)具體的業(yè)務(wù)情況和性能需求來(lái)決定。一般來(lái)說(shuō),對(duì)于讀多寫少的場(chǎng)景,可以采用樂(lè)觀鎖;對(duì)于寫多讀少的場(chǎng)景,可以采用悲觀鎖。

2. spring中有哪些事務(wù)管理,你在項(xiàng)目中常用的事務(wù)管理

  1. 編程式事務(wù)管理
    編程式事物管理是通過(guò)編寫代碼來(lái)顯示地管理事務(wù)的開(kāi)啟、提交、回滾和關(guān)閉。在代碼中使用事務(wù)管理器(TransactionManager)或者直接使用(PlatformTransactionManager)接口進(jìn)行事務(wù)管理,手動(dòng)開(kāi)啟、提交或回滾事物,并定義事務(wù)的邊界。這種方式靈活性較高,但需要手動(dòng)處理事務(wù)的開(kāi)啟、提交和回滾,代碼相對(duì)復(fù)雜。
  2. 聲明式事務(wù)管理(XML配置)
    通過(guò)在XML配置文件中聲明事務(wù)切面(TransactionAspect),使用tx:advice來(lái)定義事務(wù)的傳播行為、隔離級(jí)別、回滾規(guī)則等。實(shí)現(xiàn)方式示例:
<tx:advice id="txAdvice" transaction-manager="transactionManager"><tx:attributes><tx:method name="save*" propagation="REQUIRED" rollback-for="Exception" /><tx:method name="*" propagation="REQUIRED" /></tx:attributes>
</tx:advice><aop:config><aop:advisor advice-ref="txAdvice" pointcut="execution(* com.example.*.*(..))" />
</aop:config>
  1. 注解驅(qū)動(dòng)的事務(wù)管理:
    @Transactional注解可以用來(lái)標(biāo)注在方法(必須是public方法上才能生效)或類級(jí)別上,用來(lái)聲明一個(gè)或多個(gè)方法需要進(jìn)行事務(wù)管理。該注解具有一系列的屬性,用于控制事務(wù)的傳播行為、隔離級(jí)別、超時(shí)時(shí)間和只讀標(biāo)識(shí)等。它是基于AOP的實(shí)現(xiàn)

實(shí)現(xiàn)方式示例:

@Configuration
@EnableTransactionManagement
public class AppConfig {// 配置數(shù)據(jù)源、實(shí)體管理器等相關(guān)Bean
}@Service
public class MyService {@Autowiredprivate MyRepository myRepository;@Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class)public void saveData(Data data) {// 執(zhí)行數(shù)據(jù)庫(kù)操作或其他業(yè)務(wù)邏輯myRepository.save(data);}
}

3. Set集合是怎么實(shí)現(xiàn)去除重復(fù)元素的

Set 集合底層是通過(guò) Map 集合的 key 儲(chǔ)存元素(value是一個(gè)固定的值),這就保證了Set 不重復(fù)。比如 Set 中的 HashSet。

  1. HashSet:HashSet基于哈希表實(shí)現(xiàn),它使用哈希函數(shù)對(duì)元素進(jìn)行快速查找。當(dāng)向HashSet中添加元素時(shí),HashSet會(huì)計(jì)算元素的哈希碼,并將元素存儲(chǔ)在相應(yīng)的哈希桶中。如果哈希桶中已經(jīng)存在相同的元素(根據(jù)equals()方法判斷),則新元素不會(huì)被添加進(jìn)去,從而實(shí)現(xiàn)了去重復(fù)的效果。

  2. TreeSet:TreeSet基于紅黑樹(shù)(一種自平衡二叉查找樹(shù))實(shí)現(xiàn),它可以對(duì)元素進(jìn)行排序。當(dāng)向TreeSet中添加元素時(shí),每個(gè)元素會(huì)被插入到正確的位置以保持元素的順序。在插入元素的過(guò)程中,TreeSet會(huì)使用compareTo()或compare()方法來(lái)比較元素的大小,并根據(jù)比較結(jié)果決定元素的插入位置。如果插入的元素已經(jīng)存在于TreeSet中,則新元素不會(huì)被添加進(jìn)去。

  3. LinkedHashSet:LinkedHashSet是HashSet的一個(gè)子類,它通過(guò)哈希表和鏈表的結(jié)合來(lái)實(shí)現(xiàn)。它具有HashSet的去重復(fù)功能,并且可以保持元素的插入順序。當(dāng)向LinkedHashSet中添加元素時(shí),元素會(huì)先根據(jù)哈希碼存儲(chǔ)在相應(yīng)的哈希桶中,然后在哈希桶內(nèi)使用鏈表連接起來(lái)。這樣既能提供快速的查找性能,又能保持元素的插入順序。

無(wú)論使用哪種Set實(shí)現(xiàn)類,它們都依賴于元素的hashCode()方法和equals()方法來(lái)進(jìn)行元素的比較和去重。因此,在使用Set集合時(shí),需要確保元素正確實(shí)現(xiàn)了hashCode()和equals()方法,以便正確地判斷元素是否重復(fù)。

需要注意的是,Set集合中的元素必須是唯一的,因此在自定義對(duì)象作為元素時(shí),需要正確實(shí)現(xiàn)hashCode()和equals()方法,以避免出現(xiàn)意外的重復(fù)元素。

4. 如何給5個(gè)Dog對(duì)象排序。

要給5個(gè)Dog對(duì)象排序,需要指定排序的條件和排序規(guī)則。下面介紹兩種常用的排序方法:

  1. 實(shí)現(xiàn)Comparable接口,重寫compareTo() 方法
    • Comparable接口是Java中定義的一個(gè)用于排序的接口,如果一個(gè)類實(shí)現(xiàn)了Comparable接口,就可以使用Collections.sort()方法對(duì)該類進(jìn)行排序。
    • 要實(shí)現(xiàn)Comparable接口,需要在類中定義一個(gè)compareTo()方法,用來(lái)指定對(duì)象的排序規(guī)則。例如,假設(shè)Dog類有一個(gè)屬性age,我們可以按照age從小到大進(jìn)行排序,可以這樣實(shí)現(xiàn)compareTo()方法:
public class Dog implements Comparable<Dog> {private int age;// getter和setter方法省略public int compareTo(Dog otherDog) {return this.age - otherDog.getAge();}
}
  1. 實(shí)現(xiàn)Comparator接口,實(shí)現(xiàn) compare() 方法
    • 如果無(wú)法修改Dog類,或者希望根據(jù)不同的條件進(jìn)行排序,可以實(shí)現(xiàn)Comparator接口,它允許我們定義多個(gè)排序規(guī)則。
    • 要實(shí)現(xiàn)Comparator接口,需要在另一個(gè)類中定義一個(gè)compare()方法,用來(lái)指定對(duì)象的排序規(guī)則。例如,假設(shè)我們想按照名字進(jìn)行排序,可以這樣實(shí)現(xiàn)compare()方法:
public class DogNameComparator implements Comparator<Dog> {public int compare(Dog dog1, Dog dog2) {return dog1.getName().compareTo(dog2.getName());}
}

然后,在使用排序時(shí),可以選擇使用compareTo()方法或者compare()方法進(jìn)行比較,例如:

List<Dog> dogs = new ArrayList<>();
dogs.add(new Dog("Charlie", 5));
dogs.add(new Dog("Buddy", 3));
dogs.add(new Dog("Max", 7));
dogs.add(new Dog("Rocky", 2));
dogs.add(new Dog("Jack", 4));// 使用Comparable接口排序
Collections.sort(dogs);// 使用Comparator接口排序
Collections.sort(dogs, new DogNameComparator());

以上代碼演示了如何對(duì)5個(gè)Dog對(duì)象按照age或者name屬性進(jìn)行排序。

5. JVM的調(diào)優(yōu)策略

在進(jìn)行JVM調(diào)優(yōu)時(shí),可以采取以下策略來(lái)改善應(yīng)用程序的性能和吞吐量:

  1. 調(diào)整堆內(nèi)存大小:

    • 堆內(nèi)存是JVM中用于存儲(chǔ)對(duì)象實(shí)例的區(qū)域,通過(guò)調(diào)整堆內(nèi)存大小可以提高應(yīng)用程序的性能。
    • 如果應(yīng)用程序頻繁觸發(fā)垃圾回收或者出現(xiàn)內(nèi)存溢出問(wèn)題,可以增加堆內(nèi)存大小??梢酝ㄟ^(guò)設(shè)置-Xmx參數(shù)增加堆內(nèi)存的最大值,例如-Xmx4g表示將堆內(nèi)存的最大值設(shè)置為4GB。
  2. 調(diào)整垃圾回收器:

    • 垃圾回收器是負(fù)責(zé)回收無(wú)用對(duì)象的組件,在不同的場(chǎng)景下選擇合適的垃圾回收器可以提高應(yīng)用程序的性能。
    • 可以使用不同類型的垃圾回收器,如Serial、Parallel、CMS、G1等,根據(jù)應(yīng)用程序的特點(diǎn)和需求來(lái)選擇適合的垃圾回收器。
    • 可以通過(guò)設(shè)置-XX:+UseSerialGC-XX:+UseParallelGC等參數(shù)選擇使用特定的垃圾回收器。
  3. 調(diào)整垃圾回收策略:

    • 垃圾回收策略包括新生代和老年代的分配比例、垃圾回收的頻率等,在不同的場(chǎng)景下可以調(diào)整這些策略以提高性能。
    • 可以通過(guò)設(shè)置-XX:NewRatio參數(shù)調(diào)整新生代和老年代的大小比例,默認(rèn)為2,表示新生代大小為老年代的1/3。
    • 可以通過(guò)設(shè)置-XX:SurvivorRatio參數(shù)調(diào)整Eden區(qū)和Survivor區(qū)的大小比例,默認(rèn)為8,表示Eden區(qū)大小為Survivor區(qū)的8倍。
  4. 使用并行處理:

    • JVM提供了一些并行處理的選項(xiàng),可以在多核系統(tǒng)上充分利用硬件資源來(lái)提高應(yīng)用程序的性能。
    • 可以通過(guò)設(shè)置-XX:+UseParallelOldGC參數(shù)啟用并行老年代垃圾回收器,以加速垃圾回收過(guò)程。
    • 可以通過(guò)設(shè)置-XX:+UseConcMarkSweepGC參數(shù)啟用并發(fā)標(biāo)記-清除垃圾回收器,以減少垃圾回收對(duì)應(yīng)用程序的停頓時(shí)間。
  5. 調(diào)整線程數(shù)和線程棧大小:

    • 線程數(shù)和線程棧大小的設(shè)置也會(huì)影響應(yīng)用程序的性能和穩(wěn)定性。
    • 可以通過(guò)設(shè)置-Xss參數(shù)調(diào)整線程棧的大小,適當(dāng)增加線程棧的大小可以防止棧溢出錯(cuò)誤。
    • 可以通過(guò)設(shè)置-XX:ParallelGCThreads參數(shù)調(diào)整垃圾回收線程的數(shù)量,以充分利用多核系統(tǒng)的處理能力。

這些是一些常見(jiàn)的JVM調(diào)優(yōu)策略,具體的調(diào)優(yōu)方法和參數(shù)設(shè)置需要根據(jù)應(yīng)用程序的特點(diǎn)和需求來(lái)確定。在進(jìn)行調(diào)優(yōu)時(shí),建議進(jìn)行性能測(cè)試和監(jiān)控,同時(shí)注意觀察內(nèi)存使用情況、垃圾回收情況以及應(yīng)用程序的響應(yīng)時(shí)間等指標(biāo),以便及時(shí)調(diào)整和優(yōu)化。

http://www.risenshineclean.com/news/5595.html

相關(guān)文章:

  • 紹興以往網(wǎng)站招工做宣傳推廣的形式有哪些
  • 外貿(mào)做獨(dú)立網(wǎng)站怎么樣蘇州seo網(wǎng)站優(yōu)化軟件
  • 制作視頻的軟件手機(jī)seo平臺(tái)是什么意思
  • 站長(zhǎng)網(wǎng)站統(tǒng)計(jì)市場(chǎng)營(yíng)銷實(shí)際案例
  • wordpress 注冊(cè)鏈接搜索引擎優(yōu)化的主要手段
  • 動(dòng)態(tài)網(wǎng)站開(kāi)發(fā)語(yǔ)言企業(yè)網(wǎng)站設(shè)計(jì)規(guī)范
  • 網(wǎng)站推廣規(guī)劃百度問(wèn)答入口
  • 網(wǎng)站流量怎么做的南京網(wǎng)站設(shè)計(jì)
  • 開(kāi)發(fā)利用水資源安徽seo優(yōu)化
  • 網(wǎng)站分為四個(gè)步驟開(kāi)發(fā)建設(shè)百度推廣費(fèi)用
  • 鄭州網(wǎng)站建設(shè)哪家公司便宜網(wǎng)絡(luò)營(yíng)銷運(yùn)營(yíng)推廣
  • 做趣味圖形的網(wǎng)站seo引擎搜索
  • 網(wǎng)站改版提示無(wú)需改版怎么推廣app讓人去下載
  • php怎么做網(wǎng)頁(yè)免費(fèi)seo工具
  • 手機(jī)端網(wǎng)站怎么做的今日重大國(guó)際新聞軍事
  • 如何做不同域名跳轉(zhuǎn)同一個(gè)網(wǎng)站軟文推廣例子
  • 中國(guó)知名設(shè)計(jì)網(wǎng)站國(guó)家職業(yè)技能培訓(xùn)平臺(tái)
  • 看守所加強(qiáng)自身網(wǎng)站建設(shè)工作服務(wù)推廣軟文
  • 網(wǎng)站建設(shè)全部流程包括備案免費(fèi)建站免費(fèi)網(wǎng)站
  • 做網(wǎng)站優(yōu)化詞怎么選擇電商網(wǎng)站平臺(tái)有哪些
  • php網(wǎng)站維護(hù)刷關(guān)鍵詞排名
  • 建一個(gè)購(gòu)物網(wǎng)站多少錢吳江seo網(wǎng)站優(yōu)化軟件
  • 百度做的網(wǎng)站能優(yōu)化嗎網(wǎng)站的seo 如何優(yōu)化
  • wordpress 做的網(wǎng)站全球中文網(wǎng)站排名
  • seo網(wǎng)站建設(shè)廈門2022千鋒教育培訓(xùn)收費(fèi)一覽表
  • 網(wǎng)站制作多少錢?個(gè)人網(wǎng)站制作教程
  • 類似情侶空間的網(wǎng)站開(kāi)發(fā)制作網(wǎng)站平臺(tái)
  • 高端女裝有哪些品牌搜索引擎排名優(yōu)化seo
  • 銅川做網(wǎng)站電話顏色廣告
  • 燕郊網(wǎng)站建設(shè)公司企業(yè)網(wǎng)站推廣方案設(shè)計(jì)畢業(yè)設(shè)計(jì)