首页|资源下载
登录|注册

您现在的位置是:电子研发网 > 技术阅读

技术阅读

  • 2023-12-31面试官:如何提高程序的性能?

    程序员经常要面临的一个问题就是:如何提高程序性能?这篇文章,我们循序渐进,从内存、磁盘I/O、网络I/O、CPU、缓存、架构、算法等多层次递进,串联起高性能开发十大必须掌握的核心技术。- I/O优化:零拷贝技术- I/O优化:多路复用技术- 线程池技术- 无锁编程技术- 进程间通信技术- RPC && 序列化技术- 数据库索引技术- 缓存技术 && 布隆过滤器- 全文搜索技术- 负载均衡技术准备好了吗,坐稳了,发车!首先,我们从最...

  • 2023-12-31小林炒粉开张!

    今天是个好日子,小林炒粉开张的日子到了!我骑着我心爱的三轮车去我的炒粉摆摊了,天气很好,没有下雨的征兆,心想今天应该能卖好多份炒粉。到了摊位后,我收拾了一番,准备开卖!很快,我的摊位就排起了长队,我一望过去,感觉有十多号人,我炒一份粉的时间大概要 3 分钟,但是我是一个人负责,所以打包、收钱找零、递餐的这些流程我都自己弄,这些流程全部加起来也得耗费我 1-2 分钟。由于我今天第一天开张,没考虑到炒粉到售卖...

  • 2023-12-31Java 多线程,八股文!

    直接进入正题,发车!简述java内存模型(JMM)java内存模型定义了程序中各种变量的访问规则。其规定所有变量都存储在主内存,线程均有自己的工作内存。工作内存中保存被该线程使用的变量的主内存副本,线程对变量的所有操作都必须在工作空间进行,不能直接读写主内存数据。操作完成后,线程的工作内存通过缓存一致性协议将操作完的数据刷回主存。简述as-if-serial编译器等会对原始的程序进行指令重排序和优化。但不管怎么重排序,...

  • 2023-12-31面试官:代码执行 send 后,数据就发出去了吗?

    今天又是被倾盆的需求淹没的一天。有没有人知道,那种“我用3句话,就让产品为我砍了18个需求”的鸡汤课在哪报名,想报。"听懂掌声"的那种课就算了,太费手了。扯远了,回到我们今天的正题,我们了解下这篇文的目录。目录代码执行send成功后,数据就发出去了吗?回答这个问题之前,需要了解什么是Socket 缓冲区。Socket 缓冲区什么是 socket 缓冲区编程的时候,如果要跟某个IP建立连接,我们需要调用操作系统提供的 socket API。so...

  • 2023-12-31出去之后,好好做人!华为两年,苦乐参半!

    一. 出去之后,好好做人我的朋友强哥给我发来微信说,痛定思痛之后,他要从华为离职,决定回长沙发展。收到信息后,我心想:难道华为人均40万年终奖,还不够香吗?强哥说,已经考虑好了,去意已决。知道强哥决定要离开后,我送了八字经典赠言:“出去之后,好好做人”。是的,何等经典的祝福语啊。强哥微信回复了狡黠的表情,然后我们约了吃个饭碰面一下,算是道个别吧,估计又要交流扯淡一番。二. 华为两年,苦乐参半没错,“出...

  • 2023-12-31Cookie/Session/Token 还傻傻分不清?

    大家好,我是小林。昨晚抱了下家里的小弟,养快 1 年啦, 越来越胖了,单手快抱不动了。小弟这大眼睛怪可爱的,满满的求知欲望!今天给大家分享 cookie、session、token的那些事儿。这是我的一个读者朋友面试微信的实习岗位时遇到的,在此和大家分享一下。话不多说,直接开车。1. 网站交互体验升级作为网友的我们,每天都会使用浏览器来逛各种网站,来满足日常的工作生活需求。现在的交互体验还是很丝滑的,但早期并非如此,而是...

  • 2023-12-31Redis分布式锁,你用对了吗?

    废话不多说,直接上硬核。今天我们就来聊聊分布式锁。PART1.分布式锁是什么?我们的手机有锁、车有锁、家门有锁、贵重物品会锁进保险箱。可以说,锁在我们生活中无处不在,时刻保护着我们的人身财产安全。在计算机领域也一样,锁可以理解为针对某项资源使用权限的管理,它通常用来控制共享资源,比如一个进程内有多个线程竞争一个数据的使用权限,解决方式之一就是加锁。那分布式锁是什么呢?顾名思义,分布式锁就是分布式场景下的...

  • 2023-12-31我惊了,大一拿到腾讯offer!

    今天给大家分享个,大一拿到腾讯实习的offer同学的心得分享。是的,你没听错,是大一!前言我来自国内某211学校软件工程专业,现在是大一暑假,前不久刚刚收到腾讯的后台开发实习offer,此时此刻我正在腾讯某部门实习。其实我也不是什么技术大佬,只不过自学的稍微早一些。我在猪猪学长校招群8群,可能8群有些同学已经认识我了233。今天很高兴应猪学长邀请,给其他同学分享一下我自己拿到腾讯后台开发实习offer的小经验以及在腾讯...

  • 2023-12-31收到RST,就一定会断开TCP连接吗?

    想必大家已经知道我的niao性,搞个标题,就是不喜欢立马回答。就是要搞一大堆原理性的东西,再回答标题的问题。说这个是因为我这次会把问题的答案就放到开头吗?不!我就不!但是大家可以直接根据目录看自己感兴趣的部分。之所以要先铺垫一些原理,还是希望大家能先看些基础的,再慢慢循序渐进,这样有利于建立知识体系。多一点上下文,少一点gap。好了,进入正题。下面是这篇文章的目录。收到RST就一定会断开连接吗什么是RST我们...

  • 2023-12-31我当面试官,面你 MySQL 基础

    许久不见的【面试官来袭】系列终于又和大家见面啦!很多人问我,面试到底考察什么?面试官究竟想听到怎样的回答?针对这类疑惑,我觉得最好的解答,无疑是带着大家,以面试官视角,去进行面试,知己知彼,百战不殆,这就是这个系列的初衷。针对MySQL,一般要考察的知识点都在下图,根据候选人的情况,会选择不同的知识点进行提问。通过上图,大家对MySQL面试问题也心里有数了吧?由于有小伙伴反应第一弹Redis系列内容过长,消化不...

  • 2023-12-31内部群炸锅了,同事又删库了!

    事件起因我们的系统中有数据导入的功能,可以把特定的格式的excel数据导入到系统中来由于客户电脑的文件比较多,很多文件的名字也比较相近,客户在导入excel时选错了文件这个错误的excel文件的格式恰好能被系统解析,客户也没及时发现导错了文件,所以就将6万多条没用的数据导入到了系统中这6万多条数据对系统来说就是无用的数据,不会影响系统的运行,最多也就是占用一点数据库空间而已客户只需要把正确的excel重新导入,就可以继...

  • 2023-12-31三位朋友的年薪

    最近几位朋友一起吃饭,聊到尽兴时,谈起了一个大家都非常感兴趣的话题,薪资,就简单写篇随笔记录一下。工作以来,我感觉自己变得有些佛系了,很少去打探同龄人的薪水状况。每年的秋招季,不少同事都会抑制不住心情的好奇心,在各类互联网社区去查看应届生的薪资情况,以推测自己的薪资所处的位置。要是薪资比应届生还低,一些觉得薪资没有达到预期的同学,可能就会动了好好学习,年后跳槽的心思,而且这部分比例还不会太小。因此...

  • 2023-12-31这一年半,过的不容易!

    大家好,我是小林。就在昨天国庆节的时候,小林到公众号终于破 10w 关注啦,是个里程碑,还是与国同庆,这个日子巧的可以!公众号也做了快 1 年半了,我每个星期都会输出 1-2 篇技术文,当然都是利用下班时间来写的,没想到这个习惯坚持了这么久,这也离不开读者们持续对我的关注和支持。我文章的定位是计算机基础系列,比如操作系统、计算机原理、计算机网络、数据库等等。刚好这些内容也是校招时很常考察的知识点,不少读者说我...

  • 2023-12-31程序员的天花板

    ‍‍我快被 "卷死" 了。跳槽到新公司,又赶上了一个超大的项目,精力几乎被榨干了,后台好几个读者在催更,实属抱歉!最近我也在调整状态和节奏,后续会多利用碎片化时间进行输出。这次回到大厂做技术管理,虽然才两个多月时间,但是输入的信息量极大,也让我对于技术管理和职场发展多了很多新的认识。今天,就借用知乎推送给我的话题:程序员如何突破职业天花板?谈一谈最近的思考,其实也代表着我个人职场观的进化过程。到底怎么...

  • 2023-12-31再谈 TCP 拥塞控制!

    大家好,我是小林。很早之前跟大家图解过 TCP 的拥塞控制:你还在为 TCP 重传、滑动窗口、流量控制、拥塞控制发愁吗?看完图解就不愁了但是没有提及到谷歌的 BBR 拥塞控制算法,我们之前讲的都是传统的拥塞控制算法,传统的拥塞控制是基于丢包反馈的方式来做控制的,而谷歌的 BBR 拥塞控制算法就比较牛逼,是基于时延检测的方式来做控制的,也就是当网络延迟到一定程度后,就会自动减少拥塞窗口,避免造成丢包,因为丢包后,就要...

  • 2023-12-30你管这破玩意叫 B+ 树?

    大家好,我是小林。之前分享过「索引为什么能提高查询性能」这篇文章,这次带大家从 0 到 1 来理解下索引的原理,相信大家看完不光对索引,还会对 MySQL 中 InnoDB 存储引擎的最小存储单位「页」会有更深刻的认识。6000+ 字的车,大家坐稳了!从实际需求出发假设有如下用户表:CREATE TABLE `user` (  `id` int(11) unsigned NOT NULL AUTO_INCREMENT,  `name` int(11) DEFAULT NULL COMMENT '姓名',  `age` ti...

  • 2023-12-30面试系列重启:JVM 篇

    今天跟大家聊聊 JVM 的面试。但是其实我不知道这种直接问题答案的形式大家喜欢点,还是喜欢我最开始俏皮的面试系列那种风格?6000+字,发车!什么是跨平台性,已经在Java中是如何实现的?平台可以指OS+硬件,所谓跨平台性,是指语言编写的程序,可以在多个系统平台上运行。字节码是通过Java虚拟机在系统平台上运行的,只要该系统可以安装相应的java虚拟机,该系统就可以运行java程序编译后的字节码文件了,即一次编译,到处运行。J...

  • 2023-12-30聊聊 MySQL 的优化思路

    大家好,我是小林。在群里看到有小伙伴面试时,被问到 MySQL 该怎么优化的问题,不知道该如何回答。我在网上搜到一篇很全面的 MySQL 优化原理,分享给大家。共 1.5W 字,发车!作者:LanceToBigData来源:cnblogs.com/zhangyinhua/p/7620964.html说起MySQL的查询优化,相信大家积累一堆技巧:不能使用SELECT *、不使用NULL字段、合理创建索引、为字段选择合适的数据类型….. 你是否真的理解这些优化技巧?是否理解其背后的工作原理...

  • 2023-12-30​我当面试官,面你 MySQL 原理

    言归正传,之前MySQL基础篇的知识点,小伙伴们有熟练掌握吗?没有的话赶紧来复习一下~????????我当面试官,面你 MySQL 基础觉得已经没有问题,我们就一起来进行第二部分的学习吧——MySQL原理篇。基础篇主要是侧重基础知识,原理篇是有一定基础后的递进,通过学习本篇,不仅可以进一步了解MySQL的各项特性,还能为接下来的容灾调优打下坚实的基础。现在,就让我们继续跟随阿柴进行这场沉浸式面试吧。ACID与隔离级别那你先来说说My...

  • 2023-12-30QUIC 协议在蚂蚁金服落地

    大家好,我是小林。我之前写过一篇介绍 HTTP3 的文章:看 B 站,可以更快!HTTP3协议最牛逼的地方在于,将传输层的 TCP 替换成 UDP,而且还在 UDP 之上实现了可靠传输的 QUIC 协议。大家面试时如果被问到 UDP 如何实现可靠传输,就可以把 QUIC 协议的实现说出来,妥妥稳的。这几天看到一篇蚂蚁集团实战 QUIC 的文章,我觉得很不错,特此分享给大家。作者:孔令涛自 2015 年以来,QUIC 协议开始在 IETF 进行标准化并被国内外各大厂...

  • 2023-12-30协程,被我玩会了!

    前言大家好,我的朋友们!干了这么年后端,写过C/C++、Python、Go,每次说到协程的时候,脑海里就只能浮现一些关键字yeild、async、go等等。但是对于协程这个知识点,我理解的一直比较模糊,于是决定搞清楚。全文阅读预计耗时10分钟,少刷几个小视频的时间,多学点知识,想想就很划算噻!协程概念的诞生先抛一个粗浅的结论:协程从广义来说是一种设计理念,我们常说的只是具体的实现。理解好思想,技术点就很简单了,关于协程道与...

  • 2023-12-30代码写错,差点亏了几万!

    大家好,我是小林。这一周都在带大家免费领取一年阿里云服务器的活动,现在已经超 1000+ 人购买了,昨晚我就开始在部分群陆陆续续返现,几万块,刷一秒就没了,场面很壮观。还没返现的群,稍等一下,这周都会一起搞完的。这次阿里云服务器,我和小北组队了,因为我们之前 6 月份搞过一次阿里云白领活动,所以担心一个人搞的话,带不到大家白piao,因为当拉新用户到一定数量,阿里云才会给我们奖金,比如 1500 人的奖金是9W,这样我...

  • 2023-12-30深入理解 Linux I/O 系统

    大家好,我是小林。我在之前的图解系统写过 Linux I/O 的文章,但是没有集中在一起讲。今天就跟大家分享一篇, Linux I/O 系统。目录传统的 System Call I/O  读操作  写操作  网络 I/O  磁盘 I/O高性能优化的 I/O存储设备的 I/O 栈I/O Buffering                                       传统的 System Call I/O在 Linux 系统中,传统的访问方式是通过 write() 和 read() 两个系统调用实现的,通过 re...

  • 2023-12-30女票问我:双十一的秒杀系统是怎么做的?

    双十一又要到了,我有点慌,以前一个人的时候,一分钱都不花,现在有了女票,不仅得剁手,还得帮忙抢各种秒杀商品。今年,我真的不想再去抢秒杀了,为什么呢?太难了,成千上万的人就盯着秒杀放出来的那点商品。我凭着单身十几年的手速也抢不过啊。我苦思妙想,终于想出一条完(zuo)美(si)妙计:给女朋友讲讲程序员是如何做一个秒杀系统的。对头,就是要用知识的海洋淹没她。如果她不愿意听,或者听不懂,那么今年就不参加双十...

  • 2023-12-30这个数据库,强得离谱!

    大家好,我是小林。互联网公司最开始也是从单体应用架构起步的,因为当时的用户量少、并发量低、数据量小,一般情况下只需要单个服务器就可以满足需求。此时的后端开发团队就比较简单,一个团队就能完成设计、开发、部署、运维工作。但即使是这样一个简单后端团队,也是需要好几个人。开发一个应用,开发人员越多,公司的人力成本自然就越多。而且,当数据量随着业务发展持续增长时,就会给数据库带来巨大的存储压力,这时候企业就...

  • 2023-12-30绩效被打 C 了!

    在脉脉看到一个帖子,一位美团员工绩效被打 C ,现在心态很差。今天好好聊聊大厂打工人最最关心的「绩效考核」。谈谈它背后的逻辑以及潜规则,摸清楚了它,你在大厂这片丛林里才能更好的生存下去。— 1 —大厂的绩效到底有多重要?先从公司角度,谈谈为什么需要绩效考核?有一个著名的管理者言论,即:企业战略的上三路和下三路。上三路是使命、愿景、价值观,下三路是组织、人才、KPI。下三路需要确保上三路能执行下去,否则便...

  • 2023-12-30重放攻击,好生猛的家伙!

  • 2023-12-30为什么计算机科班也需要自学?

    大家好,我是小林。之前有很多读者问我,说他是计算机科班,也是需要自学 CS 课程吗?我的答案是肯定的,即时你在计算机科班,也是需要通过自学 CS 才有可能在校招中拿到一个好的 offer。为什么这么说呢?主要还是因为大学里的计算机教的并不是面向找工作的,与企业所需要的人才有一点出入,但是并不是说学校里教的东西完全没用,只是教的比较浅,而校招面试时往往都问的很深入。举个例子:比如学校的计算机网络,并没有教你「HTTP...

  • 2023-12-30自制一块 CPU Cache!

    象山公园  理想情况下,我们希望拥有无限大的内存容量,这样就可以立刻访问任何一个特定的机器字,但我们不得不认识到有可能需要构建分层结构的存储器,每一层次容量都要大于前一层次,但其访问速度也要更慢一些。早在计算机刚被发明出来的时候,那些计算科学界的先驱们就已经预测到之后的计算机结构。他们觉得以后的程序员们肯定都会幻想着拥有无限容量甚至是无限数量的快速存储器。但是理想总是很丰满,现实很骨感。在实际的计...

  • 2023-12-30图解 MySQL 面试题 —— 容灾篇

    不多说,直接发车!今天我们要讲的就是MySQL的容灾。容灾一直是后台开发中的重点,如果是线上服务出了问题,没有合适的容灾机制,那么对业务来说一定会是个沉重的打击,但是容灾同时也是拉开能力差距的难点,需要有强劲的实力才能把握住。不知道阿柴能不能经受住这样的考验。现在,就让我们继续开启这场沉浸式面试吧。容灾热身容灾有几种方式?从冷热来说,分为冷备和热备。从距离来说,分为同城和异地。一般而言,大的维度划分就...