公司:58同城
58同城(NYSE:WUBA),简称58,是一家位于中国北京市的生活服务及分类信息网站,以在地服务为主,举凡租房、招聘、交友、水电、二手交易等等,由北京五八信息技术有限公司拥有,创始人是姚劲波,成立于2005年12月12日。该网站是中文最大的生活信息网站,该网站的口号是“一个神奇的网站”。
反序列化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可以根据设计师的创意和需求,快速生成具有特定风格和特征的图标。
转转度量平台技术建设实践
度量平台的核心在于系统化地收集研发过程中的关键数据,并以直观的方式展示,帮助使用者更好地理解和分析团队的交付价值、效率和质量。平台不仅提供了可信赖的观测体系,还致力于发现团队潜在问题,并为业务改进提供依据和支持。
虽然关于度量指标构建和指标设计原则的文章已有很多,但针对度量平台系统落地的实践经验却不多见。本文将分享转转在度量平台技术建设方面的实际做法和积累的经验。
亿级高性能通知系统实践
在一个公司中,消息通知系统是不可或缺的一部分,每个团队都可能开发了一套独自的消息通知组件,随着公司业务团队的日益增长,维护繁琐、排查问题复杂、开发成本等问题就会凸显出来。(例如我们的企微群通知,由于消息内容不同模板不同,一个项目内使用的组件就有3种,还不包含其他通知部分。)
基于这样的背景,我们就迫切需要开发一套通用的消息通知系统。那么如何高效地处理大量的消息请求以及服务稳定性的保障,成为了开发者需要面对的重要挑战。本文将探讨如何构建高性能的消息通知系统。
空间换时间-将查询数据性能提升100倍的计数系统实践
在信息爆炸的时代,计数系统几乎无处不在,从社交平台上的点赞量、评论数,到电商平台的浏览量、订单数量,再到内容网站的访问量统计,计数系统为各种业务提供了实时、准确的数据支持。这些数据不仅是简单的数字,它们可以反映出用户对内容的兴趣、商品的受欢迎程度、市场的需求变化,甚至可以用于预测未来趋势。对于企业和平台而言,计数系统能够提供一个有效的量化依据,帮助优化产品、制定营销策略、提升用户体验,因此它成为了数据统计和用户分析的核心工具。
spring声明式事务源码详解
维护公司之前的后台管理系统,在开发自测时发现mock接口失败,数据库仍插入成功。经排查发现代码中没有指定具体事务,在添加注解@Transactional后事务按预期生效回滚。为此,本文通过分析源码来介绍下事务失效的根源。
接口从4秒到200毫秒-小小的日志竟能引发如此问题
我们的业务需对接不同渠道以完成线上回收业务,然而各渠道皆有其独特的质检标准。为此,我们需对质检标准予以统一化处理,将外部标准转化为内部可识别的质检标准。在此场景下,我们提供了标准映射功能,将外部质检项与内部质检项进行关联。此次问题源于映射关系极为复杂,在导入映射关系后,发现映射逻辑耗时严重,最终定位至日志打印问题。接下来,让我们一同探究如何定位到日志问题以及为何输出大量日志会致使接口变慢。
瑶光运营系统分发引擎缓存优化实践
APP运营系统是一个复杂但至关重要的体系,旨在确保 APP 能够有效地吸引用户、留存用户并实现商业目标。
多任务学习在转转主搜精排的应用
在搜推系统中,随着场景建模目标越来越丰富,我们越来越多的希望模型可以兼顾多个任务的建模,多任务学习(multi-task learning)逐渐走入了人们的视野,成为了当前精排模型的主流方向之一。在转转的搜索场景中,用户的每个行为背后都有其特定的考虑因素,这也导致了不同行为之间流量效率的差异。下图展示了用户在详情页所看到的信息,其中包括收藏、加购、咨询客服等行为按钮,这些行为为精排模型预测用户的最终决策——是否购买——提供了重要的参考。基于此,我们在建模时需要全面考虑用户的决策链路,以实现最优的模型效果。
SpringBoot的脚本引擎初始化也会导致OOM?你意想不到的坑点
1 前言2 问题背景3 问题定位3.1 内存基本情况分析3.2 一次失败的日志内存占用消除3.3 一个奇怪的类:StringSequence?3.4 StringSequence消失了?3.5 谁在使用脚本引擎?3.6 终显庐山真面目4 深度分析4.1 内存占&
巧房SaaS数据治理实践
巧房SaaS系统,作为业界领先的一站式房产中介解决方案,提供全面的运营管理支持,以适应多样化和复杂的业务需求。该系统为员工提供了一个集成平台,用于执行一系列关键作业,包括房客跟进、客户带看、房源实勘、交易订单管理、营销房源发布、业绩查询、行程量数据统计、财务结算等。