开发运维

重大线上事故!三元表达式引发的空指针问题

重大线上事故!三元表达式引发的空指针问题

属实刺激,刚入职不久就遇到这种史诗级的线上 Bug,首页直接崩溃,陈年老代码爆雷,不管落到最后的底层原因是什么,我感觉主要还是上下游的链路太过复杂,治理难度比较大,牵一发而动全身。知识回顾三目运算符大家都很熟悉了: ? : 我习惯称为三元表达式,需要注意的就是:**一个三元表达式从不会既计算 ,又

醒在深海的猫 醒在深海的猫 2023-09-07
0 0 0
彻底理解什么是同步和异步!

彻底理解什么是同步和异步!

相信很多同学遇到同步异步这两个词的时候大脑瞬间就像红绿灯失灵的十字路口一样陷入一片懵逼的状态:是的,这两个看上去很像实际上也很像的词汇给博主造成过很大的困扰,这两个词背后所代表的含义到底是什么呢?我们先从工作场景讲起。苦逼程序员假设现在老板分配给了你一个很紧急并且很重要的任务,让你下班前必须完成(万

宇宙之一粟 宇宙之一粟 2023-09-07
0 0 0
图形编辑器开发:绘制图形工具

图形编辑器开发:绘制图形工具

大家好,我是前端西瓜哥。今天来介绍如何实现图形绘制工具,实现绘制任意的图形。编辑器 github 地址:https://github.com/F-star/suika线上体验:https://blog.fstars.wang/app/suika/我之前讲过如何实现工具类管理类的:《图形编辑器:工具管

捡田螺的小男孩 捡田螺的小男孩 2023-09-07
0 0 0
多屏云视听小电视渠道用户承接思考与实践

多屏云视听小电视渠道用户承接思考与实践

一、  背景概览 1、  背景云视听小电视作为一个发展迅猛的APP,是多屏部门主要产品线,会安装于各电视厂商的智能系统上。用户通过点击端外的资源位进入小电视APK(外唤)或者直接打开小电视APK(主启),这两种方式进入端内,来消费各种视频资源和信息。在此商业逻辑链条中,涉及端外投放拉新拉活获客,进入

大猫 大猫 2023-09-07
0 0 0
SpringBoot实现多数据源配置详解

SpringBoot实现多数据源配置详解

开发环境:JDK1.8+SpringBoot2.4.12+Oracle这里我们假设要使用两个数据源分别为:master和slave。pom.xml 依赖包 org.springframework.boot spring-boot-starter org.sp

三掌柜 三掌柜 2023-09-07
0 0 0
优雅处理Java与MySQL的并发访问冲突:锁与事务

优雅处理Java与MySQL的并发访问冲突:锁与事务

优雅处理Java与MySQL的并发访问冲突是开发分布式系统时需要考虑的重要问题。在多个线程或多个应用同时对MySQL数据库进行读写操作时,可能会出现数据一致性问题和性能问题。为了解决这些问题,我们可以采用锁和事务两种机制来优雅地处理并发访问冲突。一、锁机制1、行级锁和表级锁MySQL提供了行级锁和表

醒在深海的猫 醒在深海的猫 2023-09-07
0 0 0
编程速度与质量的较量:程序员如何取得平衡?

编程速度与质量的较量:程序员如何取得平衡?

在软件开发领域,程序员经常面临一个挑战:如何在保持高质量的同时提高编程速度。下面将探讨程序员在取得编程速度和质量之间的平衡时应考虑的因素,并提供一些建议来帮助他们有效地处理这个问题。一、理解速度与质量之间的关系要理解速度与质量之间的关系,程序员需要明确两者的定义和相互之间的影响。编程速度指的是完成一

泡泡 泡泡 2023-09-07
0 0 0
十个极大提高开发效率的 VS Code 技巧!

十个极大提高开发效率的 VS Code 技巧!

本文来分享 10 个极大提高开发效率的 VS Code 技巧!标签换行在VS Code中,可以在设置中搜索" Editor: Wrap Tabs"来实现选项卡换行的功能。这样,在大型项目中工作时,就不需要像在浏览器中一样滚动来查找选项卡,而是可以让选项卡自动换行,更方便地跟踪模板和组件。Timeli

大猫 大猫 2023-09-07
0 0 0
十个功能强大的 JavaScript 动画库,打造引人入胜的用户体验

十个功能强大的 JavaScript 动画库,打造引人入胜的用户体验

动画。从人群中脱颖而出、吸引访客注意力的绝佳方式。通过富有创意的物体运动和流畅的页面转换,不仅能为我们的网站增添独特的美感,还能提高用户参与度,创造令人难忘的第一印象。有了这 10 个功能强大的 JavaScript 库,创建动画再简单不过了。滚动动画、手写动画、SPA 页面转换、打字动画、颜色动画

宇宙之一粟 宇宙之一粟 2023-09-07
0 0 0
关于接口测试,你了解多少?

关于接口测试,你了解多少?

1.为什么接口测试在前?站在专业角度分析:优先做接口测试再做功能测试。企业项目基本前后端分离,后端接口优先出来,并与前端进行联调,可优先实施接口测试。待前后端联调通过后,将前端页面与后端代码组装成一个完整的系统再实施功能测试。2.接口测试模型分析但凡专业学过软件工程的同学都知道。V模型分开发阶段与测

贤蛋大眼萌 贤蛋大眼萌 2023-09-07
0 0 0
使用了Spring的事件机制真香!

使用了Spring的事件机制真香!

前言本文主要是简单的讲述了Spring的事件机制,基本概念,讲述了事件机制的三要素事件、事件发布、事件监听器。如何实现一个事件机制,应用的场景,搭配@Async注解实现异步的操作等等。希望对大家有所帮助。Spring的事件机制的基本概念Spring的事件机制是Spring框架中的一个重要特性,基于观

法医 法医 2023-09-07
0 0 0
文本识别 OCR 解决方案

文本识别 OCR 解决方案

Capture2Text 便携式 OCR 工具Capture2Text 能够使用键盘快捷键快速对屏幕的一部分进行 OCR。默认情况下,生成的文本将保存到剪贴板。支持中文、英文、法文、德文、日文、韩文、俄文、西班牙文等 90 多种语言。Capture2Text 是便携式工具,不需要安装。更新于 202

大白菜程序猿 大白菜程序猿 2023-09-07
0 0 0
为什么说 C 语言是编程语言中最不安全的?

为什么说 C 语言是编程语言中最不安全的?

C 语言是一种广泛使用的编程语言,但也被认为是编程语言中最不安全的一种。尤其是在今天,网络安全威胁不断增加的背景下,C 语言的安全问题更加突出。本文将分析 C 语言存在安全问题的原因,以及解决这些问题的方法。C 语言存在安全问题的原因(1) C 语言的使用时间比大多数语言都长,因此它的代码库更大,更

泡泡 泡泡 2023-09-07
0 0 0
使用Arthas一步步分析druid连接池Bug

使用Arthas一步步分析druid连接池Bug

最近项目组某应用将数据库由Oracle切换到了TBase,遇到了数据库连接泄露导致无法创建新连接的问题,下面是问题的分析过程。问题现象应用侧异常日志为了便于阅读,去掉了线程栈中不相关的栈帧。com.alibaba.druid.pool.GetConnectionTimeoutException: w

贤蛋大眼萌 贤蛋大眼萌 2023-09-07
0 0 0
八种十倍提升API性能的方式

八种十倍提升API性能的方式

大家好,我是猿java。提起API,作为程序员来说并不陌生,很多程序员的大部分工作都是围绕着它, 然而,有些内容被大家忽略,API的性能会直接影响产品的用户体验,比如,一个视频软件,播放1s后需要加载5s,还有人会用它吗?API背后隐藏了很多复杂的业务逻辑,如何保证API的性能,直接体现了一个程序员

LOVEHL^ˇ^ LOVEHL^ˇ^ 2023-09-07
0 0 0
Java在云环境中的水平扩展与负载均衡策略

Java在云环境中的水平扩展与负载均衡策略

随着云计算技术的快速发展,越来越多的应用程序开始迁移到云环境中。Java作为一种广泛使用的编程语言,在云环境中也扮演着重要角色。在云环境中,Java应用程序的水平扩展和负载均衡策略是两个关键问题,下面将对它们进行详细介绍。一、水平扩展水平扩展是指通过增加计算资源的数量来提高系统的处理能力和性能。Ja

共饮一杯 共饮一杯 2023-09-07
0 0 0
C++提高篇:深入理解纯虚函数和抽象类

C++提高篇:深入理解纯虚函数和抽象类

在C++中,纯虚函数和抽象类是面向对象编程中重要的概念。本文将会深入探讨这两个概念的含义、如何定义和使用它们,以及它们在实际开发中的应用。什么是纯虚函数?在C++中,纯虚函数是指在基类中声明但没有实现的虚函数。纯虚函数的定义语法如下:virtual 返回类型 函数名 (参数列表) = 0;其中 "=

穿过生命散发芬芳 穿过生命散发芬芳 2023-09-07
0 0 0
你的API够快吗?优化API性能的五种方法

你的API够快吗?优化API性能的五种方法

API(应用程序接口)是一种允许不同应用程序之间交换数据和功能的软件接口。API的性能是指API响应请求的速度和效率。API性能对于提供高质量的用户体验和服务可用性至关重要。优化API性能是开发者和测试者的一个重要任务。本文将介绍五种提高API性能的方法:方法一:分页 pagination分页是将大

三掌柜 三掌柜 2023-09-07
0 0 0
自动化测试:提高代码质量和稳定性

自动化测试:提高代码质量和稳定性

在软件开发的世界中,保证代码质量和稳定性是至关重要的任务。而自动化测试作为现代开发流程的重要组成部分,为开发团队提供了一种有效的方式来确保代码的质量、减少错误,并提高整体的可维护性。在本文中,我们将深入探讨自动化测试的优势、类型以及实施方法。什么是自动化测试?自动化测试是通过使用脚本和自动化工具,对

大猫 大猫 2023-09-07
0 0 0
五个最令人兴奋的 ES13 功能

五个最令人兴奋的 ES13 功能

ES13 (ECMAScript 2022) 已经发布很久了,并且更新了许多有用的功能。在这篇文章中,我想与大家分享 5 种我最喜欢的技术,这些技术是我已经开始在工作中实施的。1. 顶级wait wait 是我最喜欢的功能,因为它使我的代码显得更加优雅。确实,不再有回调地狱的负担。// Old St

张二河 张二河 2023-09-07
0 0 0
1 1,073 1,074 1,075 1,076 1,077 1,703