原创 超詳細的《使用騰訊雲移動直播開發連麥》

前言 之前有一篇文章講了:使用騰訊開發基本的直播功能, 後來隨着公司業務發展,又做了連麥功能,說句實話,這個連麥做的人真是蛋疼,騰訊的文檔給的實在是無語😓,連麥功能嘛,大家經常看直播的都熟悉,下面就開始講講作爲一個後端,我是們大概

原创 如何高逼格的寫java代碼

記錄一些瞭解的高逼格、好用的java代碼 歡迎大家補充,共同學習 1. 函數式接口—@FunctionalInterface 好處:高逼格、代碼收攏、解藕、統一處理 適用範圍:具有共性的接口調用代碼 舉個栗子: 在我們平時的微服

原创 java單機接口限流處理方案

對單機服務做接口限流的處理方案 簡單說就是設定某個接口一定時間只接受固定次數的請求,比如/add接口1秒最多接收100次請求,多的直接拒絕,這個問題很常見,場景也好理解,直接上代碼: /** * 單機限流 */ @Slf4j

原创 紅包領取算法

最近做紅包業務,查了下網上的紅包算法資料,整理出來一份自己記錄下 領取的邏輯中心思想邏輯是: 每次領取的金額在 0.01和(剩餘平均值*2)之間 import java.util.Random; public class Re

原创 J.U.C之FutureTask

本篇記錄一下FutureTask的個人理解 FutureTask可用於異步獲取執行結果或取消執行任務的場景。通過傳入Runnable或者Callable的任務給FutureTask,直接調用其run方法或者放入線程池執行,之後可以

原创 從零開始安裝一臺java的linux服務器(jdk、nginx、mysql、redis、tomcat、maven)

記錄一下一臺剛重裝系統的linux(centos7.2)服務器,安裝各種java應用需要的環境 一.安裝jdk 首先下載jdk:https://www.oracle.com/technetwork/java/javase/down

原创 Vue使用隨筆

記錄一下Vue的簡單使用: 先貼上官網鏈接:Vuex Vuex:Vuex是vue提供的組件,用來存儲公共數據,方便數據在不同組件中傳遞和存儲,Vuex概念可以參考上面這個圖,Vuex使用方式一般是: import Vue f

原创 深入淺出Disruptor的使用和原理

1. Disruptor簡介 Disruptor git地址:https://github.com/LMAX-Exchange/disruptor Disruptor定義:線程間的高性能消息框架 Disruptor核心思想:把多

原创 zSet實現排行榜功能

一.寫在前面 最近做完直播的基礎功能後,又多了很多相關的需求,其中有一個就是直播間分享榜單的功能,顧名思義就是:分享本直播間併成功拉用戶進來的數量做一個排行。比如我分享了這個直播間,別人通過我分享的直播間鏈接點進來,那麼這個人就

原创 java多線程中的生產者消費者實現

一.wait()和notifyAll()/notify()協作 首先定義資源類: public class Resource { private String name; private int age; p

原创 一個簡單的Socket通信demo

首先創建一個普通的maven項目,加入依賴: <dependencies> <dependency> <groupId>io.netty</groupId> <artifactId>netty-

原创 Snowflake分佈式Id生成器

/** * SnowFlake的結構如下(每部分用-分開):<br> * 0 - 0000000000 0000000000 0000000000 0000000000 0 - 00000 - 00000 - 0000000000

原创 從零開始安裝一臺java的linux服務器(jdk、nginx、mysql、redis等等)

記錄一下一臺剛重裝系統的linux(centos7.2)服務器,安裝各種java應用需要的環境,首先我喜歡把所有需要安裝的軟件都上傳到同一個文件夾裏面,所以就在usr文件夾裏面建了一個目錄mySoft,這個個人操作。 一.安裝jdk

原创 關於事務的基礎知識(面試知識)

本篇記錄一下關於事務的基礎知識 一、事務的基本要素(ACID) 原子性(Atomicity)   事務開始後所有操作,要麼全部做完,要麼全部不做,不可能停滯在中間環節。事務執行過程中出錯,會回滾到事務開始前的狀態,所有的操作就像沒有

原创 Java單例---反射攻擊單例和解決方法

之前寫過幾篇單例的文章: Java單例—雙重鎖校驗詳解 Java單例—序列化破壞單例模式原理解析 Java單例—靜態內部類 在靜態內部類中引出了反射攻擊的問題,本篇就來說一下反射攻擊,廢話不多少說上代碼: import java.la