线程 架构 原因redis

挖矿僵尸网络蠕虫病毒kdevtmpfsi处理过程(包含部分pgsql线程池满的情况)

背景: pgsql连接时候报错org.postgresql.util.PSQLException: FATAL: sorry, too many clients already, 意思是client已经把连接池占满了. 使用ps -ef | grep postgres删除几个进程, 进入数据库运行S ......
蠕虫 线程 僵尸 kdevtmpfsi 病毒

redis实现分布式锁(包含代码以及分析利弊)

redis实现分布式锁(基础版) 使用redis实现分布式锁的方法有多种,基础版本是基于setnx命令,即如果不存在则设置。这个命令可以保证只有一个客户端能够成功设置一个key,从而获得锁。设置key的时候需要设置一个过期时间,以防止死锁。释放锁的时候需要删除key,或者使用lua脚本来保证原子性。 ......
利弊 分布式 代码 redis

OnionArch 2.0 - 基于DDD的洋葱架构改进版开源

大家好,去年我发布了一篇 OnionArch - 采用DDD+CQRS+.Net 7.0实现的洋葱架构 。很多程序员都比较感兴趣,给我要源代码。这次我把OnionArch进行了升级,改进了一些特性,并放出源代码,iamxiaozhuang/OnionArch2 (github.com) 欢迎大家研究 ......
洋葱 架构 OnionArch 2.0 DDD

C# 线程查漏补缺

进程和线程 不同程序执行需要进行调度和独立的内存空间 在单核计算机中,CPU 是独占的,内存是共享的,这时候运行一个程序的时候是没有问题。但是运行多个程序的时候,为了不发生一个程序霸占整个 CPU 不释放的情况(如一个程序死循环无法结束了,那么其他程序就没有机会运行了),就需要开发者给不同程序划分不 ......
线程

C# 线程同步查漏补缺

同步构造 当线程 A 在等待一个同步构造,另一个线程 B 持有构造一直不释放,那么就会导致线程 A 阻塞。同步构造有用户模式构造和内核模式构造。 用户模式构造通过 CPU 指令来协调线程,所以速度很快。也意味着不受操作系统控制,所以等待构造的线程会不停自旋,浪费 CPU 时间。 内核模式构造通过操作 ......
线程

【Redis场景3】缓存穿透、击穿问题

【Redis场景3】缓存穿透、击穿问题,涉及缓存穿透、缓存击穿问题的原因分析及解决方案,并进行压测实践;每1~2周学习整理redis中的知识点和场景实现,希望有所输入输出,每天进步一点点。 ......
缓存 场景 问题 Redis

【Redis场景4】单机环境下秒杀问题

【Redis场景4】单机环境下秒杀问题;涉及到全局唯一ID的生成,并发问题,库存超卖问题,一人一单秒杀问题等,相关场景进行压测,不局限于文字,注重实操。 ......
单机 场景 环境 问题 Redis

如何避免让线程摸鱼,请用异步技术 async await 拿捏他~

