首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏小工匠聊架构

    Spring5 - 核心原理

    文章目录 核心原理解析 核心原理解析 周末梳理了下Spring Framework的核心原理, 详细请参考: 在Processon上,直达地址: https://www.processon.com

    31640发布于 2021-09-08
  • Feign 实现原理 5 步曲

    一、Feign 实现原理 5 步曲 解析接口 → 把 @FeignClient 接口上所有注解拼成「元数据」 动态代理 → 为接口生成 JDK Proxy,InvocationHandler 是 Feign LoadBalancerClient)真正发 HTTP 二、每一步对应的核心代码 下面代码均来自 openfeign-core 11.x 与 spring-cloud-openfeign 3.x,只保留“能说明原理 getObject() └─ Feign.Builder → Targeter → Proxy └─ 返回代理对象给 Spring 容器一句话总结 Feign 的原理就是

    30600编辑于 2025-09-21
  • 来自专栏前端开发随记

    HTML5离线存储原理

    前言 使用HTML5,通过创建cache manifest文件,可轻松创建web应用的离线版本;HTML5引入了应用程序缓存,这意味着web应用可进行缓存,并可在没有网络时进行访问。 应用程序缓存为应用带来三个优势 离线浏览—用户可在离线时使用 速度—已经缓存的资源加载的更快 减少服务器负载—浏览器将只从服务器下载更改过的资源 原理和环境 如上面提到的HTML5的离线存储是基于一个新建的 就像cookie一样,html5的离线存储也需要服务器环境。 解析清单 在开始之前要先了解下 manifest(即.appcache文件),上面的解析清单要怎么写。 可以使用*来指示所有其他资源/文件都需要因特网连接: NETWORK: * FALLBACK 下面的 FALLBACK 小节规定如果无法建立因特网连接,则用 “offline.html” 替代 /html5/ 目录中的所有文件: ALLBACK:/html5/ /404.html 第一个 URI 是资源,第二个是替补。

    3.8K50编辑于 2022-12-15
  • 来自专栏ops技术分享

    Nginx结构原理全解析(5

    nginx在启动后,在unix系统中会以daemon(服务)的方式在后台运行,后台进程包含一个master进程和多个worker进程。

    42720发布于 2021-05-11
  • 来自专栏全栈程序员必看

    定时任务执行原理_md5算法原理

    文章目录 前言 时间轮定时使用方式 时间轮定时内部原理 时间轮定时源码剖析 构造方法 添加任务 工作线程启动 工作线程run方法 指针跳动 将队列任务放入时间轮中 链表任务遍历 定时任务执行 前言 在对比的同时,也了解了下其简单原理,在这里描述下我对时间轮算法实现定时任务的理解。 时间轮定时器原理基本都是如下图: 时间轮算法可以简单的看成一个循环数组+双向链表的数据结构实现的。 通过时间轮算法的原理图我们可以知道,tickDuration 越小,定时任务越精确。 timeout; } 该方法主要执行以下几个工作 1.参数非空校验 2.任务数量最大值检测 3.工作线程启动 4.获取任务的 deadline,将任务封装为 HashedWheelTimeout 对象 5.

    53020编辑于 2022-11-14
  • 来自专栏Java开发者

    Redis 5 集群选举原理分析

    Redis 5 集群选举原理分析 Redis系统介绍: Redis的基础介绍与安装使用步骤:https://www.jianshu.com/p/2a23257af57b Redis的基础数据结构与使用 :https://www.jianshu.com/p/c95c8450c5b6 Redis核心原理:https://www.jianshu.com/p/4e6b7809e10a Redis 5 之后版本的高可用集群搭建 :https://www.jianshu.com/p/8045b92fafb2 Redis 5 版本的高可用集群的水平扩展:https://www.jianshu.com/p/6355d0827aea Redis 5 集群选举原理分析:https://www.jianshu.com/p/e6894713a6d5 Redis 5 通信协议解析以及手写一个Jedis客户端:https://www.jianshu.com ---- 原理分析: 当slave发现自己的master变为FAIL状态时,便尝试进行Failover,以期成为新的master。

    1.3K21发布于 2019-04-11
  • 来自专栏离别歌 - 信息安全与代码审计

    md5(unix)原理分析

    我们通过他文中给出的hash入手,来分析一下unix(md5)的原理与破解方法。 目标hash:1Dx1bONFt 实际上,我们要先明白一点。 目标hash的magic==1,说明是md5加密。 当然内部实现不会是单纯单次md5,但总体来说是以MD5为hash函数,通过多次计算得到的最终值。 php include_once("php-crypt-md5/library/Md5Crypt/Md5Crypt.php"); $password = "elon11"; $salt = "Dx1bONFt "; echo \Md5Crypt\Md5Crypt::unix($password, $salt); 得到的结果其实就是最开始给出的目标哈希 1Dx1bONFt ?

    1.7K30发布于 2020-10-15
  • 来自专栏golang云原生new

    k8s 自身原理 5

    我们知道容器是通过 pod 来承载的,我们在 k8s 中,服务都是跑在 pod 里面的,pod 里面可以跑 1 个容器,或者跑多个容器,那么咱们 pod 里面跑 1 个服务容器,咱真的就以为里面就只有这样个容器吗?

    15330编辑于 2023-09-01
  • 来自专栏不温卜火

    HBase快速入门系列(5) | Hbase原理

    中又存储了用户表的region信息; 2.根据namespace、表名和rowkey在meta表中找到对应的region信息; 3.找到这个region对应的regionserver; 4.查找对应的region; 5.

    59830发布于 2020-10-28
  • 来自专栏黑白天安全团队

    socks5协议原理学习

    这个项目的地址如下,是一个小型的sock5代理工具,这个工具在socks5协议中调用了armon的go-socks5项目和调用了多路复用yamux项目。 /yamux 这里调用了go-socks5这个包,这是一个socks5协议的api,是使用Go写的,所有可以直接调用即可原理和上面介绍的一样。 首先一开始就创建一个SOCKS5服务器,socks5.Config{} 适用于配置 Config的。 用于设置和配置服务器 //创建一个SOCKS5服务器 // // socks5.New 就是新建一个socks5服务器 server,err := socks5.New(&socks5.Config{ // socks5.New 就是新建一个socks5服务器 server,err := socks5.New(&socks5.Config{}) if err !

    13.6K41发布于 2021-03-16
  • 来自专栏黯羽轻扬

    5 图看懂 Node 模块加载原理

    注意一个细节,是在加载&执行模块文件前会先缓存module实例,而不是之后才缓存,这是Node.js 能够从容应对循环依赖的根本原因:

    1.4K20发布于 2020-05-22
  • 来自专栏全栈程序员必看

    5g切片隔离原理_5G切片编排器

    5G网络切片安全隔离机制与应用* 毛玉欣1,陈林2,游世林1,闫新成1,吴强1 【摘 要】介绍了满足多样化垂直行业应用的5G网络服务化架构和网络切片实现。 FlexE客户的 10G、25G、40G、n×50G分别在 Shim层占用 2、5、8、n×10个5G时隙。 智能 DTU通过 CPE接入 5G网络。 CPE作为 5G网络的接入终端,配备一张 SIM卡。 当 CPE注册到 5G网络时,需要携带 NSSAI。 5G网络为 CPE选择对应的网络切片。 5 结束语 本文从 5G时代业务多样化对网络性能的需求出发,介绍了 5G网络服务化架构和网络切片的实现机制。

    1.5K20编辑于 2022-11-10
  • 来自专栏Redis原理与应用

    Redis原理5.性能和使用总结

    大纲1.导致Redis阻塞的内在原因2.导致Redis阻塞的外在原因3.Redis的性能总结4.Redis缓存的相关问题5.数据库和缓存的一致性问题6.数据库和缓存的一致性情况列举1.导致Redis阻塞的内在原因 (5)缓存雪崩问题缓存雪崩是指缓存中数据大批量到过期时间,而查询量巨大,引起数据库压力过大甚至宕机。 比如选取三个哈希函数,对象A计算出的哈希值分别为0、5、7,那么比特数组就为:10000101000000000000。 5.数据库和缓存的一致性问题(1)关于缓存和数据库一致性的相关问题(2)首先从引入缓存提高性能开始(3)缓存利用率和一致性问题(4)异常引起的一致性问题(5)并发引起的一致性问题(6)删除缓存可以保证一致性吗 (5)并发引起的一致性问题假设采用先更新数据库,再更新缓存的方案,并且两步都成功执行,如果存在并发,那么情况会是怎样?

    36700编辑于 2025-02-25
  • 来自专栏一“技”之长

    MD5加密原理解析及OC版原理实现 原

    MD5加密原理解析及OC版原理实现 一、MD5算法基础概念       MD5算法是Hash算法的一种,叫做讯息摘要演算法。所谓摘要,从字面意思理解,是指内容的大概。 因为MD5算法最终生成的是一个128位长的数据,从原理上说,有2^128种可能,这是一个非常巨大的数据,约等于3.4乘10的38次方,虽然这个是个天文数字,但是世界上可以进行加密的数据原则上说是无限的, 二、MD5的使用场景       MD5常用在密码加密中,一般为了保证用户密码的安全,在数据库中存储的都是用户的密码经过MD5加密后的值,在客户端用户输入密码后,也会使用MD5进行加密,这样即使用户的网络被窃听 三、MD5算法原理       MD5算法大致分为4步完成: 第1步:进行数据填充整理       这一步是对要加密的数据进行填充和整理,将要加密的二进制数据对512取模,得到的结果如果不够448位,则进行补足 9, 14, 20, 5, 9, 14, 20, 5, 9, 14, 20, 5, 9, 14, 20, 4, 11,16, 23, 4, 11, 16, 23, 4, 11, 16, 23, 4,

    2.1K10发布于 2019-03-12
  • 来自专栏Golang语言社区

    Golang源码探索----GC的实现原理(5)

    gcDrain函数扫描完根对象, 就会开始消费标记队列, 对从标记队列中取出的对象调用scanobject函数:

    95940发布于 2020-12-03
  • 来自专栏程序员泥瓦匠

    5分钟了解 CDN 加速原理

    简单的说,CDN 的工作原理就是将您源站的资源缓存到位于全球各地的 CDN 节点上,用户请求资源时,就近返回节点上缓存的资源,而不需要每个用户的请求都回您的源站获取,避免网络拥塞、缓解源站压力,保证用户访问资源的速度和体验 对网络的优化作用主要体现在如下几个方面 解决服务器端的“第一公里”问题 缓解甚至消除了不同运营商之间互联的瓶颈造成的影响 减轻了各省的出口带宽压力 缓解了骨干网的压力 优化了网上热点内容的分布 二、CDN工作原理 智能调度 DNS(比如 f5 的 3DNS) 智能调度DNS是CDN服务中的关键系统.当用户访问加入CDN服务的网站时,域名解析请求将最终由 “智能调度DNS”负责处理。 缓存功能服务 负载均衡设备(如lvs,F5的BIG/IP) 内容Cache服务器(如squid) 共享存储 三、名词解释 CNAME记录(CNAME record) CNAME即别名( Canonical

    2.3K10编辑于 2021-12-17
  • 来自专栏JAVA并发编程

    JAVA并发编程系列(5)AQS原理剖析

    很多小朋友面试时候,面试官考察并发编程部分,都会被问:说一下AQS原理。 面对并发编程基础和面试经验,专栏采用通俗简洁无废话无八股文方式,已陆续梳理分享了《一文看懂全部锁机制》、《JUC包之CAS原理》、《volatile核心原理》、《synchronized全能王的原理》, 希望可以帮到大家巩固相关核心技术原理。 二、AQS的原理 我们直接看源码说原理,AQS队列同步器核心三个变量:head节点、tail节点、state状态码。 核心原理:队列中的每个节点对应一个线程。 这个原理,不同锁实现会有些区别,具体AQS原理等我们在ReentrantLock,semaphore信号量,FutureTask专文再详细分析。

    36520编辑于 2024-12-09
  • 来自专栏一个会写诗的程序员的博客

    5章 Spring Boot自动配置原理

    5章 Spring Boot自动配置原理 5.1 SpringBoot的核心组件模块 首先,我们来简单统计一下SpringBoot核心工程的源码java文件数量: 我们cd到spring-boot-autoconfigure 5.3 @EnableAutoConfiguration自动配置原理 通过@EnableAutoConfiguration启用Spring应用程序上下文的自动配置,这个注解会导入一个EnableAutoConfigurationImportSelector SpringBoot有很多第三方starter,其自动配置的原理基本都是这样,比如mybatis-spring-boot-starter的MybatisAutoConfiguration,阅读源码https 上面文字描述了这么多,再用一张形象生动的图来说明[5]: ? 3.http://www.cnblogs.com/javaee6/p/3714719.html 4.https://github.com/mybatis/spring-boot-starter 5.

    86630发布于 2018-08-20
  • 来自专栏全栈工程师修炼之路

    5.Docker底层实现原理了解

    [TOC] 0x00 Docker架构与底层实现原理浅析 通过前面的学习,我们基本掌握了Docker的配置使用,现在我们以 Docker 基础架构来探究Docke底层的核心技术,简单的包括: Linux 答: 主设备号表示一个特定的驱动程序,用来区分不同种类的设备; 次设备号表示使用该驱动程序的各设备,用来区分同一种类(类型)的多个设备; ---- 3.底层原理浅析 1.命名空间 描述:容器(Container rwm c 1:3 rwm c 1:9 rwm c 1:8 rwm #brw-rw----. 1 root disk 8, 0 6月 15 09:46 /dev/sda c 5:0 rwm c 5:1 6.Docker 网络查看 $docker network ls NETWORK ID NAME DRIVER SCOPE 5de5f196afda 答:实际上这就是Overlay工作原理之所在; 可以通过yum install -y bridge-utils && brctl show 进行查看得出结果, 当每创建一个网络类型为Overlay的容器

    1.6K20编辑于 2022-09-28
  • 来自专栏全栈程序员必看

    MD5加密概述,原理及实现

    MD5概述: MD5消息摘要算法,属Hash算法一类。MD5算法对输入任意长度的消息进行运行,产生一个128位的消息摘要(32位的数字字母混合码)。 MD5主要特点: 不可逆,相同数据的MD5值肯定一样,不同数据的MD5值不一样 (一个MD5理论上的确是可能对应无数多个原文的,因为MD5是有限多个的而原文可以是无数多个。 4、弱抗碰撞:已知原数据和其MD5值,想找到一个具有相同MD5值的数据(即伪造数据)是非常困难的。 5、强抗碰撞:想找到两个不同的数据,使它们具有相同的MD5值,是非常困难的。 虽说MD5有不可逆的特点 但是由于某些MD5激活成功教程网站,专门用来查询MD5码,其通过 把常用的密码先MD5处理,并将数据存储起来,然后跟需要查询的MD5结果匹配,这时就有可能通过匹配的MD5得到明文 MD5加密算法原理及实现: MD5算法原理: 1、数据填充 对消息进行数据填充,使消息的长度对512取模得448,设消息长度为X,即满足X mod 512=448。根据此公式得出需要填充的数据长度。

    3.9K10编辑于 2022-09-15
领券