资讯

  • SpringBoot 并发编程学习历程,你所需要的所有知识点!

    SpringBoot 并发编程学习历程,你所需要的所有知识点!

    本教程大概目录:模拟单线程情节用Callable实现 并发编程用DeferedResult实现异步处理###模拟单线程情节。/** * Created by Fant.J. */ @RestController @Slf4j public class AsyncController { /** * 单线程测试 * @return * @throws In...

    日期:2023-09-27点击:140
  • 如何使用Python中的OCR技术将图像中的文本提取为可编辑文件?

    如何使用Python中的OCR技术将图像中的文本提取为可编辑文件?

    1、安装和配置Pytesseract库Pytesseract是Python的一个OCR库,它是Tesseract OCR引擎的Python封装。在使用Pytesseract之前,需要先安装Tesseract OCR引擎和Pytesseract库。可以使用以下命令在Linux系统中安装Tesseract OCR和Pytesseract库:sudo apt-get install tesseract-...

    日期:2023-09-27点击:140
  • 深度使用了下 Serverless,太丝滑了!

    深度使用了下 Serverless,太丝滑了!

    云函数和 FaaS最近在开发自己的小项目的时候,因为各种原因使用上了云函数这个东西,不夸张的说开发时间直接减少一半,当然也没啥复杂业务逻辑,但是乱七八糟各种配置基本都可以摒弃掉了。云函数就是一种 Serveless,准确来说,云函数属于 Serveless 中的 FaaS(Function as a Service,函数即服务),典型的产品有阿里云函数、腾讯云函数、AWS Lambda、Googl...

    日期:2023-09-27点击:148
  • .Net GC从空闲列表里面分配对象

    1.前言空闲列表(free_list)实质上是GC经过垃圾回收之后形成的碎片空间,它的空间可以进行重新分配新的对象。本篇看下它的重新分配过程。2.概述当进行一个对象分配的时候,如果是慢速分配(JIT_New)的时候,它会查找空闲列表里面是否有足够的空间来分配这个对象。如果有就把这个对象放到空闲列表里面去。CLR堆栈如下:> WKS::gc_heap::a_fit_free_list_p ...

    日期:2023-09-27点击:135
  • 图文并茂解释 Java JVM、JRE 和 JDK

    图文并茂解释 Java JVM、JRE 和 JDK

    在本章中,我们将讨论 Java 编程语言中 JVM、JRE 和 JDK 的一个重要定义。我们还讨论了 JVM、JRE 和 JDK 之间的区别。Java 技术既是一种编程语言又是一个平台。Java 编程语言是一种高级面向对象语言,具有特定的语法和风格。Java 平台是 Java 编程语言应用程序运行的特定环境。我们先从什么是JDK说起?1、JDK(Java开发工具包)JDK (Java D...

    日期:2023-09-27点击:143
  • 作用域 CSS 回来了,你知道吗?

    作用域 CSS 回来了,你知道吗?

    几年前,消失的作用域 CSS,如今它回来了,而且比以前的版本要好得多。更好的是,W3C规范基本稳定,现在Chrome中已经有一个工作原型。我们只需要社区稍微关注一下,引诱其他浏览器构建它们的实现,并完成这项工作。这是什么思路?作用域为CSS带来了两个关键点:更好地控制哪些选择器针对哪些元素(即更好地操作级联)。一组样式可以基于DOM中的位置覆盖另一组样式。局部样式允许你在页面上的单个组件内包含一组...

    日期:2023-09-27点击:142
  • Go 1.21.0 新增标准库 Slices 和 Mps 详解

    01 、介绍在 Go 语言项目开发中,我们经常会使用 slice 和 map 数据类型,因为 Go 1.18.0 开始支持泛型,所以 slice 的元素可能是任意类型,map 的 key 和 value 也可能是任意类型。Go 1.21.0 新增操作 slice 和&n...

    日期:2023-09-27点击:143
  • 使用查询分离后从20s优化到500ms

    使用查询分离后从20s优化到500ms

    在前面一篇文章中提到过对于业务主表读写缓慢的解决方案:冷热分离,有不了解的请看:业务主表读写缓慢如何优化?冷热分离固然是一个性价比高的解决方案,但也并不是银弹,仍然有诸多限制,比如:查询冷数据慢业务无法修改冷数据冷数据多到一定程度系统依旧扛不住此时如果需要解决以上问题,可以采用另外一种方案:使用 查询分离 优化业务主表数据大查询缓慢的问题什么是查询分离?查询分离从字面上来说非常...

    日期:2023-09-27点击:151
  • Spring BOOT 启动参数

    Spring BOOT 启动参数在Java Web的开发完成后,以前我们都会打包成war文件,然后放大web容器,比如tomcat、jetty这样的容器。现在基于SpringBoot开发的项目,我们直接打包成jar文件,基于内嵌的tomcat来实现一样的效果。而启动的方式变成了这样:java [ options ] -jar *.jar [ arguments ]常见配置我们常见的配置有...

    日期:2023-09-27点击:138
  • 五分钟k8s入门到实战-应用配置

    五分钟k8s入门到实战-应用配置

    背景在前面三节中已经讲到如何将我们的应用部署到 k8s 集群并提供对外访问的能力,x现在可以满足基本的应用开发需求了。现在我们需要更进一步,使用 k8s 提供的一些其他对象来标准化我的应用开发。首先就是 ConfigMap,从它的名字也可以看出这是用于管理配置的对象。ConfigMap不管我们之前是做 Java、Go 还是 Python 开发都会使...

    日期:2023-09-27点击:138
  • 实时数据推送并非只有WebSocket一种选择

    实时数据推送并非只有WebSocket一种选择

    环境:SpringBoot2.7.16概述在Web应用中,有几种实时数据推送的选择方案,包括SSE(Server-Sent Events)、WebSocket、长轮询等。SSE是一种基于HTTP协议的服务器向客户端推送数据的技术。它的优点是实现简单、轻量级,对现有服务器软件兼容性好。但是,由于SSE是单向通信模型,只能由服务器向客户端推送数据,对于需要客户端向服务器发送数据的场景,SSE就无法满足...

    日期:2023-09-27点击:138
  • 学会Sequelize,让你操作数据更丝滑!

    本文来介绍 Sequelize,一个基于 Node.js 的 ORM(对象关系映射)工具,并详细介绍其用法。Sequelize 用于在应用中使用 JavaScript 来操作关系型数据库,例如 MySQL、PostgreSQL 等。本文内容较多,可作为 Sequelize 的参考手册来阅读。开始使用核心概念Sequelize 是一个基于 JavaScript 的 ORM(对象关系映射)库...

    日期:2023-09-27点击:132
  • 聊聊Docker的各种有用命令

    聊聊Docker的各种有用命令

    昨天我们知道了如何在服务器上部署自己的微服务的项目,但是对于很多命令,有小伙伴们就开始疑惑了,命令那么多,我到底应该怎么知道哪些是自己可能会用到的,而且也想了解一下这个命令都是用来做什么的,今天了不起就来给大家伙说说这个Docker 中的各项的命令。毕竟开发都离不开实战。Docker 命令docker build [image_name] :基于Dockerfile构建一个镜像。这个我们都熟悉了,...

    日期:2023-09-27点击:143
  • 直播房间服务基于CQRS的架构演进实践

    直播房间服务基于CQRS的架构演进实践

    引言房间系统是直播业务的“基石”,开播和看播两大体系都是围绕房间场景展开。房间系统架构也经历一系列的升级和挑战,从房间读多活、混沌流量治理、热点发现、多级缓存等,支撑了S11破千万PCU的流量洪峰冲击。为了应对业务更大的挑战,基于CQRS思想,分离大流量的用户高读场景(Query)和注重数据强一致性的开播创建房间等写场景(Command)。对于用户端可以无状态无限制的扩容服务副本,做到支持更大线上...

    日期:2023-09-27点击:156
  • 一文读懂Spring框架中的不同类型事件

    一文读懂Spring框架中的不同类型事件

    大家好,我是小米!今天我们来聊一聊关于Spring框架中的一个有趣话题:不同类型的事件。Spring框架是Java开发中的一颗璀璨明珠,它不仅提供了依赖注入和面向切面编程等强大功能,还引入了事件机制,用于实现组件之间的松耦合通信。不过,你知道吗?Spring框架中有多种不同类型的事件,每一种都有其独特的用途和特点。今天,我们就来一一揭秘这些事件,让你深入了解Spring框架的内部机制。应用事件(A...

    日期:2023-09-27点击:135
  • 在C++中多使用const的理由

    在C++中多使用const的理由

    在C++编程语言中,我们常常看到const关键字的使用。它被广泛应用在各种情况下,以限制变量或对象的修改。那么,为什么我们建议在C++中多使用const呢?这篇文章将对此进行深入探讨,并从多方面阐述const的重要性。对象的不变性首先,const关键字可以帮助我们创建不可变的对象。一旦对象被声明为const,我们就不能改变它的状态。这在很多场合下是非常有用的。const int max_value...

    日期:2023-09-27点击:135
  • 性能要求高时,使用Const char*参数类型的优势

    性能要求高时,使用Const char*参数类型的优势

    在开发高性能的应用程序时,参数类型的选择对于代码的效率和性能至关重要。在C++中,有多种表示字符串的参数类型可供选择,其中包括const char和string。本文将重点讨论在性能要求高的情况下,使用const char参数类型的优势,以便程序员能够根据实际需求做出明智的选择。const char*参数类型的内存效率(1) 直接指向字符串内存const char*参数类型是一个指向字符数组的指针...

    日期:2023-09-27点击:137
  • Python条件语句和循环结构从入门到精通

    Python条件语句和循环结构从入门到精通

    条件语句和循环结构是编程中非常重要的概念,它们使我们能够根据不同的条件执行不同的代码块,以及重复执行特定的代码块。Python提供了强大而灵活的条件语句和循环结构,本文将从入门到精通地介绍它们的使用方法,并通过相关代码进行讲解。一、条件语句条件语句用于根据不同的条件执行不同的代码块。Python中最常用的条件语句是if语句,它的基本语法如下:if condition: # 当条件为真时执行...

    日期:2023-09-27点击:135