首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏服务端技术杂谈

    重构系统的套路-明确重构目的

    重构系统的套路系列: 本篇说下重构系统的套路中的,明确重构的目的。 ? 我们进行系统重构会抱着不同的目的,比如为了系统稳定性,为了系统中某些功能负载能力更强,为了系统更便于维护,或是为了系统更便于持续集成提升RD和QA的人效。 上面这个虽然是我自己在系统梳理过程中意淫出来的场景,但我不得不再我进行类似系统重构之前,在代码逻辑角度,功能业务角度,缓存集群,mq集群,DB集群等角度考虑,我这次重构可能造成的问题,只有我们在系统重构之间能够想的比黑天鹅来的更快我们才能对系统做更多的保护 如果系统重构的目的在于可维护性,和上面两点的区别在于,周期不可操之过急。 我们需要在整个业务角度去理解系统,同时对未来系统所承接的业务有所评估,这样我们才能设计出一个面向未来的系统。 基于以上四点不同的重构需求,我们采取的方案和执行的角度完全不同,系统变大了之后,稳定第一。

    2.4K30发布于 2018-09-21
  • 来自专栏Java架构师学习

    如何做系统重构

    明确当前系统的状态 决定要执行重构后,首要做的任务,并不是立刻动手执行重构,而是对当前的架构状态有清晰的了解,如果开发当前系统的同事还在本公司,一定要拉着同事好好的讨论一下,作者给大家讲讲当时的思路,比我们闷头看代码理解还是要强不少的 除此之外,通过研究当前系统,才能记录目前系统的性能基准,为未来评估重构的效果做准备。 特别是重构工作被一个团队来执行的时候,所有的成员对重构的目标必须要达成一致,开发成员内部,还是开发和测试之间,谨防重构不到位或者过度重构4. 重构中必须建立或者维护业务数据流 大家有任何想法和建议,请加我的JAVA架构进阶群:554355695 现在任何一个后台系统,都会通过日志系统建立必要的业务流转记录,比如,我这几年前后带的几支团队,都会建立各类业务埋点 在重构过程中或者重构后,我们能用数据来验证重构的效果,能不断的对系统进行优化。 5.

    1.6K50发布于 2018-05-04
  • 来自专栏Python基础、进阶与实战

    Pygame入门4——使用精灵类重构

    前面3章已经完成了游戏,这章使用OOP风格重构游戏,然后给游戏添加一点音乐。 用精灵类重构 如果你完成了前3章的代码,应该会发现代码很乱。想更改某个代码?查找困难、修改起来更困难! 考虑使用OOP重构代码,将游戏元素用类组织起来。 下面,我们用精灵重构玩家的属性和方法:继承精灵类,并重写其方法。 __init__(self) 在初始化方法中,初始化素材,初始image和rect。

    99410编辑于 2022-12-06
  • 来自专栏杨龙飞前端

    vue重构后台管理系统调研

    Q4要来了,我来这家公司已经一个季度了,通过对公司前端框架的整体认识,对业务的一些认识,发现,这些东西也都是可以重构,无论是v2,还是v3的代码。 进入重构,首先的问题是,后端渲染,为什么要做后端渲染,因为有时候会做google统计,seo优化,之类的,必须用后端渲染才行,普通的spa就不行了,而且语言包那一块需要去服务器拉去数据后才能生成文件,必须有后端服务做支撑 但是这样搭载过之后,我发现,后台管理系统里会有一些统计数据的工具,这时候可能会引入vue的图标框架,但是我不能确定vue的图表插件能否支持ssr 纠结之中我还是放弃了,如果以后有小的项目可以试一下。

    1.8K10发布于 2018-10-11
  • 来自专栏java思维导图

    大型系统重构的步骤梳理

    作者:Yomut 原文:https://my.oschina.net/yomut/blog/714497 目前正在参与公司一个核心大系统重构工作。本文梳理一下大型系统重构的一些步骤和心得。 系统除了要应付大量的并发请求,还必须快速支持各种业务需求,必须对系统进行大重构。 备注: 下面的一些步骤和方式是根据我自己的项目的实际列出的。 数据库重构 前期的项目,由于赶进度,并没有充足的时间设计表,导致各种冗余表、大表、大量的冗余的字段、扩展性差的表。所以重构系统的时候,可以先从表开始,通过对当前业务的梳理,重新把表整理一下。 1. 可以合并的字段,尽量进行合并,例如,想表示一个商品是旅游商品,就没必要新增一个类似is_travel的字段,可以直接在商品类型product_type中增加一个枚举值即可; 4. 数据库重构,一般由专门的数据架构师来处理。数据架构师必须和业务架构师紧密配合。 数据迁移 由于对数据库进行了重构,那么旧数据库的数据必须完整的迁移过来。

    1.8K20发布于 2018-08-16
  • 用LangChain重构客服系统:腾讯云向量数据库+GPT-4o实战

    “代码是逻辑的诗篇,架构是思想的交响”一、传统客服系统痛点与重构价值 在智能客服领域,传统方案常面临响应延迟高、定制成本大、知识更新滞后等痛点。 本文以某金融客户真实场景为例,分享如何通过 LangChain框架 + 腾讯云向量数据库(Tencent Cloud VectorDB) + GPT-4o 重构客服系统,实现响应速度压至500ms内,综合成本下降 GPT-4o: 推理效率提升100%,成本降低50%支持Function Calling精准触发工具链二、系统架构设计:三层解耦与组件协同2.1 整体架构图2.2 核心组件选型对比组件选型方案优势说明性能指标对话引擎 (腾讯云混元Turbo兼容接口)llm = ChatOpenAI( model_name="gpt-4o", base_url="https://api.tencent.com/v1/chat Search", description="调用此工具查询产品政策或技术文档" ), Tool.from_function( func=order_api, # 业务系统

    42700编辑于 2025-07-24
  • 来自专栏Debug日志

    用LangChain重构客服系统:腾讯云向量数据库+GPT-4o实战

    “代码是逻辑的诗篇,架构是思想的交响” 一、传统客服系统痛点与重构价值 在智能客服领域,传统方案常面临响应延迟高、定制成本大、知识更新滞后等痛点。 本文以某金融客户真实场景为例,分享如何通过 LangChain框架 + 腾讯云向量数据库(Tencent Cloud VectorDB) + GPT-4o 重构客服系统,实现响应速度压至500ms内,综合成本下降 GPT-4o 推理效率提升100%,成本降低50% 支持Function Calling精准触发工具链 二、系统架构设计:三层解耦与组件协同 2.1 整体架构图 2.2 核心组件选型对比 组件 选型方案 优势说明 性能指标 对话引擎 GPT-4o+LangChain Agent 支持动态工具调用链 意图识别F1=0.93 向量数据库 腾讯云VectorDB 内置Embedding减少ETL成本 检索延迟 description="调用此工具查询产品政策或技术文档" ), Tool.from_function( func=order_api, # 业务系统

    43010编辑于 2025-10-13
  • 来自专栏用户1337634的专栏

    订单交易系统代码重构

    订单交易系统随着业务的发展,逻辑也越来越多,需要进行重构,之前已经把交易模块拆分了,目前还需要再把订单系统进一步拆分 当前的问题 订单相关代码都放在一起,随着业务发展,逻辑越来越复杂 履约和查询( 导出)对系统要求不同,不方便统一优化 重构方法 分离订单履约和查询相关逻辑代码 批量查询和导出相关逻辑,不再查询业务MySQL,改为查询ElasticSearch ps: 重构时,要注意哪些业务是基本固定的 ,哪些是经常变动的,需要把变动的逻辑尽量放到一起 参考 重构:改善饿了么交易系统的设计思路

    96310发布于 2021-07-20
  • 来自专栏云计算行业

    用领域驱动设计驱动系统重构

    为什么系统功能似乎没有增加多少,但是代码却变得越来越庞大?如果系统重构是不可避免的,应该用什么样的设计思想和方法来引导我们进行系统重构。 《用领域驱动设计驱动系统重构》通过一个交通出行互联网应用的重构案例,展示随着功能不断迭代开发,系统开始腐坏变味的时候,如何利用领域驱动设计的方法驱动系统进行重构

    75530编辑于 2023-05-29
  • 来自专栏杨建荣的学习笔记

    运维系统重构的设计思路

    最近要对已有的运维平台做重构工作,为什么要做重构,主要还是因为各种各样的原因,需要对已有的问题改进,修复历史遗留包袱。这个时间迟早都会来到,还不如自己自觉一点,提前发现问题,提前修复。 整个重构的核心思路就是对已有的平台做前后端分离,方向主要是对已有的后端设计做改进。 运维前后端分离的开发流程 ? 如果把重构比作一桌子菜,那么重构需要做的具体的事情,我分为了几类: 业务重构,脚本管理,API管理,通用日志管理。 业务重构 l 对已有逻辑的梳理 l 去除已有项目中的冗余设计 l 多数据源的支持,设计DAO层 l 对于项目中的SQL语句调用,统一使用DAO层来对接 前后端分离的设计和改进 l 前后端开发流程 l 前端技术部分改进

    79120发布于 2018-07-26
  • 来自专栏服务端技术杂谈

    重构系统的套路-微服务化

    对于一个系统来说,用户的身份必须是统一的。 权限稍微复杂一点。和身份不同,权限通常分成两种类别: 功能权限和数据权限。

    57640发布于 2018-07-23
  • 来自专栏服务端技术杂谈

    重构系统的套路-提高并发能力

    提高系统并发能力,总结起来有三点:异步,缓存,并行。 对于老系统需要在业务进行梳理,如果业务场景中不关心返回值,这样完全可以做成异步。 梳理系统的代码,将很多同步的for,while的循环改成基于Future的同步模型,提升整体并行度,达到一定的性能提升。

    76420发布于 2018-07-23
  • 来自专栏phodal

    系统重构的未来:重构工具 Coca 一周年

    也因此《系统重构与迁移指南》(https://migration.ink/) 成为了系统重构不可多选的材料,Google 『系统重构』 和 『重构工具』会有惊喜。 ? ? 系统的必然之路:系统重构 or 重写 没啥说的,部分的系统都是要被重构或者重写的。那么另外一部分呢?他们被淘汰了——要么是产品,要么是公司,笑~。 系统变成了一个大泥球,需求已经越来越难以实现: ? 真相就是这么简单。如果系统不被指南,和进行频繁的代码级重构的话,那么系统被取代的速度就更快了。 系统重构的未来 在 Coca 编写完成之后,我发布了《系统重构与迁移指南》一份短小、精悍的重构手册。 但是,对于系统重构来说,基本上很少有工具可以直接能支撑现有的系统,哪怕是 Coca 也是有限的支持。主要原因就是:大部分的内部系统都绑定了组织中的模式。

    84340发布于 2020-11-05
  • 来自专栏测试开发干货

    接口测试平台代码实现56:首页重构-4

    <textarea name="" id="ts_response_body" disabled="disabled" style="background-color: #e<em>4</em>f3f5

    1.6K40编辑于 2022-05-19
  • 来自专栏Grace development

    老项目重构手记之用户系统

    受邀来一起重构公司的老项目 概述 重构首先要注意几个点 – 重构后功能的可扩展性 – 业务互相依赖的复杂度 – 脱离本身的业务进行重构重构后的代码可读性与可维护性 – 性能的提升 以上几点是重构注意的地方也是重构的目的 分析 本次重构的项目运营了三年之久,用户及业务量也上不来。 至于重构的真正原因不清楚。 用户注册量:107470 日PV:1000+ 非常的惨淡 关于用户ID与其他业务绑定仅仅是单纯的存储用户ID进行绑定,类似与评论,购买等。 根据需求分表,现在所有的第三方授权都放到一个表里了 选型 前期重构要求速度要快。所以只能选择世界上最好的语言。 迭代 重构并不是一言一语,几行代码或者一个大佬的方案就可以解决的。实际重构也是一个开发的过程。在不断的迭代中,将重构完成的部分补回到业务中。 致谢 感谢你看到这里,希望本篇文章可以帮到你。

    83120发布于 2018-09-18
  • 来自专栏京程一灯

    重构-代码整洁之道TypeScript版》第4

    ---- 今天让我们来继续第4天,老规矩先来回顾一下昨天我们都实现了哪些: Consolidate Conditional Expression(合并条件表达式) Consolidate Duplicate (图片:梅里雪山) 什么是重构 ? 简单理解就是不改变软件可观察行为的前提下,改善其内部结构,以提高理解性和降低修改成本。 ---- 1. :一个分层良好的系统,应该将处理用户界面和处理业务逻辑的代码分开。若果你遇到的代码是以两层方式开发,业务逻辑被内嵌在用户的界面之中,你就有必要将行为分离出来,其中重要的任务就是函数的分解和搬移。 4. Encapsulate Collection(封装集合) 描述?:让一个函数返回该集合的一个只读副本,并在这个类中提供添加、移除集合元素的函数。 动机? 每一次我们不会给大家写过多的重构规则,力求每天用几分钟时间真正去理解了重构

    59310发布于 2020-08-04
  • 重构业务系统考虑的方案】

    快速重构系统需要以下几个步骤: 分析系统:首先,对现有系统进行彻底的分析,了解现有系统的架构、代码结构、功能和性能等方面的问题。这将帮助你确定需要重构的部分和优先级。 这些目标可能包括提高系统性能、增强系统安全性、简化代码结构等。 优化设计:根据重构目标,对系统的设计进行优化。这可能包括解耦各个模块、引入新的设计模式、重构数据库结构等。 重构代码:根据重构目标和优化设计,逐步重构系统的代码。这可能包括重命名变量和函数、简化代码逻辑、提取重复的代码块为函数等。 进行测试:在重构过程中,要进行充分的测试,确保重构后的系统仍然能够正常运行,并且能够满足重构目标。 以上是快速重构系统的一般步骤,具体的重构过程可能根据系统的实际情况而有所不同。重构需要高度的技术能力和认真的执行力,同时要注意在重构过程中保持系统的稳定性和可用性。

    19110编辑于 2025-08-29
  • 来自专栏腾讯IMWeb前端团队

    移动端重构实战系列4——进入离开动画

    ”本系列教程为实战教程,是本人移动端重构经验及思想的一次总结,也是对sandal及sheral UI的一次全方位剖析,首发在imweb和w3cplus两大站点及“前端Talk”微信公众号,其余所有标注或没有标注来源的均为转载

    63810编辑于 2022-06-29
  • 来自专栏新亮笔记

    重构业务系统,我是这样做的

    重构,是任何一个技术团队都无法绕过和回避的话题。 重构的原因有很多,可能是伴随着业务的发展与升级,系统无法快速支持需求迭代,这时就有了重构的念头,一般情况下不建议对老系统进行重构,毕竟重构是有代价的。 我最近参与了一个重构项目,接下来给大家分享下,我在重构业务系统过程中的经验总结。 1. 了解系统 接到重构任务后,不要立刻动手执行重构,而是对当前的业务流程和架构状态有个清晰的了解,如果开发过当前系统的同事还在公司,一定要拉着同事好好讨论。 我们要知道系统一定是给人用的,是给哪些人用的? 4.

    1.5K10发布于 2020-06-29
  • 来自专栏IMWeb前端团队

    移动端重构实战系列4——进入离开动画

    本文作者:IMWeb 结一 原文出处:IMWeb社区 未经同意,禁止转载 ”本系列教程为实战教程,是本人移动端重构经验及思想的一次总结,也是对sandal及sheral UI的一次全方位剖析,

    1K100发布于 2018-01-08
领券