给 Moonscript 重写编译器的故事
## Moonscript 是一门极为小众的编程语言 Moonscript 是一门编译成为 Lua 代码并在 Lua 虚拟机运行的编程语言。主要语法和特性借鉴于 Coffeescript。这门语言的优势在于语言简练、具有较强表达力的同时能保留尽可能高的可读性,在表达力和可读性之间取得一个比较好的平衡点。有较为克制不那么 corner case 的语法糖。...
View Article你的debug包在Android 14变卡了吗?|得物技术
一、背景 我的App怎么这么卡,谁在代码里下毒了! 有一天突然发现debug包运行变的特别卡顿,经过下面的简单测试发现debug包在Android 14上出了问题。 二、问题排查纪录 常规手段排查 使用了systrace以及内部的debug包 trace工具dutrace进行排查。 结论:CPU空闲,主线程无明显阻塞,看上去就是纯方法执行耗时。 发现怀疑...
View Article《2024年中国企业级SaaS行业研究报告》发布
近日,艾瑞咨询发布《2024年中国企业级SaaS行业研究报告》,主要内容包括中国企业级SaaS行业的市场趋势、企业实践、行业动态、资本动向、投融资情况、上市情况以及企业应用实践等多个方面的分析和预测。 以下是核心内容的概要: 市场趋势: 2023年中国企业级SaaS市场规模达到888亿元,同比增长13.0%。 预计未来三年市场增...
View Article腾讯宣布混元文生图大模型开源: Sora 同架构,可免费商用
5月14日,腾讯宣布旗下的混元文生图大模型全面升级并对外开源,目前已在 Hugging Face 平台及 Github 上发布,包含模型权重、推理代码、模型算法等完整模型,可供企业与个人开发者免费商用。 这是业内首个中文原生的 DiT 架构文生图开源模型,支持中英文双语输入及理解,参数量15亿。升级后的混元文生图大模型采用了与 ...
View Article线程安全使用 HashMap 的四种技巧
这篇文章,我们聊聊线程安全使用 HashMap 的四种技巧。 ![](https://www.javayong.cn/pics/cache/securityhashmap.png) # 1方法内部:每个线程使用单独的 HashMap 如下图,tomcat 接收到到请求后,依次调用控制器 Controller、服务层 Service 、数据库访问层的相关方法。 每次访问服务层方法...
View Article方正证券-金融科技云原生微服务建设实践
本文根据2024年3月30日在北京举办的“云原生✖️AI时代的微服务架构与技术实践”CloudWeGo 技术沙龙北京站活动方正证券 金融科技工程院高级研发工程师刘义的演讲《金融科技 Go 微服务建设实践》整理而来。 概述:本文将详细介绍方正证券金融科技工程院在云原生微服务建设实践经验,分享包含 3 个方面: 微服务治理工作 ...
View ArticleDDD领域驱动设计理论|得物技术
一、前言 领域驱动设计简称“DDD”,一套“知易行难”的方法论。同时我所工作的这些年,尤其在某大厂做初创项目的那段时间,经常会产生各式各样的“思想碰撞”,特别在设计中台基建类领域时,为了保证充足的扩展性和稳定性,都要好好的“碰撞”一下。虽然在设计过程中,每个人的想法不尽相同,但是最终达成一致的那一刻,...
View ArticleBookie存储架构源码剖析|得物技术
一、Pulsar存储架构简析 Pulsar作为新一代MQ中间件,在底层架构设计上充分贯彻了存算分离的思想,broker与Bookeeper两个组件独立部署,前者负责流量的调度、聚合、计算,后者负责数据的存储,这也契合了云原生下k8s大行其道的时代背景。Bookeeper又名Bookie ,是一个单独的存储引擎。在组件关系上,broker深度依赖Booki...
View Article海量消息下王者荣耀在 TDMQ Pulsar 的实践
关于王者荣耀 ------ 《王者荣耀》是由腾讯游戏开发的一款运营在Android、IOS平台上的MOBA类手游,属于多人联机在线竞技类游戏,于2015年11月26日在Android、IOS平台上正式公测。上线以来受到广大手游玩家的热爱,目前该游戏在手游排行中处于TOP 1的位置。作为中国最火爆的手机游戏,"王者荣耀",拥有亿级用户体量,千万...
View Articlev5内存分配器性能优化
背景 在之前我们提到采用自定义的内存分配器来解决防止频繁 make 导致的 gc 问题。gc 问题本质上是 CPU 消耗,而内存分配器本身如果产生了大量的 CPU 消耗那就得不偿失。经过测试初代内存分配器实现过于简单,产生了很多 CPU 消耗,因此必须优化内存分配器的性能。 性能消耗原因 在内存的分配和回收上,使用了简单的循环...
View ArticleLangChain 与 Semantic Kernel,大模型开发应用的框架,都用上了吗?
论起当前流行的 AI 应用开发开源框架, LangChain 和 Semantic Kernel 必然榜上有名。不仅提供了强大的工具和框架,同时都代表了 AI 技术发展的前沿。 LangChain 的创始人是 Harrison Chase,在 2022 年 10 月将其开源。最初,它只是 Chase 的一个业余爱好项目,但迅速发展成为颇受开发者欢迎的开源框架和工具包。尤其是...
View Article手把手案例!怎样拿开源的 GPT-2 训练小模型,挑战 GPT-3.5
当前业内普遍认可的一个观点是,大模型(LLM)参数规模越大,其性能越强,表现得越像人类。 然而,一个只有 5 亿参数的小模型(SLM),在做文档摘要任务时,其表现却超过了 GPT-3.5。这听起来很不可思议。官方曾公布 GPT-3.5 的参数量为 1750 亿,是该小模型的 300 倍。 这是怎么做到的? 基于“大数据、大算力、强算法”...
View ArticleGo-Job让你的任务调度不再繁琐
**一、背景** 在选择任务调度平台时,团队遇到了一些实际的问题。现有的开源项目如XXL-Job、Elastic-Job,虽然功能强大,但主要是围绕Java设计,而我们团队主要使用Go语言进行开发。这使得我们在集成和使用这些工具时遇到了诸多不顺。经过深入的调研和讨论,决定开发一个适合Go语言的任务调度框架,以满足我们的特定业务...
View Article缓存有大key?你得知道的一些手段
背景: 最近系统内缓存CPU使用率一直报警,超过设置的70%报警阀值,针对此场景,需要对应解决缓存是否有大key使用问题,扫描缓存集群的大key,针对每个key做优化处理。 以下是扫描出来的大key,此处只放置了有效关键信息。 图1 大key介绍: 想要解决大key,首先我们得知道什么定义为大key。 什么是大K...
View Article吵了6年的数据库话题,会在冯若航这里终结吗?
谈及在 k8s/Docker 上部署数据库服务时,业界意见分歧显著,形成了一场围绕“数据库容器化”的持久辩论。 一方面,支持者强调 k8s 在提供环境无关性、自动化运维及资源优化方面的潜力;另一方面,反对者则担忧数据库的特殊需求与 k8s 的设计理念存在冲突,可能导致安全、性能及成本效率上的挑战。 本文跟踪了一下这场持续...
View ArticleDisruptor在撮合引擎的实践|得物技术
一、Disruptor的简介 ============== Disruptor是基于事件异步驱动模型实现的,采用了RingBuffer数据结构,支持高并发、低延时、高吞吐量的高性能工作队列,它是由英国外汇交易公司LMAX开发的,研发的初衷是解决内存队列的延迟问题,不同于我们常用的分布式消息中间件RocketMQ、Kafaka,而Disruptor是单机的、本地内存队...
View Article2024 年了,云原生与微服务架构还有什么新鲜事儿?
8 月 15 日至 16 日,GOTC 2024 将于上海张江科学会堂盛大开启。GOTC 2024 与上海浦东软件园联合举办,并结合 “GOTC(全球开源技术峰会)” 与 “GOGC(全球开源极客嘉年华)”,旨在打造一场全新的开源盛会。 大会精心策划了一系列精彩纷呈的平行论坛,如全球开源人才及教育论坛、LLMOps 最佳实践、硬核 AI 技术创新与...
View Article实现 LLM 应用的可观测,难在哪里?
随着生成式 AI 概念的火爆,以 ChatGPT、通义大模型为代表,市场上涌现了一系列商用或者开源的大模型,同时基于大语言模型(LLM )以及 AI 生态技术栈构建的应用以及业务场景也越来越多。 众所周知,LLM 包含数十亿甚至万亿级别的参数,其架构复杂,训练和推理涉及大量计算资源。这些特性使得它们在实际应用中可能表现出...
View Article搞大模型,没有重排工具怎么行?
在说重排工具之前,我们要先了解一下 RAG。 检索增强生成(RAG)是一种新兴的 AI 技术栈,通过为大型语言模型(LLM)提供额外的“最新知识”来增强其能力。 基本的 RAG 应用包括四个关键技术组成部分: Embedding 模型:用于将外部文档和用户查询转换成 Embedding 向量 向量数据库:用于存储 Embedding 向量和执行向量相...
View Article探讨打造「高可用架构」秘籍
背景 高可用性的文章多如牛毛,看得人眼花缭乱。今天,咱们换个花样,以终为始,来聊聊如何实现系统业务的高可用性这个宏伟目标。本文覆盖高可用架构设计、常见架构模式、高可用开发运维、大促高可用保障、业务高可用、COE复盘等方面的理念和思考。 高可用性是个宏大的主题,覆盖的领域广泛。我们要聊的,都是实实在在的...
View Article领域驱动设计之银行转账:Wow 框架实战
银行账户转账案例是一个经典的领域驱动设计(DDD)应用场景。 接下来我们通过一个简单的银行账户转账案例,来了解如何使用 Wow 进行领域驱动设计以及服务开发。 银行转账流程 准备转账(Prepare): 用户发起转账请求,触发 Prepare 步骤。这个步骤会向源账户发送准备转账的请求。 校验余额(CheckBalance): 源账户在收...
View Article得物AB实验平台数据驱动决策实践
一、前言 ==== 随着互联网的普及和移动互联网的爆发式增长,在经历了多年的高速发展后,增长速度逐渐放缓,偶尔出现的新互联网红利也逐渐消失。企业在进入平稳期后,竞争模式逐渐转变为存量竞争,往往难以通过功能迭代产生明显的收益。因此,小步快走的模式越来越受到欢迎。当产品的用户量级达到较高水平,如上千万或上亿...
View ArticleSQL AI 工具太贵用不起?开源的更有性价比
在提高效率这方面,AI 的能力是毋庸置疑的。为了更高效地管理和分析数据库中的数据,很多 SQL AI 工具应运而生。 简单一点的 SQL AI 工具可以扩展传统的SQL查询功能,根据自然语言输入自动生成 SQL 查询,这降低了使用SQL的门槛,即使非技术用户也能轻松地查询数据库。高级一点的工具还能够自动完成数据清洗、转换和归一...
View Article发布“k8s 生态周报”这件小事,他坚持了 5 年
8 月 15 日至 16 日,GOTC 2024 将在上海张江科学会堂盛大开启。云原生技术专家、Kong Senior Software Engineer 张晋涛将以“云原生与微服务架构”论坛出品人的身份出席大会,并以《云原生时代下企业流量治理的机遇和挑战》为题发表演讲。 这是张晋涛第二次参加 GOTC 大会。三年前参加首届 GOTC 大会时,开源中国 OSCH...
View ArticleGOTC 2024 即将开启,LLMOps 最佳实践论坛议程大曝光
2024 年 8 月 15 日至 16 日,全球开源技术峰会 GOTC 2024 将于上海张江科学会堂盛大开启。 GOTC 2024 与上海浦东软件园联合举办,结合了 “GOTC(全球开源技术峰会)” 与 “GOGC(全球开源极客嘉年华)”两大活动品牌。 大会由一个主论坛领航,两大高峰论坛以及六大专题论坛并行,全面深入探讨 AI、数据库、云原生等前...
View Article议程出炉!GOTC 2024 深度解码云原生与微服务架构未来趋势
2024 年 8 月 15 日至 16 日,全球开源技术峰会 GOTC 2024 将于上海张江科学会堂盛大开启。 GOTC 2024 与上海浦东软件园联合举办,结合了 “GOTC(全球开源技术峰会)” 与 “GOGC(全球开源极客嘉年华)” 两大活动品牌。 大会由一个主论坛领航,两大高峰论坛以及六大专题论坛并行,全面深入探讨 AI、数据库、云原生等前...
View Article一文详解 JuiceFS 读性能:预读、预取、缓存、FUSE 和对象存储
> 在高性能计算场景中,往往采用全闪存架构和内核态并行文件系统,以满足性能要求。随着数据规模的增加和分布式系统集群规模的增加,全闪存的高成本和内核客户端的运维复杂性成为主要挑战。 > > JuiceFS,是一款全用户态的云原生分布式文件系统,通过分布式缓存大幅提升 I/O 吞吐量,并使用成本较低的对象存储来完成数据...
View Article打造 AI 与开源技术盛宴,GOTC 2024 共探未来发展新趋势
人工智能领域正以前所未有的速度蓬勃发展,新技术、新应用层出不穷。 8 月 15 日至 16 日,GOTC 2024 将在上海张江科学会堂盛大开启。GOTC 2024 与上海浦东软件园联合举办,并GOTC 2024 与上海浦东软件园联合举办,结合了 “GOTC(全球开源技术峰会)” 与 “GOGC(全球开源极客嘉年华)” 两大活动品牌,旨在打造一场全...
View ArticleGOTC 2024 全球开源人才及教育论坛议程出炉!
Linux 基金会发布的《2023年技术人才现状报告》显示,由于全球经济持续存在不确定性, 超过50%的受访组织已经调整了它们的招聘计划。然而,尽管存在这些挑战,企业对熟练技术人才的需求依然旺盛,特别是在云计算/容器、网络安全和人工智能/机器学习等新领域。 值得注意的是,在这些领域,众多主流技术都已经开源。在开源...
View Article实战从零开始实现Raft|得物技术
一、前言 ==== Raft算法是一种分布式一致性算法,由Diego Ongaro和John Ousterhout在2013年提出。它主要用于分布式系统中,保证系统中的数据在多个节点间保持一致性。 Raft算法被广泛应用于众多分布式系统中,尤其是在需要强一致性保证的场景中,例如: * **分布式存储系统**:如ETCD、Consul等键值存储系统,它们利用R...
View Article全天议程曝光!GOTC 2024 高峰论坛大咖云集,聚焦两大精彩主题
2024 年 8 月 15 日至 16 日,全球开源技术峰会 GOTC 2024 将于上海张江科学会堂盛大开启。 GOTC 2024 与上海浦东软件园联合举办,结合了 “GOTC(全球开源技术峰会)” 与 “GOGC(全球开源极客嘉年华)” 两大活动品牌。 大会由一个主论坛领航,两大高峰论坛以及六大专题论坛并行,全面深入探讨 AI、数据库、云原生等前...
View ArticleGOTC 2024 携手钻石赞助商百度, 共同促进开源技术发展与创新
2024 年 8 月 15 日至 16 日,全球开源技术峰会 GOTC 2024 将于上海张江科学会堂盛大开启。其中百度作为本次大会的钻石赞助商,彰显了其在开源行业中的引领地位。作为全球互联网领军企业,百度始终积极拥抱开源,持续推动技术进步。
View Article30+ 参展企业,2024 全球开源技术峰会 GOTC x GOGC 全球开源极客嘉年华即将重磅开启
8 月 15 日至 16 日,2024 全球开源技术峰会 GOTC x GOGC 全球开源极客嘉年华将于上海张江科学会堂举行。 大会由上海浦东软件园与开源中国联合主办,包含开幕式暨主论坛、高峰论坛、平行论坛、行业沙龙、青年黑客松等一系列活动,聚焦开源生态与商业化、AIGC 产业产业前沿、开源数据库与 AI 协同创新、LLMOps 最佳实践、...
View Article极客与技术,产业与生态,年度开源峰会 2024 GOTC x GOGC 即将开幕
8 月 15 日至 16 日,2024 全球开源技术峰会 GOTC x GOGC 全球开源极客嘉年华将于上海张江科学会堂举行。 全球开源技术峰会(Global Open-source Technology Conference,简称 GOTC)始于 2021 年,是面向全球开发者的开源技术盛会。 GOTC 2024 与上海浦东软件园联合举办,并结合 “GOTC(全球开源技术峰会)” 与 “GOG...
View Article2.3.6版本发布!Apache SeaTunnel Zeta引擎迎来新架构!
![file](https://oscimg.oschina.net/oscnet/up-3d3d976796213faef6a2d4c5030aee5c9e4.png) Apache SeaTunnel 2.3.6 版本于近日正式发布,社区期待的 SeaTunnel Zeta Master/Worker...
View ArticleJuiceFS 在多云架构中加速大模型推理
在大模型的开发与应用中,数据预处理、模型开发、训练和推理构成四个关键环节。本文将重点探讨推理环节。在之前的博客中,社区用户 [BentoML](https://juicefs.com/zh-cn/blog/user-stories/bentoml-use-juicefs-accelerate-large-model-loading)...
View Article多线程请求,在浏览器模拟请求间隔4次发现多线程下载的文件就是0字节(原文件大小46M)了。这是为什么?怎么修改?
package com.dahuatech.scene.config; import org.apache.commons.lang3.concurrent.BasicThreadFactory; import org.springframework.beans.factory.annotation.Autowired; import...
View Article多线程请求,在浏览器模拟请求间隔4次发现多线程下载的文件就是0字节(原文件大小46M)了。这是为什么?怎么修改?
package com.dahuatech.scene.config; import org.apache.commons.lang3.concurrent.BasicThreadFactory; import org.springframework.beans.factory.annotation.Autowired; import...
View Article基于 TDMQ for Apache Pulsar 的跨地域复制实践
## 导语 自2024年9月6日起,TDMQ Pulsar 版专业集群支持消息、元数据两级跨地域复制功能,消息级复制解决用户全球地域的数据统一归档问题,元数据级复制提供解决用户核心业务跨地域容灾的场景。 ## 用户在跨地域场景遇到的疑问和挑战 在跨地域相关场景下,通常有两大类原始需求: ### 跨地域容灾 TDMQ Pulsar 版目前支持...
View Article我对智能体和业务场景结合设计
软件工程师罗小东,多年架构和平台产品设计经验,目前在研究平台产品与新技术结合中。 前言 目前大模型能达到的场景和优化的效果,基本上能达到专家的效果。在微调试下回复和表达可以已经可以达到中高级产出,这里主要针对的是行业深度场景结合的设计方案。 概述 这里的设计原则依然是定位在辅助人的角色上,核心节点需要...
View Article三大操作系统入场,谁能掌控 Rust 的未来?
“Rust 进入内核是有真正的技术原因的,比如内存安全。这就是为什么 Rust 很适合用于内核开发。”两年前,Linux 创始人 Linus Torvalds 道出了他的看法,并表示下一个版本将能看到 Rust 基础设施,也就是在 2022 年 11 月前后。 但是随着 Linux 6.0 版本的到来,并没有出现支持 Rust 的代码。 “实际上,我希望我们能够获...
View Article大模型时代的企业转型:RAG技术的进化与挑战
从2023年起开始火爆的大语言模型(Large Language Model,LLM),如GPT/Gemini/通义千问/GLM/文心一言/豆包等,经过了一年多的比拼和进化,已经几乎涵盖了所有通用性、常识性的知识和理解力; 与之同时,更多传统行业的企业也被吸引到大语言模型的生态中,探索新AI技术为企业带来实质性的变革。与大模型厂商对通用能力的...
View Article【直播预告】快十年了,Rust 怎么还没有取代 C/C++?
最近几年,Rust 的发展势头极为强劲。在《Stack Overflow 2024 年度开发者调查报告》中,毫不意外地,Rust 仍然是开发者最喜爱的语言,连续九年稳坐榜首。 Rust,这个因内存安全出名的编程语言,从 1.0 版本发布开始算起,距今已经快十年时间了。每年都有人跳出来说,Rust 将取代 C/C++。 这么说不是没有来由。 不论是 ...
View ArticleLinux 创始人 Linus:C 很简单,但易犯错,而 Rust 不是
9月16日,在维也纳举行的Linux 基金会开源峰会上,Linus谈到了关于Rust和C语言的争论。 “C语言,归根结底,是一个非常简单的语言。这是我享受C语言的原因,也是很多C语言程序员喜欢它的原因。也正因为它简单,所以也非常容易犯错。而Rust不是。”在与Verizon开源部门负责人Dirk Hohndel的现场对话中,Linus 对Rust 的安...
View Article“将所有C++程序用Rust重写,这不可能”
快十年了,Rust 怎么还没有取代C++?在9月27日的【开源漫谈】第14期节目中,开源中国OSChina邀请到了马全一、冯洋以及张汉东三位 Rust 专家深入讨论了这一问题。 马全一:江湖人称 “马道长”,目前在华为负责Rust编程语言在国内的生态建设和推广,曾运营openEuler项目并推动Docker容器社区的发展。 张汉东:资深Rust专家...
View ArticleRust 学起来太难?是被江湖上的兄弟们夸大了
在 9 月 27 日直播的【开源漫谈】第 14 期节目中,开源中国 OSChina 邀请到了马全一、冯洋以及张汉东三位 Rust 专家就“快十年了,Rust 怎么还没有取代 C++”这一话题展开讨论。期间,他们对网上盛传的“Rust 学习曲线陡峭”这一观点进行了反驳,并对如何着手学习Rust提出了简单可行的建议。 马全一:江湖人称 “马道长”...
View ArticleRust 编译后的二进制文件,比 C++还大,这······
在 9 月 27 日直播的【开源漫谈】第 14 期节目中,开源中国 OSChina 邀请到了马全一、冯洋以及张汉东三位 Rust 专家就“快十年了,Rust 怎么还没有取代 C++”这一话题展开讨论。 直播期间,有网友指出,使用Rust编译生成的二进制文件,在端侧设备(比如嵌入式设备、物联网设备等)上比使用C++编译生成的二进制文件要大很...
View Article10 月 26 日 北京 | 招募操作系统技术、鸿蒙系统与 App开发者
如果你对操作系统技术、鸿蒙系统与 App 开发感兴趣,那么,一定不要错过 10 月 26 日在北京举办的这场活动! 我们精心筹备了一场属于 OpenHarmony 开发者的盛会——1024 开发秀:OpenHarmony 开源组件开发者 Meetup。这是一场汇聚智慧、分享经验、探索未来的技术交流盛宴,将邀请网络、权限与安全、工具、UI、多媒体、驱...
View Article集群“脑裂”问题
# 一、定义 “脑裂”问题,就是指在同一个集群中的不同节点,对集群的状态有了不同理解。体现在集群中不同的节点对于master的选择出现了分歧,出现了多个master竞争 # 二、“脑裂“问题剖析 ## (一)“脑裂”问题成因 - 网络问题 集群间的网络延迟导致一些节点访问不到master,认为master挂掉了从而选举出新的master,并...
View Article