- 博客(285)
- 收藏
- 关注
原创 MYSQL如何设计可以动态扩容缩容的分库分表方案?面试题剖析6
这个是你必须面对的一个事儿,就是你已经弄好分库分表方案了,然后一堆库和表都建好了,基于分库分表中间件的代码开发啥的都好了,测试都 ok 了,数据能均匀分布到各个库和各个表里去,而且接着你还通过双写的方案咔嚓一下上了系统,已经直接基于分库分表方案在搞了。那么现在问题来了,你现在这些库和表又支撑不住了,要继续扩容咋办?这个可能就是说你的每个库的容量又快满了,或者是你的表数据量又太大了,也可能是你每个库的写并发太高了,你得继续扩容。这都是玩儿分库分表线上必须经历的事儿。
2025-02-15 10:18:16
1303
1
原创 AutoConsis:UI内容一致性智能检测3
在流程上,对于每一个UI目标区域,AutoConsis利用OCR提取所有可识别的字符,随后将分词的结果与CoT示例进行拼合构成Prompt,最后从LLM(AutoConsis的实验部分调用GPT-3.5-Turbo完成)的输出中获取一致性检验所需的关键信息。以下介绍工具的设计过程。对于营销会场页而言,如UI区域识别流程图所示:我们将一个会场页的UI截图送入识别模型,并提供一个商品卡片和对应的文本描述作为检索词,该多模态模型会根据检索词从经UI组件分析处理过的会场页中筛选出近似的商品卡片。
2025-02-15 10:18:08
919
1
原创 超大规模数据库集群保稳系列:数据库攻防演练建设实践7
而随机无通知演练功能,就是希望建设这样的能力,可以在非特定时间、非特定集群、非特定场景进行故障演练,在一定程度上填补了故障演练的空白,也是故障演练平台向混沌工程演进的一个里程碑。第二部分是演练任务生成,有了演练计划后,我们按演练计划随机搭配生成演练任务并进行周知,和常规演练最大不同是我们不会周知演练的具体时间(会周知演练集群、场景),主要是为了模拟故障发生的随机性。第三部分是演练任务执行,它完全复用我们常规故障演练的功能,也可以在演练前取消、演练中终止,演练后可以自动恢复整个集群的拓扑。
2025-02-15 10:18:01
859
原创 2024快手高频笔试编程题:二叉搜索树中第 K 小的元素(中等)
给定一个二叉搜索树的根节点 root ,和一个整数 k ,请你设计一个算法查找其中第 k 小的元素(从 1 开始计数)。示例 1:输入:root = [3,1,4,null,2], k = 1输出:1示例 2:输入:root = [5,3,6,2,4,null,null,1], k = 3输出:3提示:树中的节点数为 n。进阶:如果二叉搜索树经常被修改(插入/删除操作)并且你需要频繁地查找第 k 小的值,你将如何优化算法?
2025-02-15 10:17:53
1561
2
原创 Kafka+RabbitMQ+ActiveMQ看看消息队列设计精要7
消息队列已经逐渐成为企业IT系统内部通信的核心手段。它具有低耦合、可靠投递、广播、流量控制、最终一致性等一系列功能,成为异步RPC的主要手段之一。当今市面上有很多主流的消息中间件,如老牌的ActiveMQ、RabbitMQ,炙手可热的Kafka,阿里巴巴自主开发的Notify、MetaQ、RocketMQ等。本文不会一一介绍这些消息队列的所有特性,而是探讨一下自主开发设计一个消息队列时,你需要思考和设计的重要方面。过程中我们会参考这些成熟消息队列的很多重要思想。
2025-02-15 10:17:46
1407
4
原创 2024快手高频笔试编程题:二叉搜索树中第 K 小的元素(中等)
给定一个二叉搜索树的根节点 root ,和一个整数 k ,请你设计一个算法查找其中第 k 小的元素(从 1 开始计数)。示例 1:输入:root = [3,1,4,null,2], k = 1输出:1示例 2:输入:root = [5,3,6,2,4,null,null,1], k = 3输出:3提示:树中的节点数为 n。进阶:如果二叉搜索树经常被修改(插入/删除操作)并且你需要频繁地查找第 k 小的值,你将如何优化算法?
2025-02-15 10:17:36
1409
2
原创 Android静态代码扫描效率优化与实践11
FindBugs是一个静态分析工具,它检查类或者JAR 文件,通过Apache的BCEL库来分析Class,将字节码与一组缺陷模式进行对比以发现问题。FindBugs自身定义了一套缺陷模式,目前的版本3.0.1内置了总计300多种缺陷,详细可参考官方文档。FindBugs作为一个扫描的工具集,可以非常灵活的集成在各种编译工具中。接下来,我们主要分析在Gradle中FindBugs的相关内容。
2025-02-15 10:17:28
951
3
原创 Hadoop YARN:调度性能优化实践5
本文主要介绍了美团点评Hadoop YARN集群公平调度器的性能优化实践。做性能优化,首先要定义宏观的性能指标,从而能够评估系统的性能。定义压测需要观察的细粒度指标,才能清晰看到系统的瓶颈。工欲善其事,必先利其器。高效的压力测试工具是性能优化必备的利器。优化算法的思路主要有:降低算法时间复杂度;减少重复计算和不必要的计算;并行化。性能优化是永无止境的,要根据真实业务来合理预估业务压力,逐步开展性能优化的工作。代码上线需谨慎,做好防御方案。
2025-02-15 10:17:20
794
1
原创 iOS 覆盖率检测原理与增量代码测试覆盖率工具实现1
以上是我们在代码开发质量方面做的一些积累和探索。通过对覆盖率生成、解析逻辑的探究,我们揭开了覆盖率检测的神秘面纱。开发阶段的增量代码覆盖率检测,可以帮助开发者聚焦变动代码的逻辑缺陷,从而更好地避免线上问题。iOS 覆盖率检测原理与增量代码测试覆盖率工具实现 - 美团技术团队日常开发Guava提效工具库核心实用指南梳理_guava string转list-CSDN博客从ES的JVM配置起步思考JVM常见参数优化_es jvm配置-CSDN博客。
2025-02-15 10:17:12
826
原创 人工智能短视频内容理解与生成技术在美团的创新实践9
以上分享了美团在视频标签、视频封面与剪辑、视频细粒度像素级编辑技术领域,通过与业务场景的结合期望为商家和用户提供更加智能的信息展示和获取方式。未来,短视频技术应用方面,在美团丰富的业务场景包括本地生活服务、零售电商,都会发挥更大的潜在价值。视频理解技术方面,多模态自监督训练,对于缓解标注数据依赖,提升模型在复杂业务场景的泛化性能方面非常有价值,我们也在做一些尝试和探索。Hadoop YARN:调度性能优化实践 - 美团技术团队。
2025-02-15 10:17:04
894
1
原创 Spring Boot引起的“堆外内存泄漏”排查及经验总结2
因为strace命令中已经显示申请内存的线程ID。直接使用命令jstack pid去查看线程栈,找到对应的线程栈(注意10进制和16进制转换)如下:strace申请空间的线程栈这里基本上就可以看出问题来了:MCC(美团统一配置中心)使用了Reflections进行扫包,底层使用了Spring Boot去加载JAR。因为解压JAR使用Inflater类,需要用到堆外内存,然后使用Btrace去追踪这个类,栈如下:btrace追踪栈然后查看使用MCC的地方,发现没有配置扫包路径,默认是扫描所有的包。
2025-02-15 10:16:55
914
2
原创 LruCache在美团DSP系统中的应用演进5
LruCache采用的缓存算法为LRU(Least Recently Used),即最近最少使用算法。这一算法的核心思想是当缓存数据达到预设上限后,会优先淘汰近期最少使用的缓存对象。LruCache内部维护一个双向链表和一个映射表。链表按照使用顺序存储缓存数据,越早使用的数据越靠近链表尾部,越晚使用的数据越靠近链表头部;映射表通过Key-Value结构,提供高效的查找操作,通过键值可以判断某一数据是否缓存,如果缓存直接获取缓存数据所属的链表节点,进一步获取缓存数据。
2025-02-15 10:16:45
617
2
原创 Spring Data REST 远程代码执行漏洞(CVE-2017-8046)分析与复现12
2009年9月Spring 3.0 RC1发布后,Spring就引入了SpEL(Spring Expression Language)。对于开发者而言,引入新的工具显然是令人兴奋的,但是对于运维人员,也许是噩耗的开始。类比Struts 2框架,会发现绝大部分的安全漏洞都和ognl脱不了干系。尤其是远程命令执行漏洞,占据了多少甲方乙方工程师的夜晚/周末,这导致Struts 2越来越不受待见。因此,我们有理由相信Spring引入SpEL必然增加安全风险。事实上,过去多个Spring CVE都与其相关,如等。
2025-02-15 10:16:36
937
原创 zookeeper 都有哪些使用场景?思考2
那么此时就可以使用 zookeeper 分布式锁,一个机器接收到了请求之后先获取 zookeeper 上的一把分布式锁,就是可以去创建一个 znode,接着执行操作;这个其实是 zookeeper 很经典的一个用法,简单来说,就好比,你 A 系统发送个请求到 mq,然后 B 系统消息消费之后处理了。,一旦 B 系统处理完了就修改 zookeeper 那个节点的值,A 系统立马就可以收到通知,完美解决。那个 znode,结果发现自己创建不了,因为被别人创建了,那只能等着,等第一个机器执行完了自己再执行。
2025-02-15 10:16:21
987
7
原创 Spark Streaming + Elasticsearch构建App异常监控平台2
如果在使用App时遇到闪退,你可能会选择卸载App、到应用商店怒斥开发者等方式来表达不满。但开发者也同样感到头疼,因为崩溃可能意味着用户流失、营收下滑。为了降低崩溃率,进而提升App质量,App开发团队需要实时地监控App异常。一旦发现严重问题,及时进行热修复,从而把损失降到最低。App异常监控平台,就是将这个方法服务化。
2025-02-15 10:16:04
971
2
原创 Spring MVC注解故障追踪记1
使用注解并不一定会引起错误,但是注解要使用规范,不能乱用。如果通过注解注入,属性值最好也要通过注解方式注入;注解扫描功能虽然很强大、很方便,但是要注意区分扫描范围及过滤特定注解;单元测试能通过的原因:我们一般只指定加载一个配置文件作为测试环境,类实例只会出现一个,故能测试通过;最好最重要的一点就是在使用任何框架时,最好按”Best Practice”规范,避免出现一些莫名其妙的问题。
2025-01-03 00:20:43
568
2
原创 Spring MVC注解故障追踪记2
使用注解并不一定会引起错误,但是注解要使用规范,不能乱用。如果通过注解注入,属性值最好也要通过注解方式注入;注解扫描功能虽然很强大、很方便,但是要注意区分扫描范围及过滤特定注解;单元测试能通过的原因:我们一般只指定加载一个配置文件作为测试环境,类实例只会出现一个,故能测试通过;最好最重要的一点就是在使用任何框架时,最好按”Best Practice”规范,避免出现一些莫名其妙的问题。
2025-01-03 00:20:40
769
4
原创 Spring MVC注解故障追踪记3
使用注解并不一定会引起错误,但是注解要使用规范,不能乱用。如果通过注解注入,属性值最好也要通过注解方式注入;注解扫描功能虽然很强大、很方便,但是要注意区分扫描范围及过滤特定注解;单元测试能通过的原因:我们一般只指定加载一个配置文件作为测试环境,类实例只会出现一个,故能测试通过;最好最重要的一点就是在使用任何框架时,最好按”Best Practice”规范,避免出现一些莫名其妙的问题。
2025-01-03 00:20:37
422
2
原创 Spring MVC注解故障追踪记4
使用注解并不一定会引起错误,但是注解要使用规范,不能乱用。如果通过注解注入,属性值最好也要通过注解方式注入;注解扫描功能虽然很强大、很方便,但是要注意区分扫描范围及过滤特定注解;单元测试能通过的原因:我们一般只指定加载一个配置文件作为测试环境,类实例只会出现一个,故能测试通过;最好最重要的一点就是在使用任何框架时,最好按”Best Practice”规范,避免出现一些莫名其妙的问题。
2025-01-03 00:20:34
399
1
原创 Spring MVC注解故障追踪记5
使用注解并不一定会引起错误,但是注解要使用规范,不能乱用。如果通过注解注入,属性值最好也要通过注解方式注入;注解扫描功能虽然很强大、很方便,但是要注意区分扫描范围及过滤特定注解;单元测试能通过的原因:我们一般只指定加载一个配置文件作为测试环境,类实例只会出现一个,故能测试通过;最好最重要的一点就是在使用任何框架时,最好按”Best Practice”规范,避免出现一些莫名其妙的问题。
2025-01-03 00:20:31
678
原创 Spring MVC注解故障追踪记6
使用注解并不一定会引起错误,但是注解要使用规范,不能乱用。如果通过注解注入,属性值最好也要通过注解方式注入;注解扫描功能虽然很强大、很方便,但是要注意区分扫描范围及过滤特定注解;单元测试能通过的原因:我们一般只指定加载一个配置文件作为测试环境,类实例只会出现一个,故能测试通过;最好最重要的一点就是在使用任何框架时,最好按”Best Practice”规范,避免出现一些莫名其妙的问题。
2025-01-03 00:20:28
922
原创 Spring MVC注解故障追踪记7
使用注解并不一定会引起错误,但是注解要使用规范,不能乱用。如果通过注解注入,属性值最好也要通过注解方式注入;注解扫描功能虽然很强大、很方便,但是要注意区分扫描范围及过滤特定注解;单元测试能通过的原因:我们一般只指定加载一个配置文件作为测试环境,类实例只会出现一个,故能测试通过;最好最重要的一点就是在使用任何框架时,最好按”Best Practice”规范,避免出现一些莫名其妙的问题。
2025-01-03 00:20:26
533
2
原创 Spring MVC注解故障追踪记8
使用注解并不一定会引起错误,但是注解要使用规范,不能乱用。如果通过注解注入,属性值最好也要通过注解方式注入;注解扫描功能虽然很强大、很方便,但是要注意区分扫描范围及过滤特定注解;单元测试能通过的原因:我们一般只指定加载一个配置文件作为测试环境,类实例只会出现一个,故能测试通过;最好最重要的一点就是在使用任何框架时,最好按”Best Practice”规范,避免出现一些莫名其妙的问题。
2025-01-03 00:20:23
767
2
原创 Spring MVC注解故障追踪记9
使用注解并不一定会引起错误,但是注解要使用规范,不能乱用。如果通过注解注入,属性值最好也要通过注解方式注入;注解扫描功能虽然很强大、很方便,但是要注意区分扫描范围及过滤特定注解;单元测试能通过的原因:我们一般只指定加载一个配置文件作为测试环境,类实例只会出现一个,故能测试通过;最好最重要的一点就是在使用任何框架时,最好按”Best Practice”规范,避免出现一些莫名其妙的问题。
2025-01-03 00:20:20
1017
3
原创 Spring MVC注解故障追踪记10
使用注解并不一定会引起错误,但是注解要使用规范,不能乱用。如果通过注解注入,属性值最好也要通过注解方式注入;注解扫描功能虽然很强大、很方便,但是要注意区分扫描范围及过滤特定注解;单元测试能通过的原因:我们一般只指定加载一个配置文件作为测试环境,类实例只会出现一个,故能测试通过;最好最重要的一点就是在使用任何框架时,最好按”Best Practice”规范,避免出现一些莫名其妙的问题。
2025-01-03 00:20:15
664
1
原创 Spring MVC注解故障追踪记11
使用注解并不一定会引起错误,但是注解要使用规范,不能乱用。如果通过注解注入,属性值最好也要通过注解方式注入;注解扫描功能虽然很强大、很方便,但是要注意区分扫描范围及过滤特定注解;单元测试能通过的原因:我们一般只指定加载一个配置文件作为测试环境,类实例只会出现一个,故能测试通过;最好最重要的一点就是在使用任何框架时,最好按”Best Practice”规范,避免出现一些莫名其妙的问题。
2025-01-03 00:20:11
995
1
原创 Spring MVC注解故障追踪记12
使用注解并不一定会引起错误,但是注解要使用规范,不能乱用。如果通过注解注入,属性值最好也要通过注解方式注入;注解扫描功能虽然很强大、很方便,但是要注意区分扫描范围及过滤特定注解;单元测试能通过的原因:我们一般只指定加载一个配置文件作为测试环境,类实例只会出现一个,故能测试通过;最好最重要的一点就是在使用任何框架时,最好按”Best Practice”规范,避免出现一些莫名其妙的问题。
2025-01-03 00:20:10
620
4
原创 Spring MVC注解故障追踪记13
使用注解并不一定会引起错误,但是注解要使用规范,不能乱用。如果通过注解注入,属性值最好也要通过注解方式注入;注解扫描功能虽然很强大、很方便,但是要注意区分扫描范围及过滤特定注解;单元测试能通过的原因:我们一般只指定加载一个配置文件作为测试环境,类实例只会出现一个,故能测试通过;最好最重要的一点就是在使用任何框架时,最好按”Best Practice”规范,避免出现一些莫名其妙的问题。
2025-01-03 00:20:05
895
4
原创 Spring MVC注解故障追踪记14
使用注解并不一定会引起错误,但是注解要使用规范,不能乱用。如果通过注解注入,属性值最好也要通过注解方式注入;注解扫描功能虽然很强大、很方便,但是要注意区分扫描范围及过滤特定注解;单元测试能通过的原因:我们一般只指定加载一个配置文件作为测试环境,类实例只会出现一个,故能测试通过;最好最重要的一点就是在使用任何框架时,最好按”Best Practice”规范,避免出现一些莫名其妙的问题。
2025-01-03 00:20:02
985
3
原创 Spring MVC注解故障追踪记15
使用注解并不一定会引起错误,但是注解要使用规范,不能乱用。如果通过注解注入,属性值最好也要通过注解方式注入;注解扫描功能虽然很强大、很方便,但是要注意区分扫描范围及过滤特定注解;单元测试能通过的原因:我们一般只指定加载一个配置文件作为测试环境,类实例只会出现一个,故能测试通过;最好最重要的一点就是在使用任何框架时,最好按”Best Practice”规范,避免出现一些莫名其妙的问题。
2025-01-03 00:20:00
768
1
原创 Spark Streaming + Elasticsearch构建App异常监控平台3
如果在使用App时遇到闪退,你可能会选择卸载App、到应用商店怒斥开发者等方式来表达不满。但开发者也同样感到头疼,因为崩溃可能意味着用户流失、营收下滑。为了降低崩溃率,进而提升App质量,App开发团队需要实时地监控App异常。一旦发现严重问题,及时进行热修复,从而把损失降到最低。App异常监控平台,就是将这个方法服务化。
2025-01-02 08:56:30
942
3
原创 Spark Streaming + Elasticsearch构建App异常监控平台4
如果在使用App时遇到闪退,你可能会选择卸载App、到应用商店怒斥开发者等方式来表达不满。但开发者也同样感到头疼,因为崩溃可能意味着用户流失、营收下滑。为了降低崩溃率,进而提升App质量,App开发团队需要实时地监控App异常。一旦发现严重问题,及时进行热修复,从而把损失降到最低。App异常监控平台,就是将这个方法服务化。
2025-01-02 08:56:28
818
5
原创 Spark Streaming + Elasticsearch构建App异常监控平台5
如果在使用App时遇到闪退,你可能会选择卸载App、到应用商店怒斥开发者等方式来表达不满。但开发者也同样感到头疼,因为崩溃可能意味着用户流失、营收下滑。为了降低崩溃率,进而提升App质量,App开发团队需要实时地监控App异常。一旦发现严重问题,及时进行热修复,从而把损失降到最低。App异常监控平台,就是将这个方法服务化。
2025-01-02 08:56:26
1009
5
原创 Spark Streaming + Elasticsearch构建App异常监控平台6
如果在使用App时遇到闪退,你可能会选择卸载App、到应用商店怒斥开发者等方式来表达不满。但开发者也同样感到头疼,因为崩溃可能意味着用户流失、营收下滑。为了降低崩溃率,进而提升App质量,App开发团队需要实时地监控App异常。一旦发现严重问题,及时进行热修复,从而把损失降到最低。App异常监控平台,就是将这个方法服务化。
2025-01-02 08:56:24
1048
1
原创 Spark Streaming + Elasticsearch构建App异常监控平台7
如果在使用App时遇到闪退,你可能会选择卸载App、到应用商店怒斥开发者等方式来表达不满。但开发者也同样感到头疼,因为崩溃可能意味着用户流失、营收下滑。为了降低崩溃率,进而提升App质量,App开发团队需要实时地监控App异常。一旦发现严重问题,及时进行热修复,从而把损失降到最低。App异常监控平台,就是将这个方法服务化。
2025-01-02 08:56:22
537
3
原创 Spark Streaming + Elasticsearch构建App异常监控平台8
如果在使用App时遇到闪退,你可能会选择卸载App、到应用商店怒斥开发者等方式来表达不满。但开发者也同样感到头疼,因为崩溃可能意味着用户流失、营收下滑。为了降低崩溃率,进而提升App质量,App开发团队需要实时地监控App异常。一旦发现严重问题,及时进行热修复,从而把损失降到最低。App异常监控平台,就是将这个方法服务化。
2025-01-02 08:56:20
604
2
原创 Spark Streaming + Elasticsearch构建App异常监控平台9
如果在使用App时遇到闪退,你可能会选择卸载App、到应用商店怒斥开发者等方式来表达不满。但开发者也同样感到头疼,因为崩溃可能意味着用户流失、营收下滑。为了降低崩溃率,进而提升App质量,App开发团队需要实时地监控App异常。一旦发现严重问题,及时进行热修复,从而把损失降到最低。App异常监控平台,就是将这个方法服务化。
2025-01-02 08:56:17
762
1
原创 Spark Streaming + Elasticsearch构建App异常监控平台10
如果在使用App时遇到闪退,你可能会选择卸载App、到应用商店怒斥开发者等方式来表达不满。但开发者也同样感到头疼,因为崩溃可能意味着用户流失、营收下滑。为了降低崩溃率,进而提升App质量,App开发团队需要实时地监控App异常。一旦发现严重问题,及时进行热修复,从而把损失降到最低。App异常监控平台,就是将这个方法服务化。
2025-01-02 08:56:15
760
3
原创 Spark Streaming + Elasticsearch构建App异常监控平台11
如果在使用App时遇到闪退,你可能会选择卸载App、到应用商店怒斥开发者等方式来表达不满。但开发者也同样感到头疼,因为崩溃可能意味着用户流失、营收下滑。为了降低崩溃率,进而提升App质量,App开发团队需要实时地监控App异常。一旦发现严重问题,及时进行热修复,从而把损失降到最低。App异常监控平台,就是将这个方法服务化。
2025-01-02 08:56:13
716
1
原创 Spark Streaming + Elasticsearch构建App异常监控平台12
如果在使用App时遇到闪退,你可能会选择卸载App、到应用商店怒斥开发者等方式来表达不满。但开发者也同样感到头疼,因为崩溃可能意味着用户流失、营收下滑。为了降低崩溃率,进而提升App质量,App开发团队需要实时地监控App异常。一旦发现严重问题,及时进行热修复,从而把损失降到最低。App异常监控平台,就是将这个方法服务化。
2025-01-02 08:56:11
798
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人