深圳幻海软件技术有限公司 欢迎您!

  • MySQL InnoDB引擎——三层B+树可以存储多少数据量

    先说结论:3层B+树大概可以存:主键为bigint:约2000w主键为int:约4000w*备注:在《阿里开发手册》中建议,单表行数超过500万行或者单表容量超过2GB,才推荐进行分库分表,如果预计三年后数据量根本达不到这个级别,就不必要在创建表时就分库分表。 计算在Innodb存储引擎里

  • Android开发板串口通讯-深入浅出的分析和使用详解

    引言最近时间做的android开发板上控制电机,都是通过串口进行对接和通讯。对串口接触下来,发现真的可以做很多有意思的东西,很多硬件设备都可以通过串口进行通讯,比如:打印机、ATM吐卡机、IC/ID卡读卡等,以及物联网相关的设备;一、串口简介串行接口简称串口,也称串行通信接口或串行通讯接口(通常指C

  • Java生成微信小程序二维码,5种实现方式,一个比一个简单

    文章目录前言先看官网一、JDK自带的URLConnection方式二、Apache的HttpClient方式三、okhttp3方式四、Unirest方式五、RestTemplate方式其它细节getAccessToken构建参数mapbyte[]数组源码下载前言先介绍一下项目场景,主要是通过微信小程

  • 一个更简单的字节码增强框架,谁看了案例都会使用!

    一、前言相对于小傅哥之前编写的字节码编程; ASM、Javassist 系列,ByteBuddy 玩法上更加高级,你可以完全不需要了解一个类和方法块是如何通过 指令码 LDC、LOAD、STORE、IRETURN... 生成出来的。就像它的

  • 似乎你总也记不住,byte取值范围是 -127~128 还是 -128~127

    一、前言介绍无论在面试过程中还是平时的技术交流中,似乎有很多小伙伴始终记不住java中byte类型的取值范围是多少。究其原因大部分程序员对这个取值范围是不在意的,因为知道与不知道都不影响你完成工作。另外这种知识点压根不是让你死记硬背的,当然如果你是从其他文科专业转过来学编程开发的,还情有可原。但对一

  • 聊一聊 SQLSERVER 的行不能跨页

    ​一:背景1.讲故事相信有很多朋友在学习SQLSERVER的时候都听说过这句话,但大多都是记忆为主,最近在研究SQLSERVER,所以我们从 底层存储 的角度来深入理解下。二:理解数据页1.数据页的组织在前面的文章中我也说过,一个 数据页 是8k大小,那这8k

  • 为什么说Go字符串不能修改

    在接触Go这么语言,可能你经常会听到这样一句话。对于字符串不能修改,可能你很纳闷,日常开发中我们对字符串进行修改也是很正常的,为什么又说Go中的字符串不能进行修改呢?本文就来通过实际案例给大家演示,为什么Go中的字符串不能进行修改。在演示这个问题之前,我们先对字符串类型的基础知识做个大致的演示,这样

  • Go 真实项目的性能案例研究

    大家好,我是程序员幽鬼。DoltDB[1] 是世界上第一个可以像git存储库一样分支和合并、推送和拉取、分叉和克隆的SQL数据库。我们从头开始构建Dolt的存储引擎,以加快这些操作。编写行存储引擎和SQL执行引擎并不容易。大多数人甚至不尝试它是有原因的,但在DoltHub,我们的构建方式不

  • Java 中经常被提到的 SPI 到底是什么?

    Java​ 程序员在日常工作中经常会听到 SPI​,而且很多框架都使用了 SPI​ 的技术,那么问题来了,到底什么是 SPI 呢?今天阿粉就带大家好好了解一下SPI。SPI概念SPI​ 全称是 ServiceProvid

  • Go 语言怎么使用对称加密?

    ​1.介绍在项目开发中,我们经常会遇到需要使用对称密钥加密的场景,比如客户端调用接口时,参数包含手机号、身份证号或银行卡号等。对称密钥加密是一种加密方式,其中只有一个密钥用于加密和解密数据。通过对称加密进行通信的实体必须共享该密钥,以便可以在解密过程中使用它。这种加密方法与非对称加密不同,非对称加密

  • 音乐研发必备:理解 MIDI 协议与标准 MIDI 文件格式

    作者|李佩道1.MIDI简介MIDI协议即数字音乐接口(MusicalInstrumentDigitalInterface),是电子乐器、合成器等演奏设备之间的一种即时通信协议,用于硬件之间的实时演奏数据传递。MIDI协议诞生之初希望解决的事情是通过统一通信协议让不同乐器制造商的设备可以互相兼容,比

  • Go语言 | 基于 Channel 实现的并发安全的字节池

    字节切片[]byte是我们在编码中经常使用到的,比如要读取文件的内容,或者从io.Reader获取数据等,都需要[]byte做缓冲。复制funcReadFull(rReader,buf[]byte)(nint,errerror)func(f*File)Read(b[]byte)(nint,errer

  • C语言关键字应用技巧

     1、volatilevolatile修饰表示变量是易变的,编译器中的优化器在用到这个变量时必须每次都小心地从内存中重新读取这个变量的值,而不是使用保存在寄存器里的备份,有效的防止编译器自动优化,从而与软件设计相符合。中断服务与主程序共享变量:复制//volatile uint8

  • 七年了,没见过代码中出现过两个感叹号

    有半个多月没更新笔记了,广告少,动力也明显不足了,挺安逸的,毕竟最近鱼鹰也有其它事情要忙,主业要紧。在此感谢大家的继续关注!今天继续更新一篇小短文,希望对你有帮助。复制int func(int temp) {   return !

  • 一个有趣的面试题:如何用三个字节存储年月日

    一个有趣的面试题,如何用3个字节存储年月日呢?我们都知道一个字节存储数据最大是255,年份超过255,需要2个字节,月份和天数只需要一个字节就够了,但是我们发现这样存储的话,就需要4个字节了,那么用3个字节到底怎么处理呢?我们思考一下,1个字节是8位,3个字节就是24位。一个月最多31天,只需要5位

  • 让我们一起玩转 ByteBuffer

    本文转载自微信公众号「SH的全栈笔记」,作者SH的全栈笔记。转载本文请联系SH的全栈笔记公众号。为什么要讲Buffer首先为什么一个小小的Buffer我们需要单独拎出来聊?或者说,Buffer具体是在哪些地方被用到的呢?例如,我们从磁盘上读取一个文件,并不是直接就从磁盘加载到内存中,而是首先会将磁盘

  • Java 加密解密和数字签名

    在做项目中,只要涉及敏感信息,或者对安全有一定要求的场景,都需要对数据进行加密。在Java中原生API即可实现对称加密与非对称加密,并支持常用的加密算法。对称加密对称加密使用单钥完成加解密,加密和解密采用相同的密钥。对称加密的速度快,常用于大量数据进行加密。主流的算法有:AES,3DES。生成3DE

  • ArrayPool 源码解读之 Byte[] 也能池化?

    一:背景1.讲故事最近在分析一个dump的过程中发现其在gen2和LOH上有不少size较大的free,仔细看了下,这些free生前大多都是模板引擎生成的html片段的byte[]数组,当然这篇我不是来分析dump的,而是来聊一下,当托管堆有很多length较大的byte[]数组时,如何让内存利用更

  • Java还在纠结原码、补码和反码?其实So Easy

     平常看jdk源码的时候有很大的感触,就是基础真的很重要,那什么是基础呢?除了java的基本语法之外,最基础的莫过于原码,反码和补码了以及基本的运算了!1.原码、反码和补码大家应该都知道,数据在计算机中是以二进制的形式存在的,比如bytea=6;byteb=-6分为两种情况来说,一种是正数

  • Redis专题(2):Redis数据结构底层探秘

    前言上篇文章Redis闲谈(1):构建知识图谱介绍了Redis的基本概念、优缺点以及它的内存淘汰机制,相信大家对Redis有了初步的认识。互联网的很多应用场景都有着Redis的身影,它能做的事情远远超出了我们的想像。Redis的底层数据结构到底是什么样的呢,为什么它能做这么多的事情?本文将探秘Red

推荐阅读