自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(33)
  • 收藏
  • 关注

原创 聊天机器人的实践过程

OpenAI 的爆火,到如今也才一年多的时间,然而在过去的一年中,生成式AI的落地场景几乎都是 ChatBot 的形式,那么今天这篇文章我们就来聊一下,生成式AI和IM能擦出怎么样的火花?以及各种场景。

2024-06-03 15:00:35 836 2

原创 kafka源码阅读【4-日志索引】

文章目录1、什么是日志索引1、什么是日志索引kafka的定位是一个能够存储海量消息的消息引擎,从前面的日志段就能看出,kafka为了保存大量的数据会将消息按照offset分片到多个LogSegment里面,从而实现海量数据的存储能力。但是当数据量达到一定程度后由此而来的问题也产生的了:如果快速定位到某个offset的消息? 为了解决这个问题,kafka按照不同的需要设计了不同的索引类型,目前主要的索引有:1、 基于offset的索引.index2、 基于时间的索引.timeindex3、 基于事

2020-11-22 16:47:46 869 2

原创 Redis源码阅读【10-事务与Lua】

Redis源码阅读【1-简单动态字符串】Redis源码阅读【2-跳跃表】Redis源码阅读【3-Redis编译与GDB调试】Redis源码阅读【4-压缩列表】Redis源码阅读【5-字典】Redis源码阅读【6-整数集合】Redis源码阅读【7-quicklist】Redis源码阅读【8-命令处理生命周期-1】Redis源码阅读【8-命令处理生命周期-2】Redis源码阅读【8-命令处理生命周期-3】Redis源码阅读【8-命令处理生命周期-4】Redis源码阅读【番外篇-Redis的

2020-10-08 16:50:59 346

原创 kafka源码阅读【3-日志段】

日志段是kafka最重要的组件之一,通过日志段kafka得以实现各种文件的操作,本篇文件重点介绍kafka日志段对象LogSegment的实现。

2020-09-13 20:03:07 423 1

原创 kafka源码阅读【2-源码环境搭建】

源码阅读,编译和调试至关重要,这篇文章主要介绍如何搭建开发环境

2020-08-12 02:11:15 276

原创 Redis源码阅读【9-持久化】

Redis源码阅读【1-简单动态字符串】Redis源码阅读【2-跳跃表】Redis源码阅读【3-Redis编译与GDB调试】Redis源码阅读【4-压缩列表】Redis源码阅读【5-字典】Redis源码阅读【6-整数集合】Redis源码阅读【7-quicklist】Redis源码阅读【8-命令处理生命周期-1】Redis源码阅读【8-命令处理生命周期-2】Redis源码阅读【8-命令处理生命周期-3】Redis源码阅读【8-命令处理生命周期-4】Redis源码阅读【番外篇-Redis的

2020-07-26 15:35:12 315

原创 Redis源码阅读【番外篇-Redis的多线程】

为什么Redis要使用多线程,解决了什么问题?怎么实现?引入多线程后又出现了什么问题?

2020-05-17 13:31:44 902 1

原创 Redis源码阅读【8-命令处理生命周期-4】

文章目录1、介绍2、命令解析1、介绍在前面的几篇《命令处理生命周期》的文章中我们分别介绍了:生命周期有关的结构体,Redis相关的事件 ,以及 服务端启动的过程 ,那么这篇文章我们主要讲解命令的处理过程。在Redis中,服务端启动完成后就是等待客户端的连接,并处理来自客户端的命令,最终响应客户端,整个过程涉及多个方面,我们主要从以下几个方面入手:命令解析,命令调用,返回结果。2、命令解析T...

2020-05-03 12:31:37 455

原创 Redis源码阅读【8-命令处理生命周期-3】

文章目录1、介绍1、介绍Redis是典型的事件驱动型服务,而事件分为文件事件(socket的可独写事件)与时间事件(定时任务)两大类。

2020-04-11 13:51:04 453

原创 kafka源码阅读【1-概念介绍】

阅读源码之前,我们首先需要把概念搞清楚,这篇文章主要介绍kafka相关的各自概念

2020-03-25 23:11:03 310

原创 Redis源码阅读【8-命令处理生命周期-2】

文章目录1、介绍1、介绍

2020-03-13 16:21:02 434

原创 Redis源码阅读【8-命令处理生命周期-1】

@T

2020-03-02 19:43:08 631

原创 Redis源码阅读【7-quicklist】

