俗话说的好,代码写的少,离职少不了。最近畅游互联网,发现一些离职小技巧,读后,内心被深深的打动了但是细细的品过之后,发现对我们程序员不太适用。例如:领导夹菜你转桌,我们程序员一般不和领导在一桌;领导开门你上车,咱程序员都是坐班,一般不出差,出差一般也领导开车;领导K歌你切歌,哦~...
前言大家好,日志是快速定位问题的好帮手,是撕逼和甩锅的利器!打印好日志非常重要。今天我们来聊聊日志打印的15个好建议~1.选择恰当的日志级别常见的日志级别有5种,分别是error、warn、info、debug、trace。日常开发中,我们需要选择恰当的日志级别,不要反手就是打印...
这两个函数是字符设备初始化相关的内核函数。一、字符设备架构下面我们以两个设备:LED、MPU6050为例来讲解字符设备的架构由上图所示:1、硬件外设有MPU6050、LED两个设备,他们通过外设电路连接到SOC的对应的引脚上。程序要操作外设,就要通过设置soc中对应的SFR来与外...
“操作系统”作为所有软件的基础,是计算机王国的掌舵者。我们常用“灵魂、大脑、内核、基石”等词来形容它,足以见得它对计算机而言有多么重要。 事实也确实如此,作为每个程序员必须好好修炼的“基本功”,它能直接解决我们在工作中的很多疑难杂症,比如做高性能服务端编程时,经常会用到内存、进程...
▼点击下方名片,关注公众号▼RS(辐射抗扰度测试),又称辐射敏感度测试,是EMC测试中最基本测试项目之一,主要验证各种装置、设备、系统在存在一定外界辐射干扰的情况下抵抗辐射的一种能力。然而在实际测试中,经常由于这样或那样的因素,导致辐射抗扰度不过,这时该如何处理呢?下面就由本人根据亲身经历给大家分享几点经验:首先可通过如下文章简单再了解下RS测试:简单了解下(RS)射频辐射电磁场抗扰度测试遇到的问题:公司开发了一款功能转接板,该功能转接板在正常运行过程中,转接板接收到控制系统的发出的指令后,会有扬声器发声。其功能框图如下图所示: 功能测试框图功能介绍:该系统分为两部分,第一部分是最右侧的信号控...
点击上方蓝字关注我个人认为公众号平台有个小瑕疵:不能设置个人主页,不能把自己写过的原创文章以目录的形式展示!新关注的读者基本看不到公众号以前发布的文章!为了方便大家阅读以前的文章,尤其是一些新来的读者,贴心如我,特意整理了一个目录。干货开始入门必备基础入门可以首先看清华郑莉老师视频(不能插外链,点击阅读原文)C学习路线C服务端学习路线如何入门CC基础知识汇总C面试宝典数组长度可以为变量吗?是否应该使用异常处理new/delete、new[]/delete[]为什么需要配对使用指针和引用的区别以及使用场景C对象布局分析C为什么要入这4种类型转换?为什么会出现nullptr?非常全面的时间相关所有...
内存是计算机中必不可少的资源,因为CPU只能直接读取内存中的数据,所以当CPU需要读取外部设备(如硬盘)的数据时,必须先把数据加载到内存中。我们来看看可爱的内存长什么样子的吧,如图1所示:一、内存申请通常使用高级语言(如Go、Java或Python等)都不需要自己管理内存(因为有垃圾回收机制),但C/C程序员就经常要与内存打交道。当我们使用C/C编写程序时,如果需要使用内存,就必须先调用malloc函数来申请一块内存。但是,malloc真的是申请了内存吗?我们通过下面例子来观察malloc到底是不是真的申请了内存:1#include 23int main(int argc, char cons...
电波暗室,用于模拟开阔场,同时用于辐射无线电骚扰(EMI)和辐射敏感度(EMS)测量的密闭屏蔽室。来源:http://gememc.com/upload/201712/20171201093022763.jpg0.前言最近公司的几块板子要做认证,EMC测试自然是少不了,既然要做试验,就要有一个标准,是消费电子、工业控制,还是汽车电子、军工电子,这些工作环境所要求的EMC测试标准是不同的,每个试验又分为了很多的等级。接触静电是要做到6kV还是8kV,空气放电是要做到8kV还是15kV?我的产品要做哪些EMC试验?要做到什么等级?一起来了解一下关于EMC测试的国家标准吧!上一篇文章介绍了《详解电子...
点击上方“小麦大叔”,选择“置顶/星标公众号”福利干货,第一时间送达工程软件和在线资源往往比较昂贵,但是对于专业人员、学生和爱好者来说非常有益。用户开展项目或者仅进行工程验证时,这些资源往往是必要的,但是相关成本却令许多人望而却步。本文为工程师和工程研究爱好者们寻找了几款高质量的免费资源,现在将其概述如下。PART1.电路仿真01PartSim网址:www.partsim.comPartSim是一款基于浏览器的电路仿真器,用户可以通过该软件进行电路实验。该仿真器布局简单,从而确保易用性,同时提供完整的SPICE仿真引擎、基于Web的原理图捕获工具和图形示波器,可以监视电路的模拟/数字信号电平。...
大家好,我是小林。不知道大家当初是怎么学网络编程的?我来说说我踩过的坑。我当初在学网络编程的时候,看见网上的人都说《Unix网络编程》是网络编程圣经,豆瓣评分也很高,那么好学的小林,那肯定毫无犹豫买了。书到货后,我瞬间就懵逼了,这本书的厚度堪比新华字典,这尼玛怎么学?跟着书本的节奏,学了一段的时间,是懂了些LinuxsocketAPI的用法,摸索来摸索去都是各个API的细节,始终不知道高并发网络框架是如何实现的。后面我又重新找了一波关于网络编程的书,找到了这两本:《TCP/IP网络编程》和《Linux高性能服务器编程》。《TCP/IP网络编程》这个是网络编程入门绝佳书,书里的内容不会有过多的术...
前言我们日常做分页需求时,一般会用limit实现,但是当偏移量特别大的时候,查询效率就变得低下。本文将分四个方案,讨论如何优化MySQL百万数据的深分页问题,并附上最近优化生产慢SQL的实战案例。limit深分页为什么会变慢?先看下表结构哈:CREATE TABLE account ( id int(11) NOT NULL AUTO_INCREMENT COMMENT '主键Id', name varchar(255) DEFAULT NULL COMMENT '账户名', balance int(11) DEFAULT NULL COMMENT '余额', create_time ...
❝这可能是最中肯的Redis使用规范了码哥,昨天我被公司Leader批评了。我在单身红娘婚恋类型互联网公司工作,在双十一推出下单就送女朋友的活动。谁曾想,凌晨12点之后,用户量暴增,出现了一个技术故障,用户无法下单,当时老大火冒三丈!经过查找发现Redis报Couldnotgetaresourcefromthepool。获取不到连接资源,并且集群中的单台Redis连接量很高。于是各种更改最大连接数、连接等待数,虽然报错信息频率有所缓解,但还是持续报错。后来经过线下测试,发现存放Redis中的字符数据很大,平均1s返回数据。❝码哥,可以分享下使用Redis的规范么?我想做一个唯快不破的真男人!R...
作者:vivo互联网服务器团队-ZhangLin一、业务背景目前移动端的使用场景中会用到大量的消息推送,push消息可以帮助运营人员更高效地实现运营目标(比如给用户推送营销活动或者提醒APP新功能)。对于推送系统来说需要具备以下两个特性:消息秒级送到用户,无延时,支持每秒百万推送,单机百万长连接。支持通知、文本、自定义消息透传等展现形式。正是由于以上原因,对于系统的开发和维护带来了挑战。下图是推送系统的简单描述(API->推送模块->手机)。二、问题背景推送系统中长连接集群在稳定性测试、压力测试阶运行一段时间后随机会出现一个进程挂掉的情况,概率较小(频率为一个月左右发生一次),这会影响部分客户...
1、前言微服务的注册中心目前主流的有以下五种:ZookeeperEurekaConsulNacosKubernetes那么实际开发中到底如何选择呢?这是一个值得深入研究的事情,别着急,今天陈某就带大家深入了解一下这五种注册中心以及如何选型的问题。2、为什么需要注册中心?随着单体应用拆分,首当面临的第一份挑战就是服务实例的数量较多,并且服务自身对外暴露的访问地址也具有动态性。可能因为服务扩容、服务的失败和更新等因素,导致服务实例的运行时状态经常变化,如下图:商品详情需要调用营销、订单、库存三个服务,存在问题有:营销、订单、库存这三个服务的地址都可能动态的发生改变,单存只使用配置的形式需要频繁的变...