深圳幻海软件技术有限公司 欢迎您!

  • 华为OD机试 - 任务调度(Java & JS & Python)

    题目描述现有一个CPU和一些任务需要处理,已提前获知每个任务的任务ID、优先级、所需执行时间和到达时间。CPU同时只能运行一个任务,请编写一个任务调度程序,采用“可抢占优先权调度”调度算法进行任务调度,规则如下:如果一个任务到来时,CPU是空闲的,则CPU可以运行该任务直到任务执行完毕。但是如果运行

  • 史上最全的2022年最新版Android安卓面试题集锦(含答案+源码)

    金三银四,又到了一年一度的黄金跳槽季,想必也许有不少Android程序员开始摩拳擦掌,蠢蠢欲动了。而网络上的面试题大部分已经过时甚至是错误成堆,漏洞百出,今天结合自己这段时间的面试经验和几个Android技术群里面大厂大牛的交流总结出了这篇2022年最新的Android面试题合集。那么,废话不多说,

  • 异步与多线程:关键软件开发实践

    异步编码和多线程是计算机编程中的两个重要概念,指的是执行代码的不同方式。了解这两个概念之间的区别对于任何想要编写高效且可扩展的软件的人来说都是必不可少的。当第一次深入探讨这些主题时,我承认我在辨别它们用例的差异时有点困惑。最后,差异是微妙的,但决定了您如何编写代码以及您希望在设计中实现什么。异步编程

  • 线程池的几个面试重要考点

    阿粉有点惊叹最近的面试题,因为从之前的基础的面试题,到之后的一些涉及到分布式和微服务的面试题,再到现在的线程池的一些面试题,反正不同的面试官,就有不同的针对方向,可能现在的面试官比较想考验你的多方面的能力吧,而最近,一个读者就反馈给了阿粉说,面试官全程就从线程这块入手,整的自己有点尴尬,但是好在有惊

  • SpringBoot 优雅停机的正确姿势

    ​一、介绍什么叫优雅停机?简单的说,就是向应用进程发出停止指令之后,能保证正在执行的业务操作不受影响,直到操作运行完毕之后再停止服务。应用程序接收到停止指令之后,会进行如下操作:1.停止接收新的访问请求2.正在处理的请求,等待请求处理完毕;对于内部正在执行的其他任务,比如定时任务、mq消费等等,也要

  • 一次由groovy引起的fullGC问题排查

    一、问题背景二、分析过程2.1参数配置2.2定位过程2.3JVM分析2.4问题分析三、解决方案一、问题背景prometheus监控报警生效后,某服务每天的上午8-12点间会有fullGC的报警;排查并解决该问题;二、分析过程2.1参数配置JVM参数配置如下:复制-Xms3g-Xmx3g-Xmn1g-

  • 深入浅出Java/Spring/Spring Boot异步多线程

    1、Java的多线程1.1线程池模式一个线程池可以维护多个线程,这些线程等待任务来进行并发处理。线程池模式避免了频繁创建和销毁短期任务线程,复用池中的线程从而提高了性能。线程池中的线程在处理任务时是并发进行的。线程池(绿色方块)/等待处理任务队列(蓝色)/处理完成任务(黄色)该模式允许创建的线程数量

  • Python 强大的任务调度框架 Celery!

    什么是celery这次我们来介绍一下Python的一个第三方模块celery,那么celery是什么呢? celery是一个灵活且可靠的,处理大量消息的分布式系统,可以在多个节点之间处理某个任务; celery是一个专注于实时处理的任务队列,支持任务调度; celery

  • 聊聊动态线程池的九个场景

    大家好,我是小马哥。线程池是一种基于 池化思想管理线程 的工具,使用线程池可以减少 创建销毁线程的开销,避免线程过多导致 系统资源耗尽。在 高并发以及大批量 的任务处理场景,线程池的使用是必不可少的。如果有在项目中实际使用线程池,相信你可能

  • 别再用 System.currentTimeMillis() 统计耗时了,太 Low,StopWatch 好用到爆!

    背景你还在用System.currentTimeMillis...统计耗时?比如下面这段代码:复制/***@author:栈长*@from:公众号Java技术栈*/@TestpublicvoidjdkWasteTime()throwsInterruptedException{longstart=Sy

  • 全能语言Julia,从Covid-19建模到太空规划,科研人员偏爱Ta

    2012年,Julia语言横空出世,从此科学计算领域又多了一个强大的工具。如今,Julia已经走过了十个年头,拥有数十万用户,在数百所大学和公司内开始建立Julia软件技术栈,从个性化药物、气候建模、新材料研发,甚至太空任务规划都有Julia的身影。最近,Julia的开发者们又发布了一篇博客,收集了

  • 保姆级指南:Jekins+Docker构建部署React项目实战

    前置概念CI的含义CI的意思是持续构建。负责拉取代码库中的代码后,执行用户预置定义好的操作脚本,通过一系列编译操作构建出一个制品,并将制品推送至到制品库里面。常用工具有GitlabCI,GithubCI,Jenkins等。这个环节不参与部署,只负责构建代码,然后保存构建物。构建物被称为制品,保存制品

  • 浏览器和 Node.js 的 EventLoop 为什么这么设计?

    EventLoop是JavaScript的基础概念,面试必问,平时也经常谈到,但是有没有想过为什么会有EventLoop,它为什么会这样设计的呢?今天我们就来探索下原因。浏览器的EventLoopJavaScript是用于实现网页交互逻辑的,涉及到dom操作,如果多个线程同时操作需要做同步互斥的处理

  • 十六款优秀任务管理软件,哪款适合您呢?

    【51CTO.com快译】不知您是否面对过一些比较繁琐的项目与任务?其中的细节往往暗藏着极高的风险。虽然您耗费了大量的时间与经历,但是一旦偏离了项目的预定轨迹,其产生的错误则很可能会导致您蒙受巨大的损失。因此,在项目的计划和执行过程中,我们需要考虑的第一件事便是:如何将整体项目划分为一些较小的、且可

  • Python任务调度利器:APScheduler

     任务调度应用场景所谓的任务调度是指安排任务的执行计划,即何时执行,怎么执行等。在现实项目中经常出现它们的身影;特别是数据类项目,比如实时统计每5分钟网站的访问量,就需要每5分钟定时从日志数据分析访问量。总结下任务调度应用场景: 离线作业调度:按时间粒度执行某项任务 共

  • 究竟什么时候该使用MQ?

    任何脱离业务的组件引入都是耍流氓。引入一个组件,最先该解答的问题是,此组件解决什么问题。MQ,互联网技术体系中一个常见组件,究竟什么时候不使用MQ,究竟什么时候使用MQ,MQ究竟适合什么场景,是今天要分享的内容。MQ是什么?消息总线(MessageQueue),后文称MQ,是一种跨进程的通信机制,用

  • 58同城实时计算平台架构实践

     导语本文主要介绍58同城实时计算平台技术演进,以及基于Flink打造的一站式实时计算平台Wstream,涵盖很多实践经验、干货和方法论,希望对您有所帮助。背景58同城作为覆盖生活全领域的服务平台,业务覆盖招聘、房产、汽车、金融、二手及本地服务等各个方面。 丰富的业务线和庞大的用

  • 初级、中级和高级开发人员之间的差异

    本文转自雷锋网,如需转载请至雷锋网官网申请授权。 作为程序员,你身边的同事有工作6年的中级程序员,也有工作3年的高级程序员。你可能会很疑惑,初级、中级和高级开发人员之间的差异究竟在哪里?照片由ClemOnojeghuo发表在Unsplash上你是初级、中级或高级开发人员,不仅仅取决于你的编

  • 如何选型一个合适的框架-分布式任务调度框架选型

     1.背景定时任务是大家再开发中一个不可避免的业务,比如在一些电商系统中可能会定时给用户发送生日券,一些对账系统中可能会定时去对账。大概再很久以前每个服务可能就一台机器,再这台机器上直接搞个Timerschedule基本上就能满足我们的业务需求,但是随着时代的变迁,单台机器已经远远不能满足

  • 哦,这就是Java的优雅停机?(实现及原理)

    优雅停机?这个名词我是服的,如果抛开专业不谈,多好的名词啊!其实优雅停机,就是在要关闭服务之前,不是立马全部关停,而是做好一些善后操作,比如:关闭线程、释放连接资源等。再比如,就是不会让调用方的请求处理了一增,一下就中断了。而处理完本次后,再停止服务。Java语言中,我们可以通过Runtime.ge

推荐阅读