开发运维

八个短语速记架构设计八个维度

八个短语速记架构设计八个维度

1 有来有回 有正向就有逆向。例如在处理交易链路时,仅仅考虑正向链路是不够的。逆向链路是指如果用户发起售后应当如何处理,否则业务不闭环。 2 有正有负 有正常就有异常。例如在处理交易链路时,假设需要经过10个业务节点,如果这些节点都不发生异常自然是好的。 但是架构设计必须考虑异常情况,例如第5个节

法医 法医 2023-07-15
0 0 0
撸完Dubbo3源码,我总结了这些阅读源码的技巧

撸完Dubbo3源码,我总结了这些阅读源码的技巧

大家好,我是冰河~~ 最近收到很多小伙伴的微信私聊消息,大部分都是在询问如何快速掌握一个框架的原理和源码,比如:Spring、Dubbo、MyBatis等。针对这个问题,周末我简单总结了下,今天,就为小伙伴们分享下我是如何利用不到一个月的业余时间(每天不到2小时)快速掌握Dubbo的原理和源码的。

捡田螺的小男孩 捡田螺的小男孩 2023-07-15
0 0 0
apm监控得有多少细节啊🤔

apm监控得有多少细节啊🤔

前言 被掘金的运营小姐姐吐槽写了很多非技术内容,哈哈,今天正经一回梳理一下apm监控里面有多少细节,当聊起apm自研算很经典,一般公司都会去自研apm,它还是相对比较简单,但是里面蕴藏了蛮多细节,而往往这些细节决定着这个系统的性能、稳定性。 接下来一起梳理一下apm都有哪些细节吧~ apm结构图

三掌柜 三掌柜 2023-07-15
0 0 0
JVM系统优化实践(18):GC生产环境案例(一)

JVM系统优化实践(18):GC生产环境案例(一)

生产环境中,最常见的一种案例就是OOM,也叫「内存溢出」,它表示JVM已经无法支撑业务系统的运行。而很多工程师都没有类似处理线上系统故障的经验,尤其是这种突发的故障。那么: 1、为什么会OOM?(Why) 2、发生什么样的OOM?(What) 3、那个系统发生的OOM?(Who/Where) 4、什

穿过生命散发芬芳 穿过生命散发芬芳 2023-07-15
0 0 0
Spring高手之路8——Spring Bean模块装配的艺术:@Import详解

Spring高手之路8——Spring Bean模块装配的艺术:@Import详解

1. Spring手动装配基础   在Spring中,手动装配通常是指通过XML配置文件明确指定Bean及其依赖,或者在代码中直接使用new关键字创建对象并设定依赖关系。   然而,随着Spring 2.0引入注解,以及Spring 3.0全面支持注解驱动开发,这个过程变得更加自动化。例如,通过使用

贤蛋大眼萌 贤蛋大眼萌 2023-07-15
0 0 0
SpringBoot 整合 JustAuth 实现第三方登录 | gitee登录

SpringBoot 整合 JustAuth 实现第三方登录 | gitee登录

一、第三方登录 在实现第三方登录前,咱们先聊聊第三方登录背后大致的实现逻辑吧,代码实现其实很简单,思想在这种时候,可能比代码更为重要一些。 现在只要稍微大点的网站或是app都会支持第三方登录吧,面对我们开发者居多的 gitee、github、google等,面对普通用户较多的qq、微信等第三方登录。

张二河 张二河 2023-07-15
0 0 0
备份脚本

备份脚本

一、日常备份 如果你正在使用 Linux 系统处理一个重要的项目,那么可以创建一个 shell 脚本来自动备份特定目录。这有助于避免从主归档文件( main archive file )执行耗时的恢复过程。 1.1 基本功能拆解 在 Linux 世界中,备份数据的工作是由 tar 命令完成的。

醒在深海的猫 醒在深海的猫 2023-07-15
0 0 0
【Rust 基础篇Rust Cargo 工作空间

【Rust 基础篇Rust Cargo 工作空间

导言 在 Rust 中,Cargo 是一个功能强大的构建工具和包管理器。它不仅可以管理单个项目的依赖关系和构建过程,还提供了一种工作空间(Workspace)的功能,用于管理多个相关的项目。本篇博客将详细介绍 Rust Cargo 工作空间的使用方法、配置和最佳实践。 什么是 Cargo 工作空间?

剑圣无痕 剑圣无痕 2023-07-15
0 0 0
举一反 N,解读 etcd watch 源码实现

举一反 N,解读 etcd watch 源码实现

etcd 内置了 Watcher 机制,允许应用程序监视 etcd 中存储的键值对的更改,并在发生更改时接收通知。这种监视模式是实现分布式系统中的自动化和协同操作的重要组成部分。通过 Watcher 机制,应用程序可以实现很多功能,如实时通知、动态配置、负载均衡等。 一个最基础的 watch 命令

贤蛋大眼萌 贤蛋大眼萌 2023-07-15
0 0 0
正则表达式进阶 (java)

正则表达式进阶 (java)

前言 本文所讲的是正则进阶知识,不对正则基础知识过多描述,代码采用java语言编写。 一个完整的正则表达式由两种字符构成:特殊字符(元字符)和普通字符,特殊字符是我们学习正则表达式中的通配符。 正则匹配三种模式 贪婪模式 在java中,模式默认为贪婪模式。 贪婪模式会尽可能多地匹配符合规则的字符

