虚拟线程原理及性能分析|得物技术
一、背景 二、为了提升吞吐性能,我们所做的优化 1. 串行模式 2. 线程池 +Future 异步调用 3. 线程池 +CompletableFuture 异步调用 三、一请求一线程的模型 四、虚拟线程 1. 线程术语定义 2. 虚拟线程定义 3. 虚拟线程创建 4. 虚拟线程实现原理 5. 虚拟线程内存占用评估 6. 虚拟线程的局限及使用建议 7. 虚拟线程适用场景 五、虚拟线程压测性能分析 1. 测试流程 2. 衡量指标 3. Tomcat+普通线程池 4. WebFlux 5. Tomcat+虚拟线程池 六、总结
消息代理与事件代理:何时使用它们
消息和事件流生态系统包括许多解决方案,每个解决方案都有许多不同的方面需要考虑和熟悉。 重要的是我们要睁大眼睛进入每个生态系统,并对这些不同的范式有清晰的理解。它们将对我们工程师的日常生活(有时是夜间生活)产生重大影响。
应用性能设计的圣杯:读写扩散的概念与实践
本文结合这三年作者在钉钉见到的应用架构,以及一些业界的实践分享,整理出一篇关于应用读写扩散设计的维基。应用程序员常常自嘲 "CRUD Boy"。也确实, 在应用开发的过程中,主要是在和各式各样的存储打交道,比如 MySQL, Tair, Odps 或者搜索引擎等等,应用主要时间都是在执行各种各样的 "SQL", 而不是在运行业务逻辑。
序列推荐系统的前世今生
本文大致按照时间顺序,介绍序列推荐模型的发展历程。首先,本文介绍非深度学习方法用于序列推荐的尝试。然后,本文介绍Transformer诞生之前的基于深度学习方法的序列推荐模型,随后介绍基于Transformer架构和其变种的序列推荐模型,最后介绍近期将对比学习用于序列推荐的尝试。
服务器数据恢复—云服务器mysql数据库表数据被delete的数据恢复案例
云服务器数据恢复环境: 阿里云ECS网站服务器,linux操作系统+mysql数据库。 云服务器故障: 在执行数据库版本更新测试时,在生产库误执行了本来应该在测试库执行的sql脚本,导致生产库部分表被truncate,还有部分表内的少量数据被delete。该实例内数据表均采用innodb作为默认存储引擎。
之家广告索引系统设计
在处理海量广告库中的数据时,广告index索引系统需要快速筛选出几个或几十个符合条件的广告,以满足实时性要求。本文将对车智投index索引系统的设计进行简要介绍,以帮助大家更好地了解广告索引召回的处理过程。
应用性能设计的圣杯:读写扩散的概念与实践
本文结合这三年作者在钉钉见到的应用架构,以及一些业界的实践分享,整理出一篇关于应用读写扩散设计的维基。
合成复用原则详解篇(附图解及源码实例)
就是对合成复用原则的概念、背景、作用、UML、示例、应用,以及组合和继承的选型思路的全面详解。
携程后台低代码平台的探究与实践
PGClowcode平台是携程市场内容PGC团队搭建的主要用于后台页面开发的低代码平台,第一版于23年3月上线,截至10月平台已经拥有100+用户,在平台上开发了130+个应用和180+个页面。本文将主要介绍团队采用低代码平台的背景、方案调研、落地过程中遇到的问题以及解决方案,同时也大致介绍了该低代码平台提供的能力。
火山引擎云原生存储加速实践
在火山引擎相关的业务中绝大部分的机器学习和数据湖的算力都运行在云原生 K8s 平台上。云原生架构下存算分离和弹性伸缩的计算场景,极大的推动了存储加速这个领域的发展,目前业界也衍生出了多种存储加速服务。但是面对计算和客户场景的多样性,还没有一个业界标准的存储加速实践,很多用户在做选型的时候也面临着诸多困惑。
程度:面向多重合规要求的主机安全运营探索与实践
近日,青藤联合创始人程度,在全国信息安全标准化技术委员会2023年第二次“标准周”的“网络安全产品与服务研讨会”上,发表了《面向多重合规要求的主机安全运营探索与实践》主题演讲。
视频直播场景下对象存储的应用
视频直播场景下对象存储的应用
安居客房产在工具构造上的提效实践
低代码技术是近两年新兴的软件开发方式,它通过提供一套功能组件,通过对组件进行拖拽操作和简单配置来实现软件的开发和发布,与传统编程方式相比,低代码技术可以帮助开发者更快速,更简单的开发出相应的工具,降低软件开发的难度和成本。
多点对多点网络模式的网络特征
多点对多点网络模式是指网络中有多个节点,每个节点可以与所有其他节点通信的网络架构。与传统的点对点和点对多点网络模式相比,多点对多点网络模式具有以下网络特点:点对点通信:在多点对点网络模式下,每个节点可以直接与其他节点通信,实现点对点数据传输。这使得网络中的信息流更加灵活,节点之间的通信成本更低。分散结构:多点网络模式不依赖于单个中心节点,而是由多个节点组成。这种分散的特点使网络更加可靠和可扩展,即
抖音大型直播的画质优化实践
随着抖音内容生态的不断丰富,越来越多的大型赛事在抖音平台进行直播,世界杯/春晚/亚运会等各项赛事节目引来大量用户观看。卡塔尔世界杯期间,抖音提供的稳定高质直播画面为观众带来了完美的观赛体验,决赛的 PCU 高达 3700W+。
彩虹桥架构演进之路-性能篇|得物技术
一年前的《彩虹桥架构演进之路》侧重探讨了稳定性和功能性两个方向。在过去一年中,尽管业务需求不断增长且流量激增了数倍,彩虹桥仍保持着零故障的一个状态,算是不错的阶段性成果。而这次的架构演进,主要分享一下近期针对性能层面做的一些架构调整和优化。其中最大的调整就是 Proxy-DB 层的线程模式从 BIO 改造成了性能更好的 NIO。下面会详细介绍一下具体的改造细节以及做了哪些优化。
阿里双11秒杀如何设计?
秒杀是电商业务里的标志性事件,马上双11秒杀又要开始了。这样的典型高并发场景会遇见什么样的挑战呢,然后又是如何来解决的呢?本篇我就来重点详解秒杀的设计
如何实现异步通知的重试机制
工作中经常要和第三方做对接,比如支付、电子合同等系统。操作成功之后,第三方会发送异步的通知,返回最终的处理结果,使用异步而不是使用同步通知,是为了加快系统响应速度,防止线程阻塞。任务处理完成后通过异步的通知,发送给对应的服务端。之前对接微信支付,完成支付后,微信发送一个异步通知给服务端,服务端根据支付通知修改状态,通知规则看到以下的一段话。
移动端APP组件化架构实践
本文通过以下问题来介绍组件化这种开发架构的思想和常见的一些问题: 为什么需要组件化 组件化过程中会遇到的挑战和选择 如何维护一个高质量的组件化项目
服务器数据恢复—Zfs文件系统下误删除数据的恢复案例
一台zfs文件系统服务器,管理员误操作删除服务器上的数据。