文章目录1、介绍1、介绍quicklist是Redis底层最重要的数据结构之一,它是Redis对外提供的6种基本数据结构中List的底层实现。在quicklist之前,Redis采用压缩链表(ziplist)和双向链表(adlist)作为List的底层实现。当元素个数较少并且元素长度比较小时,Redis采用ziplist作为其底层存储,当元素长度较多时候,Redis采用adlist作为底层存储...

2020-03-01 12:09:44 391

原创 Redis源码阅读【6-整数集合】

文章目录1、介绍1、介绍整数集合(intset)是一个有序,存储整型数据的结构。我们知道Redis是一个内存数据库,所以必须考虑如何才能高效的利用内存,使用传统字符串的方式来存储整型,无疑是浪费内存空间,当Redis集合类型的元素都是整数并且都处在64位有符号整数范围之内时,使用该结构体存储。...

2020-01-29 14:02:21 349

原创 Redis源码阅读【5-字典】

123

2020-01-24 15:04:51 503

原创 Redis源码阅读【4-压缩列表】

123

2020-01-05 16:34:29 327

原创 Redis源码阅读【3-Redis编译与GDB调试】

2131

2019-12-29 15:03:42 1277

原创 Redis源码阅读【2-跳跃表】

123123

2019-12-28 14:19:03 515 1

原创 Redis源码阅读【1-简单动态字符串】

