每一名优秀开发者都想成为架构师。架构,又名软件架构,是有关软件整体结构与组件的抽象描述,用于指导大型软件系统各个方面的设计。

加载中
置顶
发表了博客
05/20 14:01

方正证券-金融科技云原生微服务建设实践

本文根据2024年3月30日在北京举办的“云原生✖️AI时代的微服务架构与技术实践”CloudWeGo 技术沙龙北京站活动方正证券 金融科技工程院高级研发工程师刘义的演讲《金融科技 Go 微服务建设实践》整理而来。 概述:本文将详细介绍方正证券金融科技工程院在云原生微服务建设实践经验,分享包含 3 个方面: 微服务治理工作 微服务可观测性工作 微服务接口管理 上述能力统一集成到了方正公司的夸克开发平台上。 方正证券微服务建设实... 展开更多

收藏 1
0
置顶
架构师
发表了博客
今天 09:32

领域驱动设计之银行转账:Wow 框架实战

银行账户转账案例是一个经典的领域驱动设计(DDD)应用场景。 接下来我们通过一个简单的银行账户转账案例,来了解如何使用 Wow 进行领域驱动设计以及服务开发。 银行转账流程 准备转账(Prepare): 用户发起转账请求,触发 Prepare 步骤。这个步骤会向源账户发送准备转账的请求。 校验余额(CheckBalance): 源账户在收到准备转账请求后,会执行校验余额的操作,确保账户有足够的余额进行转账。 锁定金额(LockAmount): 如果... 展开更多

收藏 0
0
置顶
发表了博客
07/12 15:51

探讨打造「高可用架构」秘籍

背景 高可用性的文章多如牛毛,看得人眼花缭乱。今天,咱们换个花样,以终为始,来聊聊如何实现系统业务的高可用性这个宏伟目标。本文覆盖高可用架构设计、常见架构模式、高可用开发运维、大促高可用保障、业务高可用、COE复盘等方面的理念和思考。 高可用性是个宏大的主题,覆盖的领域广泛。我们要聊的,都是实实在在的团队实践经验和教训。 本文不包含异地多活等议题。现在,让我们一起踏上这场关于高可用性的探索之旅吧! 为... 展开更多

收藏 31
2
置顶
发表了博客
07/11 17:11

搞大模型,没有重排工具怎么行?

在说重排工具之前,我们要先了解一下 RAG。 检索增强生成(RAG)是一种新兴的 AI 技术栈,通过为大型语言模型(LLM)提供额外的“最新知识”来增强其能力。 基本的 RAG 应用包括四个关键技术组成部分: Embedding 模型:用于将外部文档和用户查询转换成 Embedding 向量 向量数据库:用于存储 Embedding 向量和执行向量相似性检索(检索出最相关的 Top-K 个信息) 提示词工程(Prompt engineering):用于将用户的问题和检索到的... 展开更多

收藏 7
0
置顶
发表了博客
07/11 17:17

实现 LLM 应用的可观测,难在哪里?

随着生成式 AI 概念的火爆,以 ChatGPT、通义大模型为代表,市场上涌现了一系列商用或者开源的大模型,同时基于大语言模型(LLM )以及 AI 生态技术栈构建的应用以及业务场景也越来越多。 众所周知,LLM 包含数十亿甚至万亿级别的参数,其架构复杂,训练和推理涉及大量计算资源。这些特性使得它们在实际应用中可能表现出意料之外的行为,同时也带来了性能、安全性和效率等方面的挑战。 LLM参数量不断增长 (图片来源:https://w... 展开更多

收藏 3
0
置顶
发表了博客
07/04 16:53

2024 年了,云原生与微服务架构还有什么新鲜事儿?

8 月 15 日至 16 日,GOTC 2024 将于上海张江科学会堂盛大开启。GOTC 2024 与上海浦东软件园联合举办,并结合 “GOTC(全球开源技术峰会)” 与 “GOGC(全球开源极客嘉年华)”,旨在打造一场全新的开源盛会。 大会精心策划了一系列精彩纷呈的平行论坛,如全球开源人才及教育论坛、LLMOps 最佳实践、硬核 AI 技术创新与实践、AI Workshop:大模型开发者实操营、开源数据库与 AI 协同创新、云原生与微服务架构、多模态大模型的应... 展开更多

收藏 1
0
置顶
发表了博客
07/04 10:35

Disruptor在撮合引擎的实践|得物技术

一、Disruptor的简介 ============== Disruptor是基于事件异步驱动模型实现的,采用了RingBuffer数据结构,支持高并发、低延时、高吞吐量的高性能工作队列,它是由英国外汇交易公司LMAX开发的,研发的初衷是解决内存队列的延迟问题,不同于我们常用的分布式消息中间件RocketMQ、Kafaka,而Disruptor是单机的、本地内存队列,类似JDK的ArrayBlockingQueue等队列。 Disruptor的使用场景 -------------- * 加密货币交易撮合引擎 * ... 展开更多

收藏 1
0
置顶
发表了博客
07/03 16:04

吵了6年的数据库话题,会在冯若航这里终结吗?

谈及在 k8s/Docker 上部署数据库服务时,业界意见分歧显著,形成了一场围绕“数据库容器化”的持久辩论。 一方面,支持者强调 k8s 在提供环境无关性、自动化运维及资源优化方面的潜力;另一方面,反对者则担忧数据库的特殊需求与 k8s 的设计理念存在冲突,可能导致安全、性能及成本效率上的挑战。 本文跟踪了一下这场持续六七年的辩论,从 Mikhail Chinkov 与王渊命的早期论战,到王竹锋、姜承尧对于在 k8s 上部署数据库的必要性... 展开更多

收藏 5
2
置顶
发表了博客
06/18 19:02

缓存有大key?你得知道的一些手段

   背景: 最近系统内缓存CPU使用率一直报警,超过设置的70%报警阀值,针对此场景,需要对应解决缓存是否有大key使用问题,扫描缓存集群的大key,针对每个key做优化处理。 以下是扫描出来的大key,此处只放置了有效关键信息。    图1 大key介绍: 想要解决大key,首先我们得知道什么定义为大key。 什么是大KEY: 大key 并不是指 key 的值很大,而是 key 对应的 value 很大(非常占内存)。此处为中间件给出的定义: ... 展开更多

收藏 2
0
置顶
发表了博客
06/20 14:42

Go-Job让你的任务调度不再繁琐

**一、背景** 在选择任务调度平台时,团队遇到了一些实际的问题。现有的开源项目如XXL-Job、Elastic-Job,虽然功能强大,但主要是围绕Java设计,而我们团队主要使用Go语言进行开发。这使得我们在集成和使用这些工具时遇到了诸多不顺。经过深入的调研和讨论,决定开发一个适合Go语言的任务调度框架,以满足我们的特定业务需求。于是,Go-Job应运而生。 为了让大家有个全面的了解,接下来主要探讨它的架构设计和功能特性。 本文的... 展开更多

收藏 0
0
置顶
发表了博客
06/20 10:16

手把手案例!怎样拿开源的 GPT-2 训练小模型,挑战 GPT-3.5

当前业内普遍认可的一个观点是,大模型(LLM)参数规模越大,其性能越强,表现得越像人类。 然而,一个只有 5 亿参数的小模型(SLM),在做文档摘要任务时,其表现却超过了 GPT-3.5。这听起来很不可思议。官方曾公布 GPT-3.5 的参数量为 1750 亿,是该小模型的 300 倍。 这是怎么做到的? 基于“大数据、大算力、强算法”的大模型的大规模预训练已经成为了一项极其烧钱的竞赛,有能力加入这场竞赛的玩家并不多。因此,越来越多的... 展开更多

收藏 2
0
置顶
发表了博客
06/18 10:35

LangChain 与 Semantic Kernel,大模型开发应用的框架,都用上了吗?

论起当前流行的 AI 应用开发开源框架, LangChain 和 Semantic Kernel 必然榜上有名。不仅提供了强大的工具和框架,同时都代表了 AI 技术发展的前沿。 LangChain 的创始人是 Harrison Chase,在 2022 年 10 月将其开源。最初,它只是 Chase 的一个业余爱好项目,但迅速发展成为颇受开发者欢迎的开源框架和工具包。尤其是在 ChatGPT 发布一个月后,LangChain 在 GitHub 上获得了大量关注,目前 star 数已经超过了 8.7 万。与此同... 展开更多

收藏 2
0
置顶
高级程序员
发表了博客
06/11 19:00

v5内存分配器性能优化

背景 在之前我们提到采用自定义的内存分配器来解决防止频繁 make 导致的 gc 问题。gc 问题本质上是 CPU 消耗,而内存分配器本身如果产生了大量的 CPU 消耗那就得不偿失。经过测试初代内存分配器实现过于简单,产生了很多 CPU 消耗,因此必须优化内存分配器的性能。 性能消耗原因 在内存的分配和回收上,使用了简单的循环检测,当内存碎片较多的时候,循环查找消耗非常可观 查找可分配的内存 找到回收的内存偏移 性能优化 很快在... 展开更多

收藏 0
0
置顶
发表了博客
06/03 18:14

海量消息下王者荣耀在 TDMQ Pulsar 的实践

关于王者荣耀 ------ 《王者荣耀》是由腾讯游戏开发的一款运营在Android、IOS平台上的MOBA类手游,属于多人联机在线竞技类游戏,于2015年11月26日在Android、IOS平台上正式公测。上线以来受到广大手游玩家的热爱,目前该游戏在手游排行中处于TOP 1的位置。作为中国最火爆的手机游戏,"王者荣耀",拥有亿级用户体量,千万级日活用户。 而如此庞大用户体量带来的,也是服务端的挑战。如在游戏中产生的海量消息和数据交互,好友上线... 展开更多

收藏 2
0
置顶
发表了博客
05/28 10:08

Bookie存储架构源码剖析|得物技术

一、Pulsar存储架构简析 Pulsar作为新一代MQ中间件,在底层架构设计上充分贯彻了存算分离的思想,broker与Bookeeper两个组件独立部署,前者负责流量的调度、聚合、计算,后者负责数据的存储,这也契合了云原生下k8s大行其道的时代背景。Bookeeper又名Bookie ,是一个单独的存储引擎。在组件关系上,broker深度依赖Bookie,内部集成了 Bookie的client端,broker和Bookie之间基于TCP通信,使用protobuf。 Pulsar整体架构 消息流从... 展开更多

收藏 2
1
置顶
发表了博客
05/23 10:09

DDD领域驱动设计理论|得物技术

一、前言 领域驱动设计简称“DDD”,一套“知易行难”的方法论。同时我所工作的这些年,尤其在某大厂做初创项目的那段时间,经常会产生各式各样的“思想碰撞”,特别在设计中台基建类领域时,为了保证充足的扩展性和稳定性,都要好好的“碰撞”一下。虽然在设计过程中,每个人的想法不尽相同,但是最终达成一致的那一刻,每个人的技术思想都会得到提升。 对于DDD,我的观点是,它是一套非常优秀的能提升个人认知高度的方法论。注... 展开更多

收藏 2
0
置顶
发表了博客
05/19 23:10

线程安全使用 HashMap 的四种技巧

这篇文章,我们聊聊线程安全使用 HashMap 的四种技巧。 ![](https://www.javayong.cn/pics/cache/securityhashmap.png) # 1方法内部:每个线程使用单独的 HashMap 如下图,tomcat 接收到到请求后,依次调用控制器 Controller、服务层 Service 、数据库访问层的相关方法。 每次访问服务层方法 serviceMethod 时,都会在方法体内部创建一个单独的 HashMap , 将相关请求参数拷贝到 HashMap 里,然后调用 DAO 方法进行数据库操作。 ... 展开更多

收藏 2
0
置顶
发表了博客
05/14 19:15

腾讯宣布混元文生图大模型开源: Sora 同架构,可免费商用

5月14日,腾讯宣布旗下的混元文生图大模型全面升级并对外开源,目前已在 Hugging Face 平台及 Github 上发布,包含模型权重、推理代码、模型算法等完整模型,可供企业与个人开发者免费商用。 这是业内首个中文原生的 DiT 架构文生图开源模型,支持中英文双语输入及理解,参数量15亿。升级后的混元文生图大模型采用了与 sora 一致的 DiT 架构,不仅可支持文生图,也可作为视频等多模态视觉生成的基础。 评测数据显示,最新的腾讯... 展开更多

收藏 0
0
置顶
发表了博客
05/06 16:29

《2024年中国企业级SaaS行业研究报告》发布

近日,艾瑞咨询发布《2024年中国企业级SaaS行业研究报告》,主要内容包括中国企业级SaaS行业的市场趋势、企业实践、行业动态、资本动向、投融资情况、上市情况以及企业应用实践等多个方面的分析和预测。 以下是核心内容的概要: 市场趋势: 2023年中国企业级SaaS市场规模达到888亿元,同比增长13.0%。 预计未来三年市场增速将稳定在15%-20%,复合增速约15%。 企业实践: SaaS应用在企业中的渗透率不断提升。 大型企业倾向于定制... 展开更多

收藏 2
0
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
返回顶部
顶部