原创 IO編程(三)Netty編程入門(服務端,客戶端流程)

簡介 Netty 封裝了 JDK 的 NIO,讓你用得更爽,你不用再寫一大堆複雜的代碼了。 用官方正式的話來說就是:Netty 是一個異步事件驅動的網絡應用框架,用於快速開發可維護的高性能服務器和客戶端。 使用 JDK 自帶的NIO需要了

原创 IO編程(一)傳統IO編程

假設我們要實現一個需求 客戶端每隔兩秒向服務端發送一次信息,服務端接收打印 首先我們需要一個服務端一個客戶端 服務端SocketServer 服務端監聽8000端口.循環接收新的客戶端連接請求.同時打印客戶端發送來的消息 public

原创 IO編程(二)NIO編程概念

注意標題.此章只是讓我們對NIO有個概念,而不是讓你真正的去敲或者熟悉以下代碼 傳統BIO編程如圖1,來一個客戶端連接就需要一個新的線程. 而NIO中會把新的連接註冊到 selector 上,然後,通過檢查這個 selector,就可以

原创 ArrayList源碼閱讀

一.概述 1.ArrayList是可以動態增長和縮減的索引序列,它是基於數組實現的list類 2.該類封裝了一個動態再分配的Object[]數組,每個ArrayList的實現類都有一個capacity屬性,表示它所封裝的Object[]數

原创 死鎖詳解及死鎖的處理策略

一.什麼是死鎖 在多線程併發中兩個或多個線程互相持有對方所需要的資源,不主動釋放,在沒有外力干預的情況下,所有人都無法繼續前進,導致程序陷入無盡的阻塞,就是死鎖 比如下圖,線程A 線程B都嘗試獲取對方持有的鎖,但是又不釋放自己所持有的鎖就

原创 字節、字、bit、byte Mbps的關係

字 word 字節 byte 位 bit,來自英文bit,音譯爲“比特”,表示二進制位。 字長是指字的長度 1字=2字節(1 word = 2 byte) 1字節=8位(1 byte = 8bit)   一個字的字長爲16 一個字節的字長

原创 IDEA查看Java源碼技巧

1 查看接口的實現類:Ctrl+Alt+B 選中按快捷鍵,然後跳到實現類的地方去 2 返回上/下個光標地方:Alt+<- 和 Alt+-> 可通過修改快捷鍵(搜關鍵字left、right)找到對應並改爲 Ctrl+J。。。。 3 查看

原创 深入理解spring中事務的傳播

在平時工作中我們常常會遇到不同service相互調用各自方法的情況,爲了保證數據的一致性,我們常常採用在方法上加@transaction註解的形式開啓事務.同時針對不同的業務場景,我們需要控制事務的傳播級別, 衆所皆知事務的傳播級別有以下

原创 Docker安裝Elasticsearch和Kibana(單機開發版)

一.環境 準備一臺有docker環境的虛擬機,需要注意的是分配內存記得一定大於2G,因爲ES需要的內存就至少要1G了 二.拉取鏡像 進入docker hub查詢自己需要的es版本 docker hub elasticsearch tag

原创 Elasticsearch分片原理

ES集羣的基本概念 Cluster 代表一個集羣,集羣中有多個節點,其中有一個爲主節點,這個主節點是可以通過選舉產生的,主從節點是對於集羣內部來說的。es的一個概念就是去中心化,字面上理解就是無中心節點,這是對於集羣外部來說的,因爲從外部

原创 docker容器間互相訪問 docker bridge網絡

方式一、虛擬ip訪問 安裝docker時,docker會默認創建一個內部的橋接網絡docker0,每創建一個容器分配一個虛擬網卡,容器之間可以根據ip互相訪問。 [root@33fcf82ab4dd /]# [root@CentOS ~]

原创 日期工具

各種常見日期需求基本涵蓋 public class DateUtil { /** * Base ISO 8601 Date format yyyyMMdd i.e., 20021225 for the 25th da

原创 操作系統精髓與設計原理(一)計算機系統概述

一.基本構成 處理器:cpu 內存:存儲數據和程序,關機後內存上的內容會丟失,相對應的是磁盤存儲器,關機後內容不會丟失 輸入輸出模塊(IO):在計算機和外部環境之間移動數據,外部環境由各種外部設備組成包括硬盤,通信設備和終端 系統總線:在

原创 Elasticsearch最新版本7.6.0使用docker安裝集羣

今天使用docker安裝elasticsearch最新版本7.6.0的集羣環境.遇到了好多坑,最終完成搭建先整理安裝步驟 1.先從docker hub下pull最新的es鏡像 2.創建數據掛在目錄,配置ElasticSearch集羣配置

原创 支付渠道-支付交易-支付交易日誌表

用於編寫聚合支付中 記錄各種支付渠道信息,支付交易信息,和支付交易日誌的表 支付渠道表記錄 支付渠道,商戶號,公鑰私鑰,回調地址等信息 支付交易表記錄實際支付金額,訂單ID,用戶ID,支付狀態等 支付交易日誌記錄支付交易對應的回調報文日誌