欢迎访问我的GitHub 这里分类和汇总了欣宸的全部原创(含配套源码):github.com/zq2599/blog… 本篇概览 本篇的知识点是bean的生命周期回调:在bean生命周期的不同阶段,都可以触发自定义代码的执行 触发自定义代码执行的具体方式,是用对应的注解去修饰要执行的方法,如下
大家好,我是飘渺。今天我们继续更新DDD(领域驱动设计) & 微服务系列。 在之前的文章中,我们探讨了如何在DDD中结构化应用程序。我们了解到,在DDD中通常将应用程序分为四个层次,分别为用户接口层(Interface Layer),应用层(Application Layer),领域层(Do
前言 无 一、认证和鉴权 认证和鉴权是后端系统很常见的功能了,这里主要讲一下认证的实现和常见策略(userinfo和jwt认证) 认证(Authentication):主要是对用户信息的一个认证,比如用户登录行为,密码/token验证没问题,则认证用户登录成功 鉴权(Authorization):
前言 最近在学nestjs,涉及基础概念的东西记录一下,顺便分享下来;大部分内容来自于nestjs官网,加上自己的实践和部分理解,希望对大家有帮助。 话不多说,直接开整! 一、providers是什么、怎么用 一般node后端的项目结构会这么划分几个文件夹,如controller、service、r
方案背景 我们经常遇到一类终端设备模糊定位场景,这就是怎么在已知的有限的条件下,尽可能精确的获取终端的地理位置。以下是一些典型的场景: 在社交领域,在评论区需要显示用户大致的IP属地。 在IoT领域,大部分的IoT device没有GPS定位模块,我们只能获取到device的一些基础的联网信息,比
在Java中有很多保证线程安全的方式,比如synchorized,lock锁等等,这些在单机环境下都能发挥不错的作用,但是在分布式的环境下,这些机制就会失去大部分的作用。 在分布式环境下就需要引入分布式锁,实现分布式锁的方式有好多种,比如redis、zookeeper,或者通过数据库来实现,但是在分
什么是正则表达式 正则表达式(Regular Expression)是一种文本模式,使用一些特定的字符来检索、匹配以及替换符合规则的字符串。 构造正则表达式语法的字符,由普通字符、特殊字符(称为"元字符")、限定字符(量词)、定位字符(边界字符)组成。 关于这些字符的介绍,推荐阅读 正则表达式 -
1、简介 本文主要对Java常用阻塞队列进行介绍和提供相关使用案例 2、 阻塞队列作用 阻塞队列提供了一种线程安全、高效的数据传递和同步机制 , 主要用于缓冲数据、限流、削峰填谷,生产者-消费者模型,线程间的协作等等。 3、 各阻塞队列区别对比
题目描述 这是 LeetCode 上的 306. 累加数 ,难度为 中等。 Tag : 「回溯算法」、「高精度」 累加数 是一个字符串,组成它的数字可以形成累加序列。 一个有效的 累加序列 必须 至少 包含 3 个数。除了最开始的两个数以外,字符串中的其他数都等于它之前两个数相加的和。 给你一个只包
Java对象创建和内存分配机制详解 一. 对象创建的过程 对象的主要创建流程如下: 1、类加载检查 虚拟机遇到一条new指令时,首先将去检查这个指令的参数是否能在常量池中定位到一个类的符号引用,并且检查这个符号引用代表的类是否已被加载、解析和初始化过。如果没有,那必须先执行相应的类加载过程。 ne
🍇一、synchronized 1. 介绍 synchronize是Java中的关键字,可以用在实例方法、静态方法、同步代码块。synchronize解决了:原子性、可见性、有序性三个问题,用来保证多线程环境下共享变量的正确性。 🥇原子性:执行被synchronized修饰的方法和代码块,都必须要先
因为工作需要,需要使用 GraphQL 作为数据处理层,Apollo GQL与Hasura都是可选方案。本文将深入调研Hasura功能,并在此场景下测试其实现 GraphQL Request -> Elastic Search -> GraphQL Response 的数据处理功能。 H
👉博主介绍: 博主从事应用安全和大数据领域,有8年研发经验,5年面试官经验,Java技术专家,WEB架构师,阿里云专家博主,华为云云享专家,51CTO TOP红人 💕💕 感兴趣的同学可以收藏关注下 ,不然下次找不到哟💕💕 ✊✊ 感觉对你有帮助的朋友,可以给博主一个三连,非常感谢 🙏🙏🙏 @
王有志,一个分享硬核Java技术的互金摸鱼侠 加入Java人的提桶跑路群:共同富裕的Java人 上一篇中,我们已经在Spring Boot应用中集成了Dubbo,并注册了一个服务提供方和一个服务使用方。当然,生产环境中应用往往会部署多个节点,以此来保证服务的高可用,那么如何配置Dubbo的负载均衡
源码解析Collections.sort ——从一个逃过单测的 bug 说起 本文从一个小明写的bug 开始,讲bug的发现、排查定位,并由此展开对涉及的算法进行图解分析和源码分析。 事情挺曲折的,因为小明的代码是有单测的,让小明更加笃定自己写的没问题。所以在排查的时候,也经历了前世的500年,去排
导言 在 Rust 中,泛型是一种强大的特性,可以在结构体和方法中使用通用的类型参数。通过泛型,我们可以编写更加灵活和可复用的代码。本篇博客将详细介绍如何在 Rust 的结构体和方法中使用泛型,包括泛型结构体的定义、泛型方法的实现以及对泛型参数的约束。 泛型结构体 在 Rust 中,我们可以定义泛型
1. 背景 某天凌晨一点多,服务挂了,日志戛然而止,grafanar监控内存,cpu、磁盘都是正常的,该怎么去排查 2. 排查手段 观测日志、是否有程序触发关闭jvm进程,system.exit(),观测内存,cpu,磁盘,是否有因为机器资源不够分配的问题导致进程被机器kill 观测机器的操作
前言 了解清晰架构之前需要大家先熟悉以下常见架构方案: EBI架构(Entity-Boundary-Interactor Architecture) 领域驱动设计(Domain-Driven Design) 端口与适配器架构(Ports & Adapters Architecture,又称
一 前言 架构设计按照实施过程可分为工程架构,业务架构,部署架构等多个维度,一个好的系统架构标准应该具备可扩展、可维护、可靠性、安全性和高性能等特点。尽管这些特点大家都熟知,但在实际落地时,我们更为迫切的想知道实现这些要求的关键路径,以便在架构设计中融入这些特点。只有这样,才能确保系统能够适应未来的
@[toc] 相信有小伙伴也听说过,在 SSM 项目中,Spring 容器是父容器,SpringMVC 是子容器,子容器可以访问父容器的 Bean,但是父容器不能访问子容器的 Bean。 更近一步,有小伙伴可能也了解过,不用父子容器,单纯就用一个 SpringMVC 容器似乎也可以,项目也能运行。