• GC是什么?为什么要GC?JVM 垃圾回收算法有哪些?

    图片1 Java垃圾回收机制(GC是什么?为什么要GC)为了让程序员更专注于代码的实现,而不用过多的考虑内存释放的问题,所以,在Java语言中,有了自动的垃圾回收机制,也就是我们熟悉的GC(Garbage Collection)。有了垃圾回收机制后,程
    发布时间:2023-12-08 阅读:363
  • Java中连接池配置不合理,导致连接泄漏和数据库连接数超限问题

    连接池是Java开发中常用的技术,可以有效地管理数据库连接,提高系统性能和稳定性。然而,如果连接池配置不合理,可能会导致连接泄漏和数据库连接数超限的问题。下面将详细介绍连接池配置的重要性、常见配置问题以及解决方法
    发布时间:2023-12-08 阅读:353
  • 多个线程或进程竞争共享资源而导致的死锁问题

    死锁是多线程或多进程并发编程中常见的问题之一,它会导致程序无法继续执行下去,造成系统资源的浪费和性能下降。在Java项目中,当多个线程或进程竞争共享资源时,如果不恰当地处理锁的获取和释放,很容易出现死锁。下面将详细
    发布时间:2023-12-08 阅读:328
  • 架构的低成本约束

    低成本通常被认为是架构设计过程中的一项约束,或者说低成本也是架构设计中的非功能目标之一,它跟高并发、高性能、高可用、安全性等非功能目标一样,一直贯穿架构设计过程的始终。不同的是有些企业会把低成本以明确的目标
    发布时间:2023-12-08 阅读:341
  • 聊聊跨进程共享内存的内部工作原理

    大家好,我是飞哥!在 Linux 系统的进程虚拟内存中,一个重要的特性就是不同进程的地址空间是隔离的。A 进程的地址 0x4000 和 B 进程的 0x4000 之间没有任何关系。这样确确实实是让各个进程的运行时互相之间的影响降到了最
    发布时间:2023-12-08 阅读:424
  • 如何做好微服务容量规划?

    维护众多服务需要巨大的努力,手动操作已不再可行。以微博的动态推送功能为例,仅远程过程调用(RPC)服务就接近40种。这些服务接口的性能和需求各不相同,一些接口虽然处理请求量大,但响应迅速,称为轻量级接口;另一些接口处理的
    发布时间:2023-12-08 阅读:344
  • C语言代码:用 C 语言实现一个循环队列

    一、引言队列是一种常见的数据结构,它遵循先进先出(FIFO)的原则。在实际应用中,队列经常被用于实现各种功能,如缓冲、任务调度等。而循环队列则是一种特殊的队列,它可以通过循环使用数组空间来避免队列中元素的浪费。在本文
    发布时间:2023-12-08 阅读:354
  • 你的电脑你做主!五款小工具助你一键掌控:系统更新|Defender|预装应用等操作

    尽管 Windows 10 系统在市场上占据着很高的份额,但也不可避免地存在一些问题,如自动更新和预装应用等,这些问题受到了很多用户的诟病。便携工具对操作系统的一些操作和设置,对应电脑小白来说是极其困难的事情,本文提供了一
    发布时间:2023-12-08 阅读:330
  • 企业级直播云服务的挑战与架构演进

    作者丨刘钧石编辑丨千山本文整理自获得场景视频技术总经理刘钧石在WOT2023大会上的主题分享,更多精彩内容及现场PPT,请关注51CTO技术栈公众号,发消息【WOT2023PPT】即可直接领取。日前,在51CTO主办的WOT全球技术创新大会
    发布时间:2023-12-08 阅读:357
  • 使用RabbitMQ和Spring Cloud Stream实现异步通信

    1 异步通信在现代软件系统和应用程序互联的环境中,通信方式对系统性能、用户体验和软件操作的灵活性具有重要影响。其中一种重要的通信方式是异步通信。异步通信允许发送方在发送消息后继续进行其他操作,不必即时等待接
    发布时间:2023-12-08 阅读:298
  • 基于Python和Surprise库,新手也能动手搭建推荐系统

    1、简介在数据时代,推荐系统是提升用户体验的重要工具。今天介绍如何使用亚马逊的电影评分数据集创建电影推荐系统。2、数据加载与探索首先,通过加载和探索数据集开启数据分析过程。首先导入Pandas和Numpy,这是进行数据
    发布时间:2023-12-08 阅读:345
  • 用 print 太慢了!强烈推荐这款 Python Debug 工具

    作为程序员,我们都深知调试(Debug)在编程过程中的重要性。然而,使用传统的"print"语句进行调试可能效率较低,今天,笔者将推荐一款独具一格的Python调试工具——Reloadium。Reloadium为IDE添加了热重新加载、评测和AI功能,不
    发布时间:2023-12-08 阅读:325
  • C++模板背后的黑箱操作:编译器

    一、编译器如何处理模板1.模板代码的处理为了理解模板的复杂性,你需要了解编译器是如何处理模板代码的。当编译器遇到模板方法定义时,它会进行语法检查,但实际上不会编译模板。编译器不能编译模板定义,因为它不知道这些模
    发布时间:2023-12-08 阅读:342
  • Python入门必备:细讲Python推导式

    由于Python的良好生态,很多时候我们的程序只是通过调用别人写好的方法即可实现功能。不过,很多时候我们还是需要处理序列。不管是入门中还是早已入门的小伙伴,对于处理序列毫无疑问会选择用for循环。但在Python中还有一
    发布时间:2023-12-08 阅读:356
  • Netty入门实践:模拟IM聊天

    我们使用的框架几乎都有网络通信的模块,比如常见的Dubbo、RocketMQ、ElasticSearch等。它们的网络通信模块使用Netty实现,之所以选择Netty,有两个主要原因:Netty封装了复杂的JDK 的 NIO操作,还封装了各种复杂的异常场景,丰
    发布时间:2023-12-08 阅读:671
  • Python中看似没用的写法,却是老手都不一定会的原理。解决闭包延迟绑定

    一次无意间看到如下的代码:心想:咦?这不是脱裤子放屁吗?函数里面直接使用变量就好了,非要定义成函数参数。结果没想到这是解决问题的关键。今天我们研究一下这玩意到底解决什么问题以及它的原理。现在我们从最简单的函数
    发布时间:2023-12-08 阅读:336
  • 深入理解并发控制:掌握锁的精髓,你学会了吗?

    在并发编程中,锁是保障共享资源安全访问的重要机制。本文将深入探讨不同类型的锁、公平锁与非公平锁的对比、乐观锁与悲观锁的选择以及信号量与锁的区别,助你更好地应对并发场景。1. 锁的种类1.1 互斥锁(Mutex Lock)互斥
    发布时间:2023-12-08 阅读:330
  • NUMA架构:CPU和内存性能瓶颈的终结者!

    NUMA的出现我们都知道,CPU是计算机的核心组件,它被设计用来完成计算机的核心任务:计算,这里的计算既包括数学上的运算,还包括条件的判断、IO设备的读写等多个方面。在计算机发展初期,为了提升CPU的计算能力,工程师们的方法是
    发布时间:2023-12-08 阅读:335
  • 探索Spring Boot中@PostConstruct的魔法

    前言@postContruct全限定类名是javax.annotation.PostConstruct,可以看出来其本身不是Spring定义的注解,但是Spring提供了具体的实现,所以这篇文章主要分析的是@PostConstruct在Spring项目开发中的功能特性、实现方式和
    发布时间:2023-12-08 阅读:442
  • 设计之魅:高质量面向对象设计的秘密

    设计模式是在软件设计中用于解决常见问题的经过验证的解决方案。设计模式并不是代码或库,而是一种解决问题的思考方式。在使用设计模式时,需要考虑一些基本的设计原则,这些原则有助于构建灵活、可维护和可扩展的软件系统
    发布时间:2023-12-08 阅读:357
  • 这套分布式IM即时通讯系统如何写到简历上?我给你整理好了!

    大家好,我是冰河~~分布式IM即时通讯系统本质上就是对线上聊天和用户的管理,针对聊天本身来说,最核心的需求就是:发送文字、图片、文件、语音、视频、消息缓存、消息存储、消息未读、已读、撤回,离线消息、历史消息、单聊、
    发布时间:2023-12-08 阅读:351
  • 一款小而美的开源滑动验证码组件

    hi, 大家好, 我是徐小夕, 今天给大家分享一款非常有意思的开源组件, 可以实现我们平时开发中的滑动验证码需求, 当然也是技术圈小伙伴奋战了无数个黑夜和白天的结果, 值得好好推荐一下.图片react-rotate-captcha 是一
    发布时间:2023-12-08 阅读:352
  • Java 21 的虚拟线程:高性能并发应用的福音

    Java 21 最重要的特性之一就是虚拟线程 (JEP 444)。这些轻量级的线程降低了编写、维护和观察高吞吐量并行应用所需的努力。在讨论新特性之前,让我们先看一下当前的状态,以便更好地理解它试图解决什么问题以及带来了哪些
    发布时间:2023-12-08 阅读:348
  • 你 UTF-8 乱码,关我 Unicode 什么事

    平时开发的时候,相信很多人都碰到过乱码的问题,尤其是中文乱码。多年以前,我学 Python 的时候碰到的第一个难题就是乱码问题,差点《从入门到放弃了》。当时就是写一段 Python 的 Hello World 程序,只不过是把 Hello World
    发布时间:2023-12-08 阅读:355
  • 刷了360多道算法题,我终于顿悟了它的真谛

    大家好,我是哪吒。最近一直在刷算法题,刷华为OD算法题,有诸多好处:比如可以考华为OD岗位,大厂算法岗,待遇直接拉满,走向人生巅峰。不考也没关系,就当练习算法题了,哪吒半年时间刷了360多道题,平均一天六道题,一道题40分钟,一天刷4
    发布时间:2023-12-08 阅读:360
Top