公司:58同城
58同城(NYSE:WUBA),简称58,是一家位于中国北京市的生活服务及分类信息网站,以在地服务为主,举凡租房、招聘、交友、水电、二手交易等等,由北京五八信息技术有限公司拥有,创始人是姚劲波,成立于2005年12月12日。该网站是中文最大的生活信息网站,该网站的口号是“一个神奇的网站”。
破解代码质量密码:可维护性技术深度解析
解锁代码的“长寿秘籍”,告别技术债的无限循环。
深入剖析SQL死锁-两条SQL之间的死锁原因
在业务实现中,若数据存在则修改,不存在则插入,通常大家会选用 INSERT INTO... ON DUPLICATE KEY UPDATE 语句让数据库实现此功能。近期在进行开发批量取消预约物流的场景中,由于一个物流对应多个订单,同时取消多个物流时,接口可能会变慢。故采用了多线程,每个物流取消任务对应一个线程。然而,在测试过程中出现了意外问题,当同时取消两个物流单时发生了数据库死锁。
ToB复杂业务状态的可复用的解决方案
今天就介绍关于一个业务:状态变多、条件分支增多、状态转换规则、依赖关系变复杂,导致代码难以维护,代码可重用性和可扩展性变差这个问题,一套可复用解决方案。
58大数据:智能加速引擎的探索与演进
智能加速引擎是58大数据平台自主研发的计算系统组件,在支撑集团业务发展和平台稳定性建设方面,发挥了巨大作用。
小白也能看得懂!日志审计插件从入门到实战
本文介绍了一款基于 AOP 切面技术的日志审计插件,旨在解决系统操作审计和异常排查的问题。插件能够自动集成并支持实时分析功能。文章首先阐述了插件的背景和重要性,接着详细介绍了插件的实现,包括多个有用的 Maven 插件和框架。
MySQL核心揭秘:从查询到修改,彻底理解 Undo Log、Redo Log、Binlog 与 ACID 的关系
本文将带您深入探讨MySQL中Undo Log、Redo Log和Binlog的核心机制,全面解析它们如何协同工作以保障事务的ACID特性。从查询优化到数据修改,我们将揭示这些日志在实际应用中的具体实现方式和作用机制,帮助您全面掌握MySQL事务管理的内部原理,提升数据库设计和运维的能力。
质检数字化埋点治理探索
在24年以前,需求中关于埋点的内容,客户端开发完成后,自己自测完就结束了,缺少QA介入测试、产品验收的环节。这导致曾经出现过上报不准确、误报、漏报的现象,影响了质检业务分析和决策。 基于上述问题,经过项目组讨论并决定,针对产研的迭代需要有管理数字化埋点数据质量的机制和手段。为此,从QA侧牵引,做出了几个举措,共同将数字化埋点质量提升。
转转数仓评估体系实践
本次分享偏向于面向数仓建设、业务交付等过程中遇到的效率、质量、成本、研发等相关问题的系统性评估和治理,着重于设计思路和实践成果的展示,不涉及太多的技术细节。读者朋友可以根据自身业务场景和实际面临的问题,选择性参考并应用到实际工作中。
反序列化Payload生成框架(一)
通过自定义ClassLoader以及重新组织Payload构建逻辑,扩展Java反序列化攻击面。
深入 ReentrantLock 内部:公平锁与非公平锁之奥秘
在Java的JUC包中,提供了一个强大的锁工具ReentrantLock,在多线程编程时,我们会时常用到。而其中的公平锁与非公平锁更是有着独特的魅力和重要的作用。理解公平锁与非公平锁的区别,对于优化程序性能、确保资源的合理分配至关重要。
下面,我们将深入探讨ReentrantLock的公平锁与非公平锁,带你揭开它们的神秘面纱,掌握多线程编程的关键技巧。
Prometheus在B端门店回收系统中的应用
- 回收系统本质做的是服务平台。对外交互多,例如与渠道商、回收商的接口交互。因此与回收商接口的交互情况需要记录。
- 回收系统的内部是通过大量MQ异步驱动运行的,复杂性很高。某一个MQ执行异常很容易引起流程中断。因此记录MQ的消费情况也很重要。
性能提升 2000%!揭秘 MyBatis-Plus 批量插入的终极优化技巧
在当今互联网高速发展的时代,高并发、大数据量的处理已成为各大企业应用的常态。作为 Java 开发者,我们常常面临着如何提高数据库操作效率的挑战。MyBatis-Plus 作为一款优秀的 ORM 框架,为我们提供了简洁高效的数据库操作方式。然而,当涉及到大规模数据的批量插入时,即使使用了 saveBatch 方法,性能提升仍然有限。
本文将揭秘如何通过配置 rewriteBatchedStatements=true 和预先生成 ID 等优化策略,将 MyBatis-Plus 批量插入的性能提升 2000%,助力您的应用突破性能瓶颈!
云认证的可观测性体系建设
可观测性最早源于控制理论,是衡量一个系统从其外部输出中推断系统内部状态的一种度量。后被引申到计算机领域,用于表达系统故障的可观测性,可观测性有三大支柱:日志、链路和指标。
当我重构时,我在想些什么
在不改变代码外在行为的前提下,对代码做出修改,以改进程序的内部结构。重构是一种经千锤百炼形成的有条不紊的程序整理方法,可以最大限度地减小整理过程中引入错误的概率。本质上说,重构就是在代码写好之后改进它的设计。
AIGC图标革命:SD快速生成图标的小技巧
在数字化时代,图标不仅是界面设计中的重要组成部分,也是品牌形象和用户体验的关键因素。随着人工智能生成内容(AIGC)技术的发展,图标设计领域迎来了一场革命。Stable Diffusion(SD)作为一种先进的AI模型,能够快速生成各种风格的图标,极大地提高了设计师的工作效率和创造力。
Stable Diffusion是一种基于深度学习的图像生成模型,它能够根据文本描述生成相应的图像。这种模型的出现,使得图像生成变得更加灵活和高效。在图标设计中,SD可以根据设计师的创意和需求,快速生成具有特定风格和特征的图标。
转转度量平台技术建设实践
度量平台的核心在于系统化地收集研发过程中的关键数据,并以直观的方式展示,帮助使用者更好地理解和分析团队的交付价值、效率和质量。平台不仅提供了可信赖的观测体系,还致力于发现团队潜在问题,并为业务改进提供依据和支持。
虽然关于度量指标构建和指标设计原则的文章已有很多,但针对度量平台系统落地的实践经验却不多见。本文将分享转转在度量平台技术建设方面的实际做法和积累的经验。