上一页 1 ··· 18 19 20 21 22 23 24 25 26 ··· 41 下一页
摘要: 大家都知道,在计算机中,IO一直是一个瓶颈,很多框架以及技术甚至硬件都是为了降低IO操作而生,今天聊一聊过滤器,先说一个场景: 我们业务后端涉及数据库,当请求消息查询某些信息时,可能先检查缓存中是否有相关信息,有的话返回,如果没有的话可能就要去数据库里面查询,这时候有一个问题,如果很多请求是在请求数 阅读全文
posted @ 2021-12-13 11:01 charyGao 阅读(1460) 评论(1) 推荐(0)
摘要: 背景 从 JDK 1.7 开始,Oracle 团队就开始对 HotSpot VM 的永久代(PermGen)大刀阔斧的修改、移除,导致 HotSpot 的内存区域发生了很多改变,最终在 JDK 1.8 元空间(Metaspace)取代了永久代成为 HotSpot VM 对方法区的实现。 我们入门虚拟 阅读全文
posted @ 2021-12-09 10:37 charyGao 阅读(3062) 评论(0) 推荐(3)
摘要: https://docs.microsoft.com/en-us/cpp/build/reference/base-base-address?view=msvc-170 The /BASE option sets a base address for the program, overriding 阅读全文
posted @ 2021-12-02 16:18 charyGao 阅读(9371) 评论(0) 推荐(0)
摘要: 关键call 在此,剩下的自己搞定。 参考:https://www.52pojie.cn/thread-1451831-1-1.html 话不多说先上代码:<ignore_js_op>接下来就是话要多说的环节了堆栈是一块儿连续的内存区域,通常情况下,由栈顶向栈底压入内容可以将堆栈抽象的理解为一个放在 阅读全文
posted @ 2021-11-26 18:27 charyGao 阅读(1171) 评论(0) 推荐(0)
摘要: 概述 我们在写代码时,总会遇到头文件多次包含的情况,刚开始时我们使用宏定义进行控制,之后发现有#pragma once这样简单的东西,当时是很兴奋,以为#pragma就这一种用法。唉~,现在想想当时还是年轻啊,不过还是年轻好啊。 1、什么是预处理 预处理是将源文件的文本作为翻译的第一阶段操作的文本处 阅读全文
posted @ 2021-11-15 17:50 charyGao 阅读(981) 评论(0) 推荐(0)
摘要: 生成pem文件 Covert Private Key to OpenSSH Format... 转换私有密钥为 OpenSSH 格式。 2个文件 KEY,KEY.pub 新建连接,设置SSH2的Authentication,设置属性Properties... Use global public ke 阅读全文
posted @ 2021-11-13 14:59 charyGao 阅读(424) 评论(0) 推荐(0)
摘要: SpringSecurity原理剖析及其实战(一) https://blog.csdn.net/weixin_43934626/article/details/121050704 1.Spring Security介绍 1.1 Spring Security定义 Spring Security是一个 阅读全文
posted @ 2021-11-13 14:54 charyGao 阅读(111) 评论(0) 推荐(0)
摘要: 字符串前面加L表示该字符串是Unicode字符串。_T是一个宏,如果项目使用了Unicode字符集(定义了UNICODE宏),则自动在字符串前面加上L,否则字符串不变。因此,Visual C++里边定义字符串的时候,用_T来保证兼容性。VC支持ascii和unicode两种字符类型,用_T可以保证从 阅读全文
posted @ 2021-11-12 13:27 charyGao 阅读(458) 评论(0) 推荐(0)
摘要: 寻找64位系统某符号特征码时发现他的MOV指令用的是相对地址,之前32位下从来没听说MOV还能用相对地址,故查阅了下Intel指令手册。在MOV指令介绍下找到如下介绍: In 64-bit mode, the instruction’s default operation size is 32 bi 阅读全文
posted @ 2021-11-11 16:06 charyGao 阅读(2479) 评论(0) 推荐(1)
摘要: gRPC快速入门(一)——Protobuf简介 https://blog.51cto.com/u_9291927/2331980 gRPC快速入门(一)——Protobuf简介 一、Protobuf简介 1、Protobuf简介 Protobuf即Protocol Buffers,是Google公司 阅读全文
posted @ 2021-11-03 16:03 charyGao 阅读(634) 评论(0) 推荐(0)
摘要: 1. 准备环境 16G 4核CPU 主机一台 2. 安装virtual box 3. 安装vagrant 4. Vagrantfile # -*- mode: ruby -*- # vi: set ft=ruby : Vagrant.require_version ">= 1.6.0" boxes 阅读全文
posted @ 2021-10-30 00:32 charyGao 阅读(1140) 评论(1) 推荐(0)
摘要: 文章转载自:http://blog.csdn.net/ithzhang/article/details/20160009 在各个版本的编译器中,我们可以通过配置选项来设置程序使用的C和C++运行时库的类型。如下图(其他版本编译器大同小异): MT选项:链接LIB版的C和C++运行库。在链接时就会在将 阅读全文
posted @ 2021-10-29 15:15 charyGao 阅读(3114) 评论(0) 推荐(0)
摘要: 常用削去警告办法: #pragma warning(disable:4035) //no return value #pragma warning(disable:4068) // unknown pragma #pragma warning(disable:4201) //nonstandard 阅读全文
posted @ 2021-10-29 09:57 charyGao 阅读(1137) 评论(0) 推荐(0)
摘要: 前言 shell脚本绝大部分命令自己平时也经常使用,但是在写成脚本的时候总觉得写的很难看。而且当我在看其他人写的脚本的时候,总觉得难以阅读。毕竟shell脚本这个东西不算是正经的编程语言,他更像是一个工具,用来杂糅不同的程序供我们调用。因此很多人在写的时候也是想到哪里写到哪里,基本上都像是一段超长的 阅读全文
posted @ 2021-10-28 19:34 charyGao 阅读(1120) 评论(0) 推荐(0)
摘要: 大家都知道,在 C++ 中可以通过 typedef 重定义一个类型: typedef unsigned int uint_t; 被重定义的类型并不是一个新的类型,仅仅只是原有的类型取了一个新的名字。因此,下面这样将不是合法的函数重载: void func(unsigned int);void fun 阅读全文
posted @ 2021-10-27 16:17 charyGao 阅读(1467) 评论(0) 推荐(0)
摘要: LRU LRU(Least Recently Used)是一种常见的页面置换算法,在计算中,所有的文件操作都要放在内存中进行,然而计算机内存大小是固定的,所以我们不可能把所有的文件都加载到内存,因此我们需要制定一种策略对加入到内存中的文件进项选择。 常见的页面置换算法有如下几种: LRU 最近最久未 阅读全文
posted @ 2021-10-26 11:18 charyGao 阅读(198) 评论(0) 推荐(0)
摘要: (1)书写结构 k&r风格: 缩进一个水平制符,k&r提倡8格.左花括号紧接其后不另起一行(函数体的左括号除外).if(...) { ...; ...;} else if(...) { ...; ...;} else { ...; ...;} while(...) { ...; ...;} do { 阅读全文
posted @ 2021-10-25 09:46 charyGao 阅读(1451) 评论(0) 推荐(0)
摘要: https://en.wikipedia.org/wiki/Buddy_memory_allocation 原文地址:http://blog.csdn.net/vanbreaker/article/details/7605367 伙伴系统的概述 Linux内核内存管理的一项重要工作就是如何在频繁申请 阅读全文
posted @ 2021-10-23 16:10 charyGao 阅读(1018) 评论(0) 推荐(0)
摘要: 计算机网络、编译原理和操作系统相关知识,肯定不会过时。 文件夹与目录结构这些帮助前几代人理解计算机的基本理论,在很多年轻一代看来已经成了一种莫名其妙的“疯话”。 两代人之间的碰撞 天体物理学家 Catherine Garland 从 2017 年开始逐渐意识到这个问题。当时她正在教授一门工程课程,要 阅读全文
posted @ 2021-10-19 10:25 charyGao 阅读(174) 评论(0) 推荐(0)
摘要: 官网链接: https://www.kernel.org/ HTTP https://www.kernel.org/pub/ GIT https://git.kernel.org/ 官网下载经常速度太慢,无法下载,提供另一个链接: http://ftp.sjtu.edu.cn/sites/ftp.k 阅读全文
posted @ 2021-10-11 19:16 charyGao 阅读(3262) 评论(0) 推荐(0)
摘要: 9.11 strace:跟踪进程的系统调用 、ltrace:跟踪进程调用库函数 strace 是Linux环境下的一款程序调试工具,用于检查一个应用程序所使用的系统调用以及它所接收的系统信息。strace会追踪程序运行时的整个生命周期,输出每一个系统调用的名字、参数、返回值和执行所消耗的时间等,是高 阅读全文
posted @ 2021-10-09 10:16 charyGao 阅读(1972) 评论(0) 推荐(0)
摘要: C10K问题由来 随着互联网的普及,应用的用户群体几何倍增长,此时服务器性能问题就出现。最初的服务器是基于进程/线程模型。新到来一个TCP连接,就需要分配一个进程。假如有C10K,就需要创建1W个进程,可想而知单机是无法承受的。那么如何突破单机性能是高性能网络编程必须要面对的问题,进而这些局限和问题 阅读全文
posted @ 2021-10-08 14:07 charyGao 阅读(1249) 评论(0) 推荐(0)
摘要: 操作系统 内存管理(上) 概念 覆盖交换技术 连续分配管理方式 内存管理学习笔记 : 操作系统 内存管理(上) 概念 覆盖交换技术 连续分配管理方式 操作系统 内存管理(中) 分页存储 操作系统 内存管理(下) 分段存储 段页式存储 虚拟内存 请求分页管理方式 大纲# 什么是内存# 内存是用于存放数 阅读全文
posted @ 2021-10-01 14:33 charyGao 阅读(239) 评论(0) 推荐(0)
摘要: 0x01 前言 操作系统通常使用动态链接的方法来提高程序运行的效率。在动态链接的情况下,程序加载的时候并不会把链接库中所有函数都一起加载进来,而是程序执行的时候按需加载,如果有函数并没有被调用,那么它就不会在程序生命中被加载进来。这样的设计就能提高程序运行的流畅度,也减少了内存空间。而且现代操作系统 阅读全文
posted @ 2021-10-01 10:31 charyGao 阅读(2701) 评论(1) 推荐(0)
摘要: https://levelup.gitconnected.com/why-is-list-struct-is-15-times-faster-to-allocate-than-list-class-17f5f79889ae 在上一篇文章《免费提高 C# 代码性能的 5 种方法》中,在其中一个示例中, 阅读全文
posted @ 2021-09-27 17:36 charyGao 阅读(1497) 评论(0) 推荐(0)
摘要: 一、概念 时间复杂度是总运算次数表达式中受n的变化影响最大的那一项(不含系数) 比如:一般总运算次数表达式类似于这样: a*2^n+b*n^3+c*n^2+d*n*lg(n)+e*n+f a ! =0时,时间复杂度就是O(2^n); a=0,b<>0 =>O(n^3); a,b=0,c<>0 =>O 阅读全文
posted @ 2021-09-18 17:13 charyGao 阅读(7944) 评论(0) 推荐(0)
摘要: lsof意义LiSt Open Files用于找出哪些文件被哪个进程打开。众所周知Linux/Unix将所有内容都视为文件(pipes,sockets,directories,devices等等)。使用的原因之一lsof命令是当磁盘无法卸载时,因为它表示正在使用文件。借助此命令,我们可以轻松识别正在 阅读全文
posted @ 2021-09-11 16:51 charyGao 阅读(526) 评论(0) 推荐(0)
摘要: 1、什么是幂等 在我们编程中常见幂等 select查询天然幂等 delete删除也是幂等,删除同一个多次效果一样 update直接更新某个值的,幂等 update更新累加操作的,非幂等 insert非幂等操作,每次新增一条 2、产生原因 由于重复点击或者网络重发: 点击提交按钮两次; 点击刷新按钮; 阅读全文
posted @ 2021-09-11 16:45 charyGao 阅读(624) 评论(0) 推荐(0)
摘要: 技术传播的价值,不仅仅体现在通过商业化产品和开源项目来缩短我们构建应用的路径,加速业务的上线速率,也体现在优秀工程师在工作效率提升、产品性能优化和用户体验改善等经验方面的分享,以提高我们的专业能力。 本文作者阿里巴巴技术专家三画,分享了自己和团队在画好架构图方面的理念和经验,首发于阿里内部技术分享平 阅读全文
posted @ 2021-09-11 16:42 charyGao 阅读(161) 评论(0) 推荐(0)
摘要: Zookeeper 简介ZooKeeper 由雅虎研究院开发,后来捐赠给了 Apache。ZooKeeper 是一个开源的分布式应用程序协调服务器,其为分布式系统提供一致性服务。其一致性是通过基于 Paxos 算法的ZAB 协议完成的。其主要功能包括:配置维护、域名服务、分布式同步、集群管理等。zo 阅读全文
posted @ 2021-08-05 21:37 charyGao 阅读(299) 评论(0) 推荐(0)
摘要: LeNet-5是一个较简单的卷积神经网络。下图显示了其结构:输入的二维图像,先经过两次卷积层到池化层,再经过全连接层,最后使用softmax分类作为输出层。关于CNN参见:https://blog.csdn.net/qq_42570457/article/details/81458077 LeNet 阅读全文
posted @ 2021-07-30 18:37 charyGao 阅读(1348) 评论(0) 推荐(0)
摘要: 简介 XML 和 JSON 是现今互联网中最常用的两种数据交换格式。XML 格式由 W3C 于 1996 年提出。JSON 格式由 Douglas Crockford 于 2002 年提出。虽然这两种格式的设计目标并不相同,但它们常常用于同一个任务,也就是数据交换中。XML 和 JSON 的文档都很 阅读全文
posted @ 2021-07-30 10:36 charyGao 阅读(2038) 评论(0) 推荐(0)
摘要: ConcurrentHashMap实现原理及源码分析 转载 ConcurrentHashMap是Java并发包中提供的一个线程安全且高效的HashMap实现(若对HashMap的实现原理还不甚了解,可参考我的另一篇文章HashMap实现原理及源码分析),ConcurrentHashMap在并发编程的 阅读全文
posted @ 2021-07-29 13:43 charyGao 阅读(119) 评论(0) 推荐(0)
摘要: https://via.hypothes.is/https://exacity.github.io/deeplearningbook-chinese/Chapter1_introduction/ Learning From Data MOOC - The Lectures (caltech.edu) 阅读全文
posted @ 2021-07-29 09:24 charyGao 阅读(107) 评论(0) 推荐(0)
摘要: Redis是基于内存的nosql,有些场景下为了节省内存redis会用“时间”换“空间”。ziplist就是很典型的例子。 ziplist是list键、hash键以及zset键的底层实现之一(3.0之后list键已经不直接用ziplist和linkedlist作为底层实现了,取而代之的是quickl 阅读全文
posted @ 2021-07-27 23:23 charyGao 阅读(1606) 评论(0) 推荐(0)
摘要: https://github.com/redis/redis/issues/7663 the redis-server main() function has the following code: /* Check if we need to start in redis-check-rdb/ao 阅读全文
posted @ 2021-07-16 14:27 charyGao 阅读(259) 评论(0) 推荐(0)
摘要: 【小家java】java5新特性(简述十大新特性) 重要一跃【小家java】java6新特性(简述十大新特性) 鸡肋升级【小家java】java7新特性(简述八大新特性) 不温不火【小家java】java8新特性(简述十大新特性) 饱受赞誉【小家java】java9新特性(简述十大新特性) 褒贬不一 阅读全文
posted @ 2021-07-10 12:26 charyGao 阅读(64) 评论(0) 推荐(0)
摘要: 阅读全文
posted @ 2021-07-03 19:28 charyGao 阅读(275) 评论(0) 推荐(0)
摘要: https://opensource.com/article/20/4/systemd systemd——是的,全部小写,甚至在句子的开头——是 init 和 SystemV init 脚本的现代替代品。它还有更多。 像大多数系统管理员一样,当我想到 init 程序和 SystemV 时,我想到的是 阅读全文
posted @ 2021-07-02 11:24 charyGao 阅读(353) 评论(0) 推荐(0)
摘要: Ubuntu如何备份和恢复系统http://wsfei.iteye.com/blog/1100534 在 使用Ubuntu之前,相信很多人都有过使用Windows系统的经历。如果你备份过Windows系统,那么你一定记忆犹新:首先需要找到一个备份工 具(通常都是私有软件),然后重启电脑进入备份工具提 阅读全文
posted @ 2021-07-01 11:15 charyGao 阅读(2281) 评论(0) 推荐(0)
上一页 1 ··· 18 19 20 21 22 23 24 25 26 ··· 41 下一页