原创 Java調試與定位

目錄: Java程序測試:JVM調試體系, Intellij 調試, Junit自動化 Java程序監控: 常用監控工具, 性能問題 Java典型問題:鎖問題, 線程池問題,JVM內存基礎介紹, JVM內存問題分析與定位, TLS問題,

原创 linux-shell腳本中的參數解析

 寫程序的時候經常要處理命令行參數,本文描述在Bash下的命令行處理方式。= 選項與參數: 如下一個命令行: ./test.sh -f config.conf -v --prefix=/home 我們稱-f爲選項,它需要一個參數,即co

原创 python 移動文件或文件夾操作

  1、python中對文件、文件夾操作時經常用到的os模塊和shutil模塊常用方法   1.得到當前工作目錄,即當前Python腳本工作的目錄路徑: os.getcwd() 2.返回指定目錄下的所有文件和目錄名:os.listdir()

原创 python3 多線程-線程異步

python3有threading和_thread兩種線程寫法,推薦使用threading。 開多線程就是爲了使用多線程的異步能力來同時執行多個線程。 1. threading方法: 以下代碼可以執行異步或者同步線程。 1 import

原创 python:pandas中dataframe的基本用法彙總

更加詳細的內容可以查看:https://blog.csdn.net/hhtnan/article/details/80080240 (基本函數整理) 一.  DataFrame的創建 創建一個空的dataframe  df=pd.Data

原创 python列表和字典之間的相互轉換

列表轉換成字典 注:列表不能直接使用dict轉換成字典。 方法一:使用zip()函數 a = ['a1','a2','a3','a4'] b = ['b1','b2','b3'] d = zip(a,b) print(dict(d))

原创 python:調用bash

利用os模塊 python調用Shell腳本,有三種方法: os.system(cmd)返回值是腳本的退出狀態碼 os.popen(cmd)返回值是腳本執行過程中的輸出內容 commands.getstatusoutput(cmd) 返回

原创 最終一致性的實現方案

(一)問題的起源 在電商等業務中,系統一般由多個獨立的服務組成,如何解決分佈式調用時候數據的一致性? 具體業務場景如下,比如一個業務操作,如果同時調用服務 A、B、C,需要滿足要麼同時成功;要麼同時失敗。A、B、C 可能是多個不同部門開

原创 列表遍歷刪除元素時報java.util.ConcurrentModificationException的原因及解決方案

  一、問題出現 測試代碼 @Test public void listTest(){ List<String> list =new ArrayList<>(); list.add("a"); list.add

原创 CSRF 攻擊詳解

什麼是CSRF攻擊 CSRF(Cross-Site Request Forgery)的全稱是“跨站請求僞造”,也被稱爲“One Click Attack”或者“Session Riding”,通常縮寫爲CSRF或者XSRF。 CSRF的中文

原创 【Java】開發一個Java-SDK 【Java】Maven 打包可運行jar包

前提   實際上開發一個Java-SDK的過程,實際上也就是開發一個基本java項目並打包成jar包的過程,然後可以被其它項目引入使用。 開發Java-SDK   本例介紹開發一個向某一數據接口發送請求並返回結果的SDK   1、新建一個M

原创 緩存與數據庫雙寫一致最佳解決方案分析

寫在最前面 在大型互聯網應用當中如果你的應用引入了緩存機制,那麼有一個大前提就是你的業務場景上必須得接受數據的新鮮度上有可能會有一定時間的延遲。 刪除緩存失敗是一個極小概率事件,且在不能保證所有操作100%成功的機率下,採用JOB補償的機

原创 高併發下的限流策略(2)

限流策略通常是用來在高qps下進行流量限制的,常見的方式有計數器、令牌桶、漏桶。 在這次活動中我負責的模塊是控制的對下游的流量,我們可以讓那些請求選擇丟棄、等待或者降級這些限流算法可以自行實現也可以利用現有的限流工具,比如說Guava的令牌

原创 一份熱乎的字節面試真題!(附答案)

面試題目如下: 說說 Redis 爲什麼快 Redis 有幾種數據結構,底層分別是怎麼存儲的 Redis 掛了怎麼辦?Redis 有幾種持久化方式 多線程情況下,如何保證線程安全? 用過 volatile 嗎?底層原理是

原创 Redis的I/O多路複用

幾種 I/O 模型 爲什麼 Redis 中要使用 I/O 多路複用這種技術呢? 首先,Redis 是跑在單線程中的,所有的操作都是按照順序線性執行的,但是由於讀寫操作等待用戶輸入或輸出都是阻塞的,所以 I/O 操作在一般情況下往往不能直接