- 博客(131)
- 资源 (29)
- 收藏
- 关注

原创 打造生产环境-高性能Clickhouse集群表-5层建表结构
使用 Kafka 引擎表实现对 Kafka 消息的实时消费和摄取。五层建表结构实现了从数据摄取到查询的高效数据处理流程:Kafka 驱动表层:实时数据接入。View 视图层:负责数据的转换和消费。分布式入库层:构建全局分布式存储。Id 分区本地表层:优化单节点存储和查询性能。分布式查询层:高效的跨节点查询。
2024-11-29 11:49:04
450
1

原创 Netty + Redis + Websocket IM 分布式集群实现 ---用户端心跳及重连
流图更新: client 连接上来, channel 序列化到本地mapclient 心跳,重连<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8" http-equiv="Content-Type" content="text/html;charset=...
2019-05-31 14:23:56
3664

原创 Netty + Redis + Websocket IM 分布式集群实现 ---用户多端登陆消息推送
继续上篇完善Netty + Redis + Websocket IM 分布式集群实现MyWebsocketHandler 更新代码 /** * 处理客户端与服务端之间的websocket业务 * * @param ctx ctx * @param frame frame */ private void ...
2019-05-29 15:06:39
2975
4

原创 Netty + Redis + Websocket IM 分布式集群实现
常量表Constants.java /** * 项目中的全局常量定义 */public interface Constants { String WEBSOCKET_STR = "websocket"; String UPGRADE_STR = "Upgrade"; int OK_CODE = 200; String HTTP_CODEC...
2019-05-28 13:24:43
7871
4
原创 介绍 TensorFlow 的基本概念和使用场景。
TensorFlow的基本概念是张量(Tensor)和计算图(Computational Graph)。张量是多维数组,代表了数据的各个维度。计算图是一种图结构,其中节点表示计算操作,边表示数据流。通过构建计算图,用户可以定义模型的结构和运算逻辑。总之,TensorFlow是一款功能强大、灵活性高的机器学习框架,适用于各种学习任务和场景。它广泛应用于学术界和工业界,为机器学习和深度学习的研究和应用提供了便利。TensorFlow是一个开源的机器学习框架,由Google开发和维护。
2025-02-06 18:08:46
110
原创 Maven打包docker镜像并发布
请注意,在执行Maven命令之前,请确保已经在本地安装了Docker,并且已经登录到Docker仓库。其中 是你的 Docker Registry 的 URL,如 Docker Hub 的 URL 或私有 Docker Registry 的 URL。以上命令将会构建并发布Docker镜像到指定的Docker仓库。这将把你的镜像上传到远程服务器上的 Docker Registry。这将使用 Dockerfile 构建镜像,并为其指定一个标签。为你的Docker仓库地址。
2024-01-16 11:57:12
812
原创 Go 协程百倍提升性能(GPT)
例如,如果您需要保持结果的顺序,您可能需要添加额外的逻辑来确保结果按顺序收集。但是,您在此之前使用了 os.Create 创建了一个同名的 .txt 文件,这可能会导致文件名冲突或意外行为。为了修正您的 Go 语言代码中的并发处理逻辑,主要关注点在于确保每个协程安全地访问其应处理的数据片段。您提供的 Go 语言代码段旨在读取一个文件,处理其中的数据,并将结果写入另一个文件。这在小文件的情况下可能有效,但对于大文件来说可能会导致内存问题。您在协程内部使用的 i 变量是外部循环的变量,这可能导致数据竞争。
2023-12-26 14:03:29
1144
1
原创 fluttertoast 如何配置
您可以使用FlutterToast的静态方法轻松地显示toast消息。这将在屏幕顶部显示一个短时间的红色toast消息,时间为1秒,文本颜色为白色,字体大小为16dp。命令来获取新依赖项。
2023-10-17 13:49:45
613
原创 css 文字首行缩进2两个字符
可以通过 CSS 的 text-indent 属性来实现文字首行缩进,悬挂缩进则需要使用 text-indent 和 text-align 属性的组合。注:使用 text-justify 属性时,需要注意浏览器的兼容性,有些浏览器可能不支持该属性。
2023-10-12 14:52:21
5153
原创 和AI对话学习数据科学、深度学习
我们将学习流行的深度学习框架,如TensorFlow和PyTorch,并获得构建,训练和部署深度学习模型的实践经验。欢迎,来到数据科学和深度学习的世界!我们将一起探索数据科学的基础知识,深入研究深度学习的复杂性,并开展两个令人惊叹的项目,以测试您的技能。我们将探讨情绪检测算法中的偏见、多样化和包容性数据集的重要性以及我们的模型对个人和社会的潜在影响等主题。
2023-06-14 23:06:30
169
原创 如何在Java中使用Lambda表达式
Lambda表达式需要与函数式接口(Functional Interface)一起使用,函数式接口是指只定义了一个抽象方法的接口。可以使用@FunctionalInterface注解来标记一个接口是否是函数式接口,这样编译器就会检查该接口是否只有一个抽象方法。
2023-04-05 11:38:16
400
原创 Java中请举例说明过度使用继承和多态可能会导致的问题
然后,我们创建了两个实现了Animal接口的类Dog和Cat,并在这些类中实现了eat方法以及自己的其他方法。由于我们使用了组合和接口,代码变得更加灵活和可扩展,并且不会出现继承和多态可能导致的问题。但是,由于我们使用了多态,animal对象只能访问Animal类中的方法,而不能访问Dog类中的方法。当一个类有多个角色和职责时,它们可能会被拆分成多个类,这样每个类都有一个单一的职责和角色。但是,如果使用继承和多态来实现这些角色和职责,可能会导致类层次结构的膨胀和复杂性增加。继承和多态可能会破坏类的封装性。
2023-04-05 11:28:45
467
原创 Java中如何使用多态和继承来完成不同类型的对象的操作
在这个例子中,我们定义了一个Shape抽象类,以及两个子类Circle和Rectangle,它们都继承自Shape类并重写了getArea方法。最后,我们使用多态的方式遍历Shape数组,并调用每个对象的getArea方法,输出每个形状的面积。注意,使用多态和继承来完成不同类型的对象的操作可以使代码更加简洁和可维护。继承是一种机制,它允许新的类从现有的类继承属性和方法。多态和继承是面向对象程序设计的两个核心概念,它们可以帮助我们更好地组织和设计代码,并减少代码重复和不必要的复杂性。
2023-04-05 11:18:51
200
原创 Java中如何使用instanceof运算符检查对象的类型
在这个例子中,我们定义了一个对象obj,并使用instanceof运算符检查它的类型。如果对象是一个字符串,我们将其转换为字符串类型,并打印出字符串。如果对象是一个整数,我们将其转换为整数类型,并打印出整数。否则,我们打印出对象是未知类型的消息。注意,使用instanceof运算符来检查对象的类型可能会导致代码重复和不必要的复杂性。在设计良好的面向对象程序中,应该避免使用instanceof运算符,并使用多态和继承来完成不同类型的对象的操作。其中,object是要检查的对象,Class是要比较的类或接口。
2023-04-05 11:17:52
572
原创 Java踩坑过往
Java是一种广泛使用的编程语言,但是在开发过程中,我们可能会遇到各种各样的问题。这些问题可能会导致程序运行不正常,甚至崩溃。在这篇博客中,我将分享一些我在Java开发过程中遇到的问题,并提供解决思路。
2023-04-05 11:14:25
164
原创 日志系统架构 最流行的架构 非elk
日志系统架构 最流行的架构 非elk日志系统的架构有很多种,下面列举一些比较流行的非ELK的架构:Fluentd + GraylogFluentd是一个数据采集和转发工具,可以将来自多种来源的日志数据汇总到一起。Graylog是一个日志管理平台,提供了数据可视化、搜索和报警等功能。Fluentd可以将采集到的日志数据发送到Graylog,Graylog负责存储和分析数据。Logstash + Kibana + BeatsLogstash是一个数据采集和转发工具,可以将来自多种来源的日志数据汇总到一
2023-02-23 21:14:48
1389
原创 探究下Clickhouse中的order by
相邻的行通常具有相同的值,这些相同的值将被存储在一起,从而提高了数据的压缩率。此外,按照 ORDER BY 子句排序后的数据可以更好地支持某些查询操作,例如范围查询和TOP-N查询,从而减少了需要维护的索引结构,降低了存储空间的使用。具体而言,ORDER BY 子句指定了数据在物理存储中的排序方式,从而决定了数据的压缩率和碎片程度,进而影响数据的存储空间大小。需要注意的是,在使用 ORDER BY 子句时,需要根据实际的数据情况来选择排序键,以便最大限度地减少数据的存储空间。
2023-02-22 20:16:27
9211
原创 Clickhouse Kafka引擎表使用进阶
ClickHouse是一个快速、高可扩展的列式数据库管理系统,Kafka引擎则是ClickHouse提供的一种用于从Apache Kafka中读取和处理数据的插件。在使用Kafka引擎时,可以将Kafka中的消息保存到ClickHouse表中,然后利用ClickHouse的强大查询引擎来分析和查询数据。当处理复杂的Kafka数据时,通常需要解析JSON格式的数据。以下是一些使用ClickHouse Kafka引擎表解析JSON数据的方法。
2023-02-17 15:31:50
1619
原创 Clickhouse中的MaterializedMySQL引擎相关知识交流过程(AI)
Clickhouse的MaterializedMySQL引擎相关知识点
2023-02-16 21:00:09
964
原创 JS中版本号的比较(AI)
在 JavaScript 中,您可以使用字符串比较算法比较版本号。版本号通常采用 x.y.z 格式,其中 x、y 和 z 均为数字,表示主版本号、次版本号和修订版本号。以下是比较版本号的一些示例代码。
2023-02-16 14:12:25
4395
3
原创 Java-100天知识进阶-GC种类-知识铺(六)
知识铺: 致力于打造轻知识点,持续更新每次的知识点较少,阅读不累。不占太多时间,不停的来唤醒你记忆深处的知识点。一、GC回收器的 4个指标:1.Throughput,非gc时间与总运行时间的比重。2.Pauses,gc过程中程序的暂停次数,暂停平均时长,最大时长。3.Footprint ,当前使用堆内存大小。4.Promptness,无引用的对象多久才被gc。二、串行垃圾回收器原...
2019-11-26 21:37:22
959
原创 Java-100天知识进阶-GC算法-知识铺(五)
知识铺: 致力于打造轻知识点,持续更新每次的知识点较少,阅读不累。不占太多时间,不停的来唤醒你记忆深处的知识点。GC算法1.标记清除算法优缺点:不需要额外空间,但是遍历空间花费大,而且会产生大量内存碎片2.复制收集算法占用两块一样大内存,每次只用使用一块。当需要发生复制的时候,遍历一遍可达对象,进行复制到另外一块内存中。From区转移到To区,或把一下gc次数超过阈值的,转移大Old区。...
2019-11-26 21:34:42
956
原创 Java-100天知识进阶-Java内存-知识铺(四)
知识铺: 致力于打造轻知识点,持续更新每次的知识点较少,阅读不累。不占太多时间,不停的来唤醒你记忆深处的知识点。1.Java内存模型是每个java程序员必须掌握理解的2.Java内存模型的主要目标是定义程序中各个变量的访问规则,即在JVM中将变量存储到内存和从内存中取出变量这样的底层细节3.Java的并发采用的是共享内存模型4.Java内存模型:JMM(Java Memory Model)...
2019-11-19 21:26:10
1034
原创 Java-100天知识进阶-JVM内存-知识铺(三)
知识铺: 致力于打造轻知识点,持续更新每次的知识点较少,阅读不累。不占太多时间,不停的来唤醒你记忆深处的知识点。Java内存模型(JMM)JVM内存模式是JVM的内存分区Java内存模式是一种虚拟机规范1.Jvm内存按照运行时态及内存规范划分Java内存区域2.1 线程安全 2.1.1 程序计数器2.1.2 虚拟机栈2.1.3 本地方法2.2 线程不安全2.2.1 方法区2...
2019-11-17 11:35:26
942
原创 Java-100天知识进阶-引用类型-知识铺(二)
Java的两大数据类型:一、内置数据类型前面一片已经介绍二、引用数据类型引用数据类型强引用软引用弱引用虚引用本文由zshipu.com学习笔记或整理或转载,如有侵权请联系,必改之。...
2019-11-17 10:49:36
543
原创 Uber Go 语言编码规范
Uber Go 语言编码规范Uber 是一家美国硅谷的科技公司,也是 Go 语言的早期 adopter。其开源了很多 golang 项目,诸如被 Gopher 圈熟知的 zap、jaeger 等。2018 年年末 Uber 将内部的 Go 风格规范 开源到 GitHub,经过一年的积累和更新,该规范已经初具规模,并受到广大 Gopher 的关注。本文是该规范的中文版本。本版本会根据原版实时更新。...
2019-11-15 15:34:01
1059
原创 Java-100天知识进阶-基本类型-知识铺(一)
知识铺: 致力于打造轻知识点,持续更新每次的知识点较少,阅读不累。不占太多时间,不停地来唤醒你记忆深处的知识点。Java的两大数据类型:一、内置数据类型二、引用数据类型内置数据类型Java语言提供了八种基本类型。byte:short:int:long:float:double:boolean:char:本文由zshipu.com学习笔记或整理或转载,如有侵权请联系,必...
2019-11-15 14:37:25
566
原创 日常笔记-开篇
日常笔记-开篇学习markdown 语法标题:# 一级标题## 二级标题### 三级标题序列:注意:中间会有个空格!中间会有个空格!中间会有个空格!常用 语法 的肯定是:- 列表文字1. 列表文字2. 列表文字图片语法 的肯定是:语法 的肯定是:[超链接名](超链接地址)本文由zshipu.com学习笔记或整理或转载,如有侵权请联系,必...
2019-11-14 16:08:49
958
翻译 orthanc微调配置
{ / ** * Orthanc的常规配置 ** / //此Orthanc实例的逻辑名称。这个是 //显示在Orthanc Explorer中和URI"/ system"处。 "Name" : "Orthanc inside Docker", //存放重量级文件的目录的路径(即 //原始DICOM实例)。反斜杠必须由 //将它们加倍,或用正斜杠"/"代...
2019-10-12 14:12:45
3123
翻译 Docker启动Orthanc
简介用于Orthanc核心及其官方插件的Docker映像可在DockerHub平台上免费获得。相应的Docker映像的源代码可在GitHub上获得。关于Orthanc与Osimis Docker映像的注意事项:此页面上描述的jodogne/orthanc和jodogne/orthanc-pluginsDocker映像始终与Orthanc项目的最新版本保持同步,并具有从Debian软件包...
2019-10-12 13:57:23
2557
翻译 Orthanc的配置
配置Orthanc只需提供一个配置文件即可。Orthanc具有许多配置,这些配置记录在默认配置文件中。该文件为JSON文件格式。您可以通过以下调用生成此文件:$ Orthanc --config = Configuration.json默认配置文件为:使用ORTHANC侦听端口4242的DICOM AET(应用程序实体标题)创建DICOM服务器。 为在端口8042上侦听的RE...
2019-10-12 13:50:47
4749
翻译 Orthanc的REST API — Orthanc Book文档
Orthanc的RESTOrthanc的主要优势之一在于其内置的RESTful API,可用于从外部应用程序驱动Orthanc,而与用于开发这些应用程序的编程语言无关。Orthanc的REST API提供了对Orthanc所有核心功能的完整编程访问。重要的是,Orthanc Explorer(Orthanc的嵌入式管理界面)完全使用此REST API的所有功能。这意味着可以通过Ortha...
2019-10-11 12:08:22
4077
3
翻译 如何使用消息队列,Spring Boot和Kubernetes扩展微服务
当您大规模设计和构建应用程序时,您将面临两个重大挑战:可伸缩性和健壮性。您应该设计您的服务,即使它受到间歇性重载,它仍然可靠地运行。以Apple Store为例。每年都有数百万Apple客户预先注册购买新的iPhone。这是数百万人同时购买物品。如果您将Apple商店的流量描述为每秒的请求数,那么这就是图形的样子:现在想象一下,你的任务是构建这样的应用程序。...
2018-08-09 09:24:50
1215
翻译 什么是Linkerd
Linkerd是一款开源网络代理,旨在作为服务网格进行部署:专用层,用于在应用程序内管理,控制和监视服务到服务的通信。它解决了什么问题?Linkerd的建立是为了解决我们在Twitter,雅虎,谷歌和微软等公司运营大型生产系统时遇到的问题。根据我们的经验,最复杂,最令人惊讶和紧急行为的来源通常不是服务本身,而是服务之间的沟通。Linkerd解决了这些问题,不仅仅是通过控制这种通信的机制,而是通过在...
2018-06-27 13:34:58
5757
转载 (转)-Java-NIO
Java NIO提供了与标准IO不同的IO工作方式:Channels and Buffers(通道和缓冲区):标准的IO基于字节流和字符流进行操作的,而NIO是基于通道(Channel)和缓冲区(Buffer)进行操作,数据总是从通道读取到缓冲区中,或者从缓冲区写入到通道中。Asynchronous IO(异步IO):Java NIO可以让你异步的使用IO,例如:当线程从通道读取数据到缓冲区时,
2015-03-12 11:45:06
882
原创 ExtJs 学习笔记 一 初体验
function a(){ alert("a") } Ext.onReady(function(){ //创建对话框 Ext.MessageBox.alert("hello","Hello,easyjf ope
2014-04-28 21:49:30
487
原创 jQuery 学习笔记 一 初体验《三》
//属性过滤器 td[name='cc'] 或 td[id='aa'] ; // !='aa' 属性是不包含; ^='aa'属性是以某些值开始; $='aa' 属性是以某些值结尾 ; *='man' 属性是以包含某些值 $("input[name='check2']").attr("checked",true); $("img[name='
2014-04-28 21:49:25
477
原创 jQuery 学习笔记 一 初体验《二》
//把form中的每个input元素的值建立一个列表 map 函数 $("p").append( $("input").map(function(){ return $(this).val(); }).get().join(", ")); // 结合 slice 选择第一个p元素 把form中的每个input元素的值建立一个列表
2014-04-28 21:49:20
521
Vue 开发指南
2017-06-14
nginx-1.9.1
2015-07-03
redis64-2.8.17.zip
2015-03-12
redis-desktop-manager-0.7.6.15.exe
2015-03-12
mina中文开发手册
2012-09-04
boost_1_35_0.
2012-02-05
mongodb-win32-i386-1.2.1
2012-02-04
PHP设计模式介绍.chm
2009-01-07
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人