- 博客(1920)
- 资源 (12)
- 收藏
- 关注
原创 Apache Kafka - 如何实现可靠的数据传递
所以,Kafka 通过分区多副本、生产者消费者重试机制、批量操作与校验、顺序写磁盘与页缓存、混合存储、高可用设计以及时间戳与消息编号等手段,实现了高吞吐、低延迟与高可靠的数据传输。这也体现了 Kafka 的设计目标与关键机制。
2023-05-28 19:52:36 14678
原创 每日一博 - 浅析事务隔离级别& MVCC机制
快照(Snapshot):当事务开始时,MySQL 会为其创建一个快照,快照中包含此时数据页中所有版本和对应事务ID。为避免覆盖,事务A生成新版本,并阻塞事务B的修改,等待其提交或回滚。行版本生成:事务更新数据时,会生成行的新版本,并把新版本的事务ID设置为自己的ID。其他事务只有在此事务提交后,新版本才对其可见。事务ID(Trx ID):每个事务开始时,会分配一个唯一的事务ID,用于标识事务在时间轴上的位置。事务回滚:如果事务回滚,其生成的所有新行版本都会被移除,不会对其他事务产生影响。
2023-05-28 15:46:30 14891
原创 Apache Kafka - 理解Kafka内部原理
生产者将消息发送给分区的领导者,领导者将消息追加到日志并进行复制。消息以追加的方式写入日志片段,并根据一定的大小或时间策略进行日志段的滚动和压缩。这种存储模型支持高吞吐量的消息写入和顺序读取,并允许消息的持久化存储和回溯。ZooKeeper维护了有关Kafka集群中所有服务器的元数据信息,包括主题(topics)、分区(partitions)以及它们在集群中的分布情况。总之,Kafka的实现机制包括集群成员关系的管理、控制器的角色分配、基于副本的复制机制、请求的处理和基于提交日志的物理存储。
2023-05-28 12:46:57 14445
原创 Apache Kafka - 高性能原因探究
分布式架构:Kafka 采用分布式集群架构,可以水平扩展到上万个节点,支持每秒处理百万级消息。持久化存储:Kafka 使用文件系统持久化存储消息,避免了数据库成为性能瓶颈,大大提高了吞吐量。顺序读写:Kafka 的消息和文件都是顺序读写的,不需要频繁的随机寻址,这种顺序写入的方式非常高效。零拷贝:Kafka 使用 SendFile 技术,可以直接将文件映射到内核空间和网络空间,避免用户空间和内核空间之间的拷贝,提高网络吞吐量。
2023-05-27 21:24:25 15271
原创 Apache Kafka - ConsumerInterceptor 实战(2)
在Spring Boot中配置Kafka消费者的拦截器需要进行以下步骤:首先,创建一个拦截器类,实现Kafka的ConsumerInterceptor接口,定义拦截器的逻辑。在应用的配置文件(例如application.properties或application.yml)中,添加拦截器相关的配置项,其中包括设置interceptor.class属性为拦截器类的全限定名。
2023-05-25 21:02:27 15435
原创 Apache Kafka - ConsumerInterceptor 实战 (1)
ConsumerInterceptor是Kafka中的一个重要组件,它允许开发人员在Kafka消费者端拦截和修改消息的处理过程。ConsumerInterceptor可以用于实现各种功能,从消息监控到数据转换和错误处理,为开发人员提供了更大的灵活性和可定制性。ConsumerInterceptor的主要作用是在消息被消费之前和之后对其进行拦截和处理。
2023-05-25 20:41:02 15738
原创 Apache Kafka - 重识消费者
Kafka是一个分布式的消息队列系统,它的出现解决了传统消息队列系统的吞吐量瓶颈问题。Kafka的高吞吐量、低延迟和可扩展性使得它成为了很多公司的首选消息队列系统。在Kafka中,消息被分成了不同的主题(Topic),每个主题又被分成了不同的分区(Partition)。生产者(Producer)将消息发送到指定的主题中,而消费者(Consumer)则从指定的主题中读取消息。接下来我们将介绍Kafka消费者相关的知识。
2023-05-20 23:15:00 16141 1
原创 Apache Kafka - 重识Kafka生产者
Kafka 生产者是 Apache Kafka 中的一个重要组件,它负责将数据发送到 Kafka 集群中。在实时数据处理和流式处理应用程序中,Kafka 生产者扮演着非常重要的角色。这里我们将介绍 Kafka 生产者的概念、工作原理以及如何使用 Kafka 生产者。Kafka 生产者是 Apache Kafka 中的一个重要组件,它负责将数据发送到 Kafka 集群中。Kafka 生产者的工作原理是连接 Kafka 集群、发送数据、处理错误和关闭连接。
2023-05-20 21:15:00 15329
原创 Apache Kafka - 安装注意事项
在现代的大数据时代,消息队列成为了极为重要的组件。Kafka作为一种高吞吐量、低延迟、可扩展的分布式发布订阅消息系统,在大数据领域得到了广泛的应用。来,这里我们将介绍如何安装Kafka以及一些配置注意事项。
2023-05-20 19:00:00 15659
原创 Apache Kafka - 重识Kafka
Kafka是一个高性能、分布式的消息队列系统,它的出现为大规模的数据处理提供了一种可靠、快速的解决方案。我们先初步了解Kafka的概念、特点和使用场景。
2023-05-20 16:30:00 16010
原创 Apache Kafka - 生产者内存优化注意事项
如果生产者出现频繁 full GC 或接近 JVM 最大内存,并且消费端的消费能力仍然跟得上,表明生产者的内存和资源很有可能不足以支撑当前的消息负载。topic 的 partition 数量和分布也会影响每个生产者的负载。对 Kafka 集群进行升级和使用更强劲的硬件也可以提高其整体吞吐能力,間接减轻生产者的负载。一旦出现问题及时调优。如果一个生产者负载过大,可以增加更多生产者实例,分散负载,降低每个实例的内存压力。如果生产者负载较大,可以适当限制客户端的消息生产速率,降低生产者的负载压力。
2023-05-13 21:22:25 15959
原创 ChatGPT - 使用chatgpt + xmind 快速生成思维导图
将上述的md 文件存在本地,下个步骤导入使用。导入刚才保存的本地文件, 效果即出。打开xmind软件 , 导入。
2023-05-12 23:40:27 15261
原创 ChatGPT - 使用chatgpt + mindshow 快速生成PPT
如何从一句话到几个图文并茂的PPT,步骤如下。第一步 让GPT用markdown写出内容第二步 让GPT转成markdown的code第三步 copy到MindShow一键生成PPT
2023-05-11 21:45:00 16003
原创 每日一博 - API Architectural Styles
REST(Representational State Transfer):一种基于 HTTP 协议的架构风格,它将资源作为 Web 上的 URI(Uniform Resource Identifier)公开,并使用 HTTP 方法(例如 GET、POST、PUT、DELETE)来操作资源。Serverless:一种基于事件驱动的计算模型,它可以让开发人员编写代码并将其部署到云端,而无需考虑服务器的管理和维护。GraphQL:一种查询语言和运行时,它可以提供更灵活、更高效的 API 查询和数据获取方式。
2023-05-11 19:45:00 15464
原创 Elasticsearch - 聚合获取原始数据并分页&排序&模糊查询
ES版本:7.6.需要按照主机ID 进行告警时间的汇总,并且还得把主机相关的信息展示出来。注: 所有的数据都存在索引中, 通过一个DSL查询展示实际上就是将terms聚合的结果以列表形式分页展示。
2023-05-11 06:30:00 17821
原创 每日一博 - 闲聊“突发流量”的应对之道
扩容现有资源。这是最直接和最常用的方法。可以通过增加CPU、内存、节点等来扩容。典型案例是双11等大促期间,阿里会大规模扩容幕布等系统以应对流量激增。横向扩展,增加更多服务器或节点。通过增加服务器数量来分摊流量,抵御突发流量冲击。例如网易严选在特大促销日会增加大量计算节点以应对流量激增。限流降级,关闭非关键服务。临时关闭不太重要的服务,让服务器资源集中处理关键业务。例如淘宝在双11当天会关闭搜索引擎等服务,全部资源用于应付商城业务。负载均衡,多机房部署。
2023-05-09 06:15:00 16238
原创 每日一博 - 闲聊中台
所以简单来说,中台是公司内部开发的一套共享平台,通过提供技术基础设施、通用服务、数据服务等,来提高公司内部的工作效率、减少重复工作投入、实现数据和业务的协同。中台的目的就是构建一个内部共享平台,最大限度地实现公司内部资源的协同和重用,降低各业务的 techncal cost,提高整体运营效率。通俗地说,中台就是一个“家庭公共场所”,让“家庭成员”(不同业务和部门)可以方便地共享和重用,也让整个“家庭”(公司)变得高效协同。中台其实就是内部的共享平台。
2023-05-08 22:30:00 15624
原创 BDCC - Lambda VS Kappa
Lambda架构和Kappa架构都是用于处理大数据的架构模式。Lambda架构使用了批处理和流处理两种不同的处理方式来处理数据。数据首先通过流处理层进行实时处理,然后再通过批处理层进行离线处理,最后将两种处理结果合并起来得到最终的结果。Lambda架构的优点是可以同时处理实时和历史数据,并且可以保证数据的一致性,但是需要维护两套不同的代码和基础设施。Kappa架构则只使用流处理来处理数据,将所有数据都视为实时数据进行处理。这样可以简化架构,并且可以实现更低的延迟和更高的吞吐量。
2023-05-07 21:02:58 15813
原创 ChatGPT - 快速生成 流程图
好的,作为一名经验丰富的技术管理人员,我可以帮您梳理一个研发标准化的完整流程,包括需求分析、概要设计、代码走查等等,输出的节点不少于18个,包含逻辑判断的分支,以下是详细内容。在需求分析后,需要对需求进行评审,包括需求是否具有可实现性、可靠性、安全性等,同时还需要评估需求的优先级和复杂度等。在集成测试通过后,需要进行系统测试,对整个系统进行测试,确保系统符合需求,并且满足性能、可靠性、安全性等要求。在概要设计通过评审后,需要进行详细设计,包括具体的类、方法、接口的设计、详细的算法实现等。
2023-05-07 00:15:00 18637
原创 Apache Kafka-通过API获取主题所有分区的积压消息数量
【代码】Apache Kafka-通过API获取主题所有分区的积压消息数量。
2023-05-06 21:15:00 16905
原创 ChatGPT - 高效编写Prompt
还应向模型提供有关所需输出的信息,例如对话或交谈的类型以及任何特定的要求或限制。通过为模型提供一个上下文和一组角色或实体,以及它们的角色和背景,并要求模型在它们之间生成对话。提示公式:“作为市场代表,生成一个有信息量的、有说服力的产品描述,突出新智能手机的创新功能。事实检查:“请确保以下文本是自洽的:文章中陈述该城市的人口为500万,但后来又说该城市的人口为700万。文本完成:“作为研究员,请在与种子词“科学”相关且以研究论文的形式书写的情况下完成以下句子:[插入句子]”
2023-05-05 22:47:44 20176
原创 AIGC - 生产力新工具 Copilot
https://github.com/features/copilotCopilot的主要功能包括:除此之外,Copilot还会持续学习您的代码风格,熟悉您经常使用的库,更精确地提供建议。如果有某条建议不符合您的需求,您也可以通过点击“不再显示”来反馈,Copilot会学习到。总之,Copilot是一款很实用的AI辅助开发工具,特别适合使用JetBrains全家桶的开发者使用。它可以真正理解代码并提供高质量的建议,加速开发效率需要登录Github使用安装后 右侧 会出现额 ,这个莫慌,会跳到
2023-04-28 23:56:26 17542
原创 AIGC - 生产力新工具 Bito AI
如IntelliJ IDEA中,请选择File->Settings打开“设置”对话框,然后在“设置”对话框中单击“Plugins-> Marketplace选项卡。Bito是一款建立在OpenAI和ChatGPT模型之上的人工智能编程辅助软件,Bito AI可以帮助开发人员大幅提升工作效率。Bito分两个版本,个人计划版本和商业计划版本,对于个人计划是免费使用的,商业计划暂未发布。生成代码:向Bito提出任何语言的代码生成请求,并获取自然语言提示。检查安全:询问选择的代码是否有任何已知的安全问题。
2023-04-26 22:21:06 17696
原创 ChatGPT - 如何高效的调教ChatGPT (指令建构模型-LACES问题模型)
LACES问题模型是一个更具体的提问prompts构建方法。
2023-04-25 21:58:24 18050
原创 BDCC- 数据湖体系
因为数据湖组件实现了批流一体的存储,再通过批流一体的计算引擎,把数据写入到第三方的结果数据库中,从而提供 API 或者其它的服务的能力,去构建湖仓一体。去访问数据湖的方式,变成了调用 Trino SQL 的 API,然后由计算引擎层决定是用 Spark 引擎或 Velox 引擎去执行,对计算引擎的选择更加智能,这样做会更加公平。比如已经有了 Hive 的数仓存储体系,再引入数据湖的格式,并实现了通过 Hive 对数据湖进行读和写,这种方式就叫做仓外挂湖。有不同的并发控制,例如保证读取和写入之间的一致性。
2023-04-23 07:00:00 17231
原创 ChatGPT 开源替代品 - Open Assistant 使用说明
Open Assistant 机器学习模型是由一家德国非营利组织 LAION 运营。OpenAssistant 项目开始于 2022 年 12 月, Open Assistant 的目标是创建一个和 ChatGPT 具有相同能力的开源人工智能助手。
2023-04-17 22:54:28 20153 3
原创 ChatGPT - 解决ChatGPT上下文不连贯问题的几种方式
有的时候输出的内容不够完整,却不再输出,如果我们想让其继续接着上次的输出继续输出,可以尝试一下几种方式。
2023-04-17 21:45:00 21469
原创 Git - 记一次完整的新旧Gitlab迁移
请按照 《设置个人访问令牌》章节设置密码,并保存该密码,使用该密码访问Gitlab。两种方式, 如果多就迁移,如果少,就新建。OK,分支正常,提交日志正常。输入 账号和个人访问令牌。
2023-04-11 06:45:00 21903
原创 每日一博 - Java 异步编程的 Promise 模式 CompletableFuture的前世今生 (上)
在 Java 中,在 JDK 1.8 里也引入了类似 JavaScript 的玩法 —— CompletableFuture。这个类提供了大量的异步编程中 Promise 的各种方式。
2023-03-19 11:28:54 21441
X86-NFS rpm包
2020-11-24
中标龙芯-MIPS- NFS rpm包
2020-11-24
mybatisSource.zip
2020-06-14
apache-tomcat-8.5.50-src.zip
2020-06-02
「Tomcat源码剖析」.pdf
2020-06-01
Jest-5.3.4.zip
2020-01-19
Spring4CachingAnnotationsExample
2017-10-04
Java反编译工具
2015-06-04
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人