原创 redis的持久化

一、爲什麼需要持久化 使用redis時,把許多重要的數據都存儲在內存中,如果突然斷電,豈不是很糟糕,於是就有了數據的持久化機制,這個其實就是把內存中的數據存儲到硬盤中,方便數據的持續存在,也可以減少斷電造成的損失。 二、持久化方式

原创 MySQL數據庫引擎

一、概念 數據庫存儲引擎是數據庫底層軟件組織,數據庫管理系統(DBMS)使用數據引擎進行創建、查詢、更新和刪除數據。不同的存儲引擎提供不同的存儲機制、索引技巧、鎖定水平等功能,使用不同的存儲引擎,還可以 獲得特定的功能。現在許多

原创 BIO與NIO、AIO的區別

IO的方式通常分爲幾種,同步阻塞的BIO、同步非阻塞的NIO、異步非阻塞的AIO。 一、BIO 在JDK1.4出來之前,我們建立網絡連接的時候採用BIO模式,需要先在服務端啓動一個ServerSocket,然後在客戶端啓動Soc

原创 樂觀鎖與悲觀鎖

一、樂觀鎖 總是認爲不會產生併發問題,每次去取數據的時候總認爲不會有其他線程對數據進行修改,因此不會上鎖,但是在更新時會判斷其他線程在這之前有沒有對數據進行修改,一般會使用版本號機制或CAS操作實現。 版本號機制:一般是在數據

原创 MySQL之日積月累

1、命令行登錄 方式1:有時候會提示不安全 mysql -u用戶名 -p密碼 方式2:推薦。 mysql -u用戶名 -p 再輸入密碼 2、查詢所有用戶 簡單查詢: select user,host from mysql.u

原创 MySQL表設計之索引

一、MySQL中的索引分類: MySQL目前主要有以下幾種索引類型: 1.普通索引(index) 2.唯一索引(unique) 3.主鍵索引(primary key) 4.組合索引 5.全文索引 (fullText) 二、多個單列

原创 模擬pop和push:兩個隊列模擬棧、使用兩個棧模擬隊列

一、使用兩個棧模擬隊列的pop和push操作 package com.digigd.cloud.dolphin.digigd.pub.test; import java.util.Stack; public class Queue

原创 Java抽象類和接口

一、抽象類 1、定義 public abstract class People { } 2、特點 不能被實例化 抽象類不一定含有抽象方法 含有抽象方法的類一定是抽象類 子類(非抽象類)必須重寫父類中定義的所有抽象方法(子類是抽

原创 Redis緩存穿透、緩存雪崩、緩存併發競爭

使用redis有什麼缺點 分析:大家用redis這麼久,這個問題是必須要了解的,基本上使用redis都會碰到一些問題,常見的也就幾個。 回答:主要是四個問題 (一)緩存和數據庫雙寫一致性問題 (二)緩存雪崩問題 (三)緩存擊穿問題

原创 同步、異步、阻塞、非阻塞

一、概念理解 同步與異步 同步與異步是針對應用程序與內核的交互而言的。 同步過程中,進程觸發IO操作並等待或者輪詢的去查看IO操作是否完成。 異步過程中,進程觸發IO操作以後,直接返回,做自己的事情,IO交給內核來處理,完成後

原创 linux查詢CPU等命令

uname -a # 查看內核/操作系統/CPU信息的linux系統信息 head -n l /etc/issue # 查看操作系統版本 cat /proc/cpuinfo # 查看CPU信息 hostname # 查

原创 redis的淘汰策略

1、問題引入—— MySQL裏有2000w數據,Redis中只存20w的數據,如何保證Redis中的數據都是熱點數據(redis有哪些數據淘汰策略???) 說明:redis內存數據集大小上升到一定大小的時候,就會實行數據淘汰策略

原创 UML——員工請假狀態轉換圖

一、背景: 有一位小夥近來去面試,共有4道題目,都是設計題。其中,一道題目是:請描述一下員工請假的業務流程和畫出狀態轉換圖,並做必要的文字描述,總字數不超過400字。突然腦子空白,哈,大三UML課程不好好學,說實話,現在還真後悔的

原创 String的一些比較

一、幾個例子 1、Demo1 (1)實例代碼: public class Main { public static void main(String[] args) { String a = "123";

原创 多線程實戰例子

一、實戰鏈接 https://blog.csdn.net/qq_27093465/article/details/76066882