剑圣无痕 剑圣无痕 2023-07-15
0 0 0
Elasticsearch:使用 runtime fields 探索你的数据

Elasticsearch:使用 runtime fields 探索你的数据

Elasticsearch 考虑要提取字段的大量日志数据。 为数据建立索引非常耗时,并且会占用大量磁盘空间,而你只想探索数据结构而无需预先提交 schema。 你知道你的日志数据包含你要提取的特定字段。 在这种情况下,我们要关注 @timestamp 和消息字段。 通过使用运行时字段(runtime

宇宙之一粟 宇宙之一粟 2023-07-15
0 0 0
go微服务实战项目,使用工具一天完成了一个社区后端服务(单体)转换到微服务集群

go微服务实战项目,使用工具一天完成了一个社区后端服务(单体)转换到微服务集群

接着上一篇文章 一天开发完成一个极简版社区后端服务 ,接下来使用工具sponge实战一个微服务集群项目community-cluster,点击查看community-cluster的完整项目代码。 单体服务community-single拆分为微服务具体过程 社区后端服务community-sin

三掌柜 三掌柜 2023-07-15
0 0 0
@Contended注解有什么用?

@Contended注解有什么用?

@Contended是Java 8中引入的一个注解,用于减少多线程环境下的“伪共享”现象,以提高程序的性能。 要理解@Contended的作用,首先要了解一下什么是伪共享(False Sharing)。 1. 什么是伪共享? 伪共享(False Sharing)是多线程环境中的一种现象,涉及到CPU

捡田螺的小男孩 捡田螺的小男孩 2023-07-15
0 0 0
Hugging Face 入门指南

Hugging Face 入门指南

一、Hugging Face 网站交互 Hugging Face 的网站是一个非常重要的资源,你可以在这里找到大量的预训练模型和数据集,也可以在线使用模型,或者参与到社区的讨论。 模型库:Hugging Face 的模型库是一个非常重要的资源。你可以在这里找到大量的预训练模型,包括各种语言的模型

贤蛋大眼萌 贤蛋大眼萌 2023-07-15
0 0 0
HTTPS协议保障数据安全【安全篇

HTTPS协议保障数据安全【安全篇

我们都知道由于HTTP是明文的,整个传输过程完全透明,任何人都能够在链路中监听、修改、伪造请求/响应报文。所以不能满足我们的安全要求。比我如我们上网的信息会被轻易的截获,所浏览的网站真实性也无法验证。黑客可以伪装成银行、购物网站来盗取用户的密码等敏感信息。 维基百科: 由此就需要引入一种更加安全的

三掌柜 三掌柜 2023-07-15
0 0 0
node 拉取github开源漏洞

node 拉取github开源漏洞

我们可以通过github的open api 来拉取一些信息。这里主要是拉取 github 开源漏洞中的漏洞信息 Github Explorer github Explorer 是一个在线工具,登录之后,我们可以在左侧输入GraphQL 查询语句,之后就可以查询相关的信息。例如: 查询第一页 这里我

LOVEHL^ˇ^ LOVEHL^ˇ^ 2023-07-15
0 0 0
Unity平台如何实现RTSP转RTMP推送?

Unity平台如何实现RTSP转RTMP推送?

技术背景 Unity平台下,RTSP、RTMP播放和RTMP推送,甚至包括轻量级RTSP服务这块都不再赘述,今天探讨的一位开发者提到的问题,如果在Unity下,实现RTSP播放的同时,随时转RTMP推送出去? RTSP转RTMP,在原生环境下老早已经有了,这里,其实就是把原生的挪到Unity即可,相

大猫 大猫 2023-07-15
0 0 0
quarkus依赖注入之十一:拦截器高级特性上篇(属性设置和重复使用)

quarkus依赖注入之十一:拦截器高级特性上篇(属性设置和重复使用)

欢迎访问我的GitHub 这里分类和汇总了欣宸的全部原创(含配套源码):github.com/zq2599/blog… 本篇概览 本篇是《quarkus依赖注入》系列的第十一篇,之前的《拦截器》学习了拦截器的基础知识,现在咱们要更加深入的了解拦截器,掌握两种高级用法:拦截器属性和重复使用拦截器

宇宙之一粟 宇宙之一粟 2023-07-15
0 0 0
二叉树及其相关题目 | Go 语言实现

二叉树及其相关题目 | Go 语言实现

二叉树是一种树状结构,每个节点都包含自身的数据,指向左子节点和右子节点的指针。  // 这是用链式存储的二叉树,也可以使用数组来存储,如 heap  type Node struct {     Data        int     Left, Right *Node  } 遍历二叉树 二叉树根

大白菜程序猿 大白菜程序猿 2023-07-15
0 0 0
Linux高性能网络编程十谈|信号和定时器

Linux高性能网络编程十谈|信号和定时器

在Linux网络编程中,信号处理和定时器是经常遇到的功能,在聊这块内容之前如果您看过上一篇文章《Linux高性能网络编程十谈|IO复用和模式》,应该比较完整的了解epoll了,但是这里还遗漏了一个知识点,那开始先补上这个坑。 关于epoll惊群问题,什么是惊群呢? 比如我们在写代码过程中,使用两个线

醒在深海的猫 醒在深海的猫 2023-07-15
0 0 0
1 … 1,631 1,632 1,633 1,634 1,635 … 1,703