Stella981 Stella981
4年前
MESI协议:Cache 一致性协议
总线嗅探机制把所有的读写请求都通过总线(Bus)广播给所有的CPU核心,然后让各个核心去“嗅探”这些请求,再根据本地的情况进行响应。MESI协议基于写失效(WriteInvalidate)如果某个CPU核心写入一个CacheLine,则会广播一个失效请求告诉所有其他的
Python的多任务编程
前言Python程序代码都是按自上而下的顺序加载并执行的,但实际需要代码处理的任务并不都是需要按部就班的顺序执行,通常为提高代码执行的效率,需要多个代码执行任务同时执行,也就是多任务编程的需求。基本的计算机模型是由CPU、RAM及各种资源(键盘、硬盘、显卡、网卡等)组成,代码的执行过程,实际就是CPU和相关寄存器及RAM之间的相关处理的过程。在单核CPU场景
Stella981 Stella981
4年前
Bootloader的结构和启动过程
CPU上电后,会在某个地址开始执行,比如MIPS结构的CPU会从0xBFC00000取第一条指令,而ARM结构的CPU则从0x00000000开始,嵌入式开发板中,需要把存储器件ROM或Flash等映射到这个地址。而Bootloader就存在这个地址的开始处,这样一上电后就会从这个地址处执行。Bootloader执行后从板子上的某个固态存储设备上将操作系统O
Stella981 Stella981
4年前
Redis都有哪些数据类型
string这是最基本的类型了,就是普通的set和get,做简单的kv缓存hash这个是类似map的一种结构,这个一般就是可以将结构化的数据,比如一个对象(前提是这个对象没嵌套其他的对象)给缓存在redis里,然后每次读写缓存的时候,可以操作hash里的某个字段。key150value{“id”:
Wesley13 Wesley13
4年前
DNS解析过程
DNS解析过程是重点也是难点,下面我按自己的理解一步步来解释,可能有错误之处,欢迎指正。以下步骤中,将DNS缓存中存在域名对应IP则DNS解析成功,用户计算机将直接访问服务器,若DNS服务器缓存中不存在域名对应IP,则自动进入下一步。1.浏览器缓存 当用户通过浏览器访问某域名时,浏览器首先会在自己的缓存中查找是否有该域名对应的IP地址
Stella981 Stella981
4年前
Nginx 作为web server 的优化要点
常用优化要点nginx使用的是固定数量的workers,每个worker都处理进入的请求。最佳实践是每个CPU内核配置一个worker.如何知道您的系统有几个CPU?$ grep ^processor /proc/cpuinfo | wc l对于一个四核处理器,配置文件类似:\Oneworkerper
Stella981 Stella981
4年前
Hibernate4.x之Session
HibernateSession概述  Session接口是Hibernate向应用程序提供的操纵数据库的最主要的接口,它提供了基本的保存、更新、删除和加载Java对象的方法。  Session具有一个缓存,位于缓存中的对象称为持久化对象,它和数据库中的相关记录对应。Session能够在某些时间点,按照缓存中对象的变化来执行相关的SQL语句,来同步
Wesley13 Wesley13
4年前
MySQL数据库CPU问题一则
作者:张政俊,中欧基金DBAMysql一般出现CPU负载过高问题的时候,我们都会去看下故障期间的慢sql日志,然后找出全表扫描、索引不合理、函数运算过多的sql,让开发同学优化下。实在不行的话,那就升级CPU硬件,替换更高频率的CPU,1路的升级成2路,2路的升级成四路。这次出现的问题因为关乎到每天的业务处理,所以很多措施无法第一时间到位,
Macos系统监控工具:iStat Menus for mac中文版 支持M1
iStatMenus是一款Mac上的硬件信息检测软件,能够实时监控计算机的CPU、GPU、内存、硬盘、网络、温度、电池以及系统时间等各个方面的信息。通过iStatMenus,用户可以在菜单栏实时查看Mac电脑的运行状态,包括CPU使用率、内存占用情况、硬盘
京东云开发者 京东云开发者
10个月前
由 Mybatis 源码畅谈软件设计(七):从根上理解 Mybatis 一级缓存
作者:京东保险王奕龙本篇我们来讲一级缓存,重点关注它的实现原理:何时生效、生效范围和何时失效,在未来设计缓存使用时,提供一些借鉴和参考。1.准备工作定义实体publicclassDepartmentpublicDepartment(Stringid)thi