介绍简单动态字符串(Simple Dynamic Strings SDS)是Redis的基本数据结构之一,主要用于存储字符串和整型数据。SDS兼容C语音标准字符串处理函数,并且在此保证了二进制安全。二进制安全主要是针对类似于 \0 等有特殊含义的转义字符保证其安全性,而且不损害其内容SDS 基本结构首先我们看看SDS在C语言中的基本结构体是怎么样的struct sds { int l...

2019-12-28 12:25:25 664

原创 kafka技术内幕【简化版】

kafka技术内幕服务端服务的模型零拷贝技术生产者消费者新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入服务端...

2019-08-19 21:51:01 1024 2

原创 JVM垃圾收集器

目录前言Serial 收集器欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入前言...

2019-05-26 14:28:12 158

原创 JDK8 HashMap 源码以及原理阅读(持续更新)

目录1、前言2、什么是Hash3、常量3.1、DEFAULT_INITIAL_CAPACITY(默认桶数组大小)3.2、DEFAULT_LOAD_FACTOR(默认负载因子大小)3.3、MAXIMUM_CAPACITY(最大桶容量)3.4、MIN_TREEIFY_CAPACITY(哈希表的最小树形化容量)3.5、TREEIFY_THRESHOLD(一个桶的树化阈值)...

2019-03-13 19:38:41 938 1

原创 从单一数据库到分库

前言互联网发展迅猛,短短几年就改变传统行业的结构,最具典型的就是产业互联网,产业互联网作为种传统行业的进化,必然带来的行业模式的改变,数据作为平台最基本的载体,必然也会发生变革,从有限量级的数据,到千万级别数据,再到亿万级别数据,再到兆级,数据的量级一直在改变, 单体服务时代早期的平台应用例如OA系统,大多目的是为了优化流程,本身并不会承载大量的数据,所以基本上是单一部署,可能为了...

2018-11-04 11:21:59 3457

原创 java虚拟机和垃圾回收机制(二)

    距离上篇文章已经过了半个多月了,这期间自己也有不断的进一步研究jvm的特性,那么这篇文章将继续深入了解更多的jvm的内容前言    上一篇文章主要聊了关于,java的编译和加载的原理,例如java编译成class文件后运行时的加载方式,以及jvm的内存结构,最后聊了关于jvm堆和方法区中的分代机制。 java之所以叫做java正是因为其特有完美兼容一次编译遍地运行的特性,python和c#...

2018-04-09 10:42:12 312

原创 java虚拟机和垃圾回收机制(一)

本文章是我参考多篇技术文章整理后自己总结出来的内容前言很多人喜欢拿java和c做比较,来判定哪一种语言更好,其实我觉得c和java应该是属于两个完全不同的领域,c更倾向于硬件,效率,而java更加倾向于业务,安全并发等等,java有很强的移植性,可以不顾及底层操作系统以及各种驱动的环境,具有一次编译遍地运行的特点,c更倾向于发挥机器的性能什么是java虚拟机 (JVM)?jvm全称-jav...

2018-03-19 14:54:48 739 2

原创 Tomcat不够轻量?那就自己写一个服务器呗(Netty-demo)

最近自学了Netty,发现这是一个很强大,且特别伟大的开源框架,先不说它能做些什么,就当说阿里巴巴有多少产品业务涉及到这个东西吧,我当且不说太多,典型的RocketMQ,Hadoop,Dubbo,还有就是Tomcat等等的一切都是基于Netty构建的世界,可以这么说吧,如今的互联网世界,Netty几乎无处不在,除了以上这些内容,现在的硬件通信,中国电信,中国移动,中国联通等等都不知道得里面有多少东西

2017-12-20 15:52:22 2802

原创 (初识)世界开源框架之源Netty的世界

前言最进麟爷也有一段时间没有写博客了,在这期间我也并没有闲着,而是研究了netty的框架,为什么要研究netty呢?大家都知道各种开源框架,如Hadoop,Dubbo,RocketMQ甚至连Tomcat都是要在服务器开辟端口来提供服务的,本质使用的就是Socket,当然你可以称这种为RPC模式,通过Socker通信来进行分布式集群的处理,例如心跳检查,数据传输等等,而能做到这些的框架非Nett

2017-11-28 17:19:36 653

原创 Hadoop打开大数据新世界的大门(Hadoop介绍)

前言上一篇文章我讲述了有关大数据的概念,和一些意向,也许有人会问我,麟爷大数据和Hadoop到底是什么关系呢?如果从技术角度和非技术角度来讲,我认为是技术层面和理论层面的区别,这次我写下这篇文章的主要目是和大家介绍hadoop这个框架Hadoop诞生背景Hadoop最早是作为Nutch的子项目。而Nutch是一个开源的网络搜索引擎,由Doug Cutting于2002年创建。Nutch的设计目标是构

2017-10-25 10:03:26 557

原创 大数据,是虚还是实?(为Hadoop预热)

前言大数据,大数据,大数据,一个已经被人叫了N多年的词汇,无论是上世纪经历世界大战的老一辈,还是在小学读书的孩子们,几乎每一个人都对这个词语情有独钟作者我是一名正在从事技术岗位的宅男,这些年来我一直在观察自己周围的朋友对于大数据的理解,但是发现大多数朋友对这个大数据还是有两级分化的情况:一个是神论派,将大数据描述的无所不能,而另一派就是无用派,一直声称大数据是一个时代的泡沫产物我写下这

2017-10-16 21:32:19 638

原创 (百度地图)WebSocket地图实时更新位置

问题描述今天在公司的平台业务有一个功能需求:要求实时显示设备的地理位置在地图上,设备可能是一台汽车,而我们使用的地图是百度地图API,这样难免会涉及到实时更新位置的问题,又由于是web,http不是一个持续型的协议,所以功能上难免有点和桌面应用不一样公司技术选型首先是技术选型的问题,公司平台本身是javaWeb,所以不用说基本上都是SSM和SSH这系列的框架,公司使用javaWeb同时支持RPC 和

2017-09-29 12:58:08 4587 4

原创 Fastdfs入门启示

Fastdfs介绍上周自己无意间接触到了fastdfs,看了几篇技术文档后,发现这个东西在电商的环境下挺实用的,而且轻量,所以私下偷偷的搭建了其服务器环境首先介绍一下什么是fastdfs: fastdfs是一款开源的分布式文件存储框架,由C语言开发完成,其主要的目的就是存储,管理,以及索引,平台日常大量的但并不是特别重要的的文件,官方的建议是:(文件大小建议范围:4KB < file_size <

2017-09-24 12:48:17 1449

原创 模仿HttpSession自定义Session并且使用Redis支持共享,能完美接入负载均衡

模仿HttpSession自定义Session并且使用Redis支持共享,能完美接入负载均衡首先声明:上一次AOP的文章是从本人个人公众号转过来的,因为是复制的所以图片无法加载,如果需要原文可以直接访问 http://mp.weixin.qq.com/s/9AsSgYn7PJGAcn6rTaof8g开始前首先理解几个概念: 负载均衡: 对象序列化: HttpSession:负载均衡: 假如

2017-09-19 15:03:48 1884

原创 AOP切面进行日志记录

在开始前首先想必大家已经接触过面对切面的编程如果没有我们先简单介绍一下吧。我们都知道,编程的方式有:面对过程的编程和面对对象的编程了,那么什么是面对切面的编程呢?AOP(面对切面编程)如上图所示,切面是一个横跨多个业务的模型,切面的宗旨是(个人理解):在不影响主 业务的情况下,进行特定的行为。什么意思呢?比如你是一名节目主持人,电视台派人员要求统计每次你每次节目的口

2017-08-24 13:29:54 1043

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除