发现问题 你点了外卖后,会一直不做其它事情,一直等外卖的到来么? 当然不会拉! 我们来看看代码世界的: public void Query(){ // 当前线程 向 数据库服务器 发起查询命令 // 在 数据库服务器 返回数据之前,当前线程 一直等待,不干活了!!! var data = Datab ......
线程 async await 技术

Java线程池详解

一、线程池有哪些优点 减少资源开销,不用频繁的创建和销毁线程 提高响应时长,有任务时可直接执行。 提高线程的可管理性,所有线程资源都由线程池统一管理。 二、线程池的主要参数 线程池ThreadPoolExecutor的继承关系: 想知道有哪些参数,先看参数最多的构造函数: public Thread ......
线程 Java

Java线程池中的execute和submit

一、概述 execute和submit都是线程池中执行任务的方法。 execute是Executor接口中的方法 public interface Executor { void execute(Runnable command); } submit是ExecuteService接口中的方法。 pu ......
线程 execute submit Java

【Azure Cache for Redis】Python Django-Redis连接Azure Redis服务遇上(104, 'Connection reset by peer')

问题描述 使用Python连接Azure Redis服务,因为在代码中使用的是Django-redis组件,所以通过如下的配置连接到Azure Redis服务: CACHES = { "default": { "BACKEND": "django_redis.cache.RedisCache", " ......
Redis Azure Django-Redis Connection Python

Linux上安装jdk Tomcat mysql redis等

1.安装JDk 1.1这里使用xshell中xfxp进行文件的上传,将jdk二进制包上传到Linux服务器上 下载地址:https://www.oracle.com/java/technologies/downloads/#java8 或者这里有下载好的安装包:链接:https://pan.baid ......
Tomcat Linux mysql redis jdk

Redis 异步客户端选型及落地实践

为了支持更加广泛的业务场景,可视化编排系统近期需要支持对缓存的操作功能,为保证编排系统的性能,服务的执行过程采用了异步的方式,因此我们考虑使用Redis的异步客户端来完成对缓存的操作。 ......
客户端 客户 Redis

探索ABP基础架构的横切关注点

大家好,我是张飞洪,感谢您的阅读,我会不定期和你分享学习心得,希望我的文章能成为你成长路上的垫脚石,让我们一起精进。 授权、验证、异常处理和日志记录等横切关注点是每个系统的基本组成部分,它们对于确保系统的安全和良好运行至关重要。 实现横切关注点会导致应用中的很多地方出现重复代码。此外,一次授权或验证 ......
关注点 架构 基础 ABP

深入解读.NET MAUI音乐播放器项目(一):概述与架构

为什么想起来这个项目了呢?这是一个Windows Phone 8的老项目,2014年用作为兴趣写了个叫“番茄播放器”的App,顺便提高编程技能。这个项目的架构历经多次迁移,从WP8到UWP再到Xamarin.Forms。去年底随着MAUI的正式发布,又尝试把它迁移到MAUI上来。 ......
架构 播放器 项目 音乐 MAUI

Python 同步和异步使用Redis集群的方法

目前在做Python项目用到同步和异步的方法使用Redis单机,现在要增加兼容Redis集群。也就说当前项目用到中同步单机,同步集群,异步单机,异步集群都用到了。 ......
集群 方法 Python Redis

Redis - 介绍与使用场景

Redis 每秒可以处理超过 10 万次读写操作,是已知性能最快的 key-value 数据库,称得上是必须要学会的知识。 ......
场景 Redis

(一) MdbCluster分布式内存数据库——基础架构介绍

(一) MdbCluster分布式内存数据库——基础架构介绍 这个项目是怎么开始的我已经有些记不清楚了,大概是原来的内存数据库很不好用,一次次地让我们踩坑,我又自以为是地觉得可以做一个更好的出来。自从拥有自己的团队以来,我思考最多的总是如何带着团队做出有意义和有价值的产品,而不是将时间浪费在无谓的琐 ......
分布式 MdbCluster 架构 内存 数据库

单线程架构的Redis如此之快的 4 个原因

前言 作为内存中数据存储,Redis 以其速度和性能着称,通常被用作大多数后端服务的缓存解决方案。 但是,在内部,Redis 采用单线程架构。 为什么单线程设计依然会有这么高的性能?如果利用多线程并发处理请求不是更好吗? 在本文中,让我们深入探讨为什么 Redis 才有单线程架构,依然如此之快,主要 ......
线程 架构 原因 Redis

认知篇:CQRS架构模式的本质

CQRS只是一种非常简单的模式(pattern),CQRS本身并不是一种架构风格,和最终一致性/消息/读写分离/事件溯源/DDD等没有必然的联系,它最大优势是给我们带来更多的架构属性选择 ......
架构 本质 模式 CQRS

Redis缓存的主要异常及解决方案

作者:京东物流 陈昌浩 1 导读 Redis 是当前最流行的 NoSQL数据库。Redis主要用来做缓存使用,在提高数据查询效率、保护数据库等方面起到了关键性的作用,很大程度上提高系统的性能。当然在使用过程中,也会出现一些异常情景,导致Redis失去缓存作用。 2 异常类型 异常主要有 缓存雪崩 缓 ......
缓存 解决方案 方案 Redis

OpenMP 线程同步 Construct 实现原理以及源码分析(下)

在上面文章当中我们主要分析了 flush, critical, master 这三个 construct 的实现原理。在本篇文章当中我们将主要分析另外两个 construct : barrier 和 single 。 ......
线程 Construct 源码 原理 OpenMP

Flutter 耗时监控 | 路由名为空原因分析

前言 最近群里遇到获取Route名为空的问题,当时没在意。。。 直到自己在监控页面启动耗时,需要确定当前页面是哪个从而方便标记它加载的耗时时,遇到同样 route.settings.name 为空问题,模拟场景如下: 在 main.dart 页面中点击 + 按钮跳转到 TestPage2 页面。 M ......
原因分析 路由 原因 Flutter

Redis之key的淘汰策略

淘汰策略概述 redis作为缓存使用时,在添加新数据的同时自动清理旧的数据。这种行为在开发者社区众所周知,也是流行的memcached系统的默认行为。 redis中使用的LRU淘汰算法是一种近似LRU的算法。 淘汰策略 针对淘汰策略,redis有一下几种配置方案: 1、noeviction:当触发内 ......
策略 Redis key

刺激,线程池的一个BUG直接把CPU干到100%了。

你好呀,我是歪歪。 给大家分享一个关于 ScheduledExecutorService 线程池的 BUG 啊,这个 BUG 能直接把 CPU 给飚到 100%,希望大家永远踩不到。 但是,u1s1,一般来说也很难踩到。 到底咋回事呢,让我给你细细嗦嗦。 Demo 老规矩,按照惯例,先搞个 Demo ......
线程 100% BUG CPU

【深入浅出 Yarn 架构与实现】4-4 RM 管理 Application

在 YARN 中,Application 是指应用程序,它可能启动多个运行实例,每个运行实例由 —个 ApplicationMaster 与一组该 ApplicationMaster 启动的任务组成,它拥有名称、队列、优先级等属性,是一个比较宽泛的概念,可以是一个 MepReduce 作业、一个 D... ......
深入浅出 Application 架构 Yarn RM

Redis缓存何以一枝独秀?(2) —— 聊聊Redis的数据过期、数据淘汰以及数据持久化的实现机制

Redis作为一个非关系型数据库,由于其超高的并发处理性能,及其对缓存场景所提供的系列能力构建,使其成为了集中缓存的绝佳选择。本篇我们聊聊Redis数据管理的能力,如数据过期、数据淘汰、数据持久化等。 ......
数据 一枝独秀 Redis 缓存 机制

面对集中式缓存实现上的挑战,Redis交出的是何种答卷?聊聊Redis在分布式方面的能力设计

对于一个集中式缓存的分布式能力构建,必须要额外提供一些机制,来保障数据在各个节点上的安全与一致性。本文以Redis为代表,看下集Redis面对上述问题交出的是怎样一份答卷。 ......
Redis 答卷 分布式 缓存 方面

Redis缓存何以一枝独秀?——从百变应用场景与热门面试题中感受下Redis的核心特性与使用注意点

在分布式盛行的今天,本地缓存明显无法满足分布式场景的缓存诉求。作为应对之法,集中式缓存被广泛的使用在各中分布式系统中,而使用最广泛的莫过于大家耳熟能详的Redis了,本篇开始聊一聊Redis相关的内容。 ......
一枝独秀 Redis 缓存 场景 特性

.NetCore下基于FreeRedis实现的Redis6.0客户端缓存之缓存键条件优雅过滤

前言 众所周知内存缓存(MemoryCache)数据是从内存中获取,性能表现上是最优的,但是内存缓存有一个缺点就是不支持分布式,数据在各个部署节点上各存一份,每份缓存的过期时间不一致,会导致幻读等各种问题,所以我们实现分布式缓存通常会用上Redis 但如果在高并发的情况下读取Redis的缓存,会进行 ......
缓存 FreeRedis 客户端 条件 NetCore