• 聊聊消息中间件MQ

    一、概念图片 消息中间件MQ(Message Queue)是一种常用的异步通信技术,它通过将消息存储在队列中,实现生产者和消费者之间的解耦。MQ的主要作用是保证消息的可靠传输和幂等性。本质是队列,遵循FIFO先进先出原则。只不过队
    发布时间:2023-10-24 阅读:217
  • 如何从单体架构迁移到微服务架构:挑战和最佳实践

    译者 | 刘汪洋审校 | 重楼当单体架构成为项目增长的瓶颈时,迁移到微服务架构就成了必然的选择。微服务虽然具有明显的优点,但由于其内在复杂性和缺乏一种通用的迁移方案,实施过程中可能会遇到不少挑战。本文旨在分享解决
    发布时间:2023-10-24 阅读:201
  • 如何从单体架构迁移到微服务架构:挑战和最佳实践

    译者 | 刘汪洋审校 | 重楼当单体架构成为项目增长的瓶颈时,迁移到微服务架构就成了必然的选择。微服务虽然具有明显的优点,但由于其内在复杂性和缺乏一种通用的迁移方案,实施过程中可能会遇到不少挑战。本文旨在分享解决
    发布时间:2023-10-24 阅读:198
  • Redis中万金油的String,为什么不好用了?

    今天,我们先了解下 String 类型的内存空间消耗问题,以及选择节省内存开销的数据类型的解决方案。我想和你分享一个之前我面临的需求案例。曾经,我们面临着一个任务,要创建一个高效的图片存储系统,要求这个系统能够快速记录
    发布时间:2023-10-24 阅读:194
  • Redis中万金油的String,为什么不好用了?

    今天,我们先了解下 String 类型的内存空间消耗问题,以及选择节省内存开销的数据类型的解决方案。我想和你分享一个之前我面临的需求案例。曾经,我们面临着一个任务,要创建一个高效的图片存储系统,要求这个系统能够快速记录
    发布时间:2023-10-24 阅读:191
  • 阿里二面:消息队列的事务消息可以用 TCC 模式实现吗?

    大家好,我是君哥。消息队列的主要功能是系统间解耦,实现流量的削峰填谷。主流的消息队列一般有三个核心操作:消费者发送消息,Broker 保存消息,消费者消费消息。如下图:图片对于一个完整的事务消息,可以理解为生产者生产消息
    发布时间:2023-10-24 阅读:192
  • 阿里二面:消息队列的事务消息可以用 TCC 模式实现吗?

    大家好,我是君哥。消息队列的主要功能是系统间解耦,实现流量的削峰填谷。主流的消息队列一般有三个核心操作:消费者发送消息,Broker 保存消息,消费者消费消息。如下图:图片对于一个完整的事务消息,可以理解为生产者生产消息
    发布时间:2023-10-24 阅读:195
  • IntelliJ IDEA 2023.2正式发布,新UI和Profiler转正

    ✍正文官方对此版本的新变化总结:IntelliJ IDEA 2023.2 引入 AI Assistant(AI助手),通过一组由 AI 提供支持的功能助力开发(比如:Open API公司,也就是Chat GPT)。 升级的 IntelliJ 分析器现在提供编辑器内提示,使分析进程更加
    发布时间:2023-10-24 阅读:225
  • IntelliJ IDEA 2023.2正式发布,新UI和Profiler转正

    ✍正文官方对此版本的新变化总结:IntelliJ IDEA 2023.2 引入 AI Assistant(AI助手),通过一组由 AI 提供支持的功能助力开发(比如:Open API公司,也就是Chat GPT)。 升级的 IntelliJ 分析器现在提供编辑器内提示,使分析进程更加
    发布时间:2023-10-24 阅读:205
  • 您有一篇Git 原理,请注意查收

    前言作为一个新时代的开发者,想必大家在工作中,有一样东西是和大家「形影不离」的。那就是git。(当然,这里也有个例,如果大家项目还停留在svn阶段,就算我刚才的话唐突了)。无论大家平时是喜欢在命令行中手搓git命令,还是利
    发布时间:2023-10-24 阅读:223
  • 您有一篇Git 原理,请注意查收

    前言作为一个新时代的开发者,想必大家在工作中,有一样东西是和大家「形影不离」的。那就是git。(当然,这里也有个例,如果大家项目还停留在svn阶段,就算我刚才的话唐突了)。无论大家平时是喜欢在命令行中手搓git命令,还是利
    发布时间:2023-10-24 阅读:199
  • 并发编程:你真的了解FutureTask吗?

    FutureTask是什么public interface Runnable { public abstract void run();}Student implements RunnableThread xiaoming = new Thread(new Student());xiaoming.start();我们知道Runnable是一个接口,它用来承载
    发布时间:2023-10-24 阅读:222
  • 并发编程:你真的了解FutureTask吗?

    FutureTask是什么public interface Runnable { public abstract void run();}Student implements RunnableThread xiaoming = new Thread(new Student());xiaoming.start();我们知道Runnable是一个接口,它用来承载
    发布时间:2023-10-24 阅读:214
  • 2023 年 WebAssembly 现状:第四种 Web 语言

    2023 年度 WebAssembly 现状调查结果出炉,下面就来看看 2023 年的 WebAssembly 发展的怎么样了!WebAssembly 是一种可移植、低级别的字节码语言,旨在提供一种通用的编译目标,以允许在 Web 上执行高性能计算密集型应用程序
    发布时间:2023-10-23 阅读:250
  • Nuxt 3.8 正式发布,一起来看看都有哪些功能吧!

    CLI 提升现在正在使用新的 Nuxt CLI,它已经独立进行版本管理。现在可以使用以下命令来安装模块:nuxi module add <module-name>现在与 Vite 的 WebSocket 共享同一个端口,这意味着在开发中更好地支持 Docker 容器。内置
    发布时间:2023-10-23 阅读:243
  • Nuxt 3.8 正式发布,一起来看看都有哪些功能吧!

    CLI 提升现在正在使用新的 Nuxt CLI,它已经独立进行版本管理。现在可以使用以下命令来安装模块:nuxi module add <module-name>现在与 Vite 的 WebSocket 共享同一个端口,这意味着在开发中更好地支持 Docker 容器。内置
    发布时间:2023-10-23 阅读:265
  • OpenJDK JMH——Java程序的基准测试工具

    背景JMH(Java Microbenchmark Harness)是一个专门用于编写、运行和分析Java微基准测试的工具。它是由OpenJDK项目提供的一个开源项目,旨在帮助开发人员准确地测量和评估Java代码的性能。JMH提供了一组注解和API,使得编写
    发布时间:2023-10-23 阅读:291
  • OpenJDK JMH——Java程序的基准测试工具

    背景JMH(Java Microbenchmark Harness)是一个专门用于编写、运行和分析Java微基准测试的工具。它是由OpenJDK项目提供的一个开源项目,旨在帮助开发人员准确地测量和评估Java代码的性能。JMH提供了一组注解和API,使得编写
    发布时间:2023-10-23 阅读:229
  • 软件设计模式之MVC、MVP、MVVM、HMVC、MVA、MVI和VIPER

    软件架构设计是将软件一些共有的特征转换为满足业务需求和技术要求的结构化方案的过程。软件架构设计的目的是为了实现系统的长期可维护性、可扩展性、可靠性和安全性,以满足业务需求和未来可能的变化。在过去的几年里
    发布时间:2023-10-23 阅读:227
  • 软件设计模式之MVC、MVP、MVVM、HMVC、MVA、MVI和VIPER

    软件架构设计是将软件一些共有的特征转换为满足业务需求和技术要求的结构化方案的过程。软件架构设计的目的是为了实现系统的长期可维护性、可扩展性、可靠性和安全性,以满足业务需求和未来可能的变化。在过去的几年里
    发布时间:2023-10-23 阅读:224
  • 接口响应慢该如何排查

    不知道大家有没有遇到这种情况,接口业务逻辑写完后,用 postman 一调,发现接口响应时间好长,不得不对接口进行优化。但是此时接口的代码往往逻辑比较复杂,调用层次也比较多,很难定位到耗时较长的代码块。遇到这种情况大家都
    发布时间:2023-10-23 阅读:242
  • 接口响应慢该如何排查

    不知道大家有没有遇到这种情况,接口业务逻辑写完后,用 postman 一调,发现接口响应时间好长,不得不对接口进行优化。但是此时接口的代码往往逻辑比较复杂,调用层次也比较多,很难定位到耗时较长的代码块。遇到这种情况大家都
    发布时间:2023-10-23 阅读:213
  • Go并发可视化解释:sync.WaitGroup

    场景Avito是一名校车司机,他帮助4个Gopher孩子上学。每天,Avito在他们的社区等待孩子们。他不知道孩子们需要多长时间,但他确切地知道有4个孩子他需要等待。1*aZnEggopv4Tsbyyj3e5JFg.png当一个孩子准备好时,他/她会说:Don
    发布时间:2023-10-23 阅读:195
  • Go并发可视化解释:sync.WaitGroup

    场景Avito是一名校车司机,他帮助4个Gopher孩子上学。每天,Avito在他们的社区等待孩子们。他不知道孩子们需要多长时间,但他确切地知道有4个孩子他需要等待。1*aZnEggopv4Tsbyyj3e5JFg.png当一个孩子准备好时,他/她会说:Don
    发布时间:2023-10-23 阅读:241
  • ELK Stack生产实践——pod日志采集(Elastic Agent方案)

    pod日志采集方案方案选型DaemonSet+Elastic Agent方案:使用DaemonSet控制器在每个kubernetes集群节点上运行elastic agent服务,业务容器日志目录统一挂载到节点指定目录下。在fleet中配置集成Custom Logs集成策略,指定日
    发布时间:2023-10-23 阅读:205
Top