自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(96)
  • 收藏
  • 关注

原创 Go最新背事故?分享 6 种常见的 Go 致命错误场景,2024Golang常见面试题分享

今天就由煎鱼给大家分享一下错误类型有哪几种,又在什么场景下会触发。错误类型。

2024-05-17 06:54:25 564

原创 Go最新聊聊RPC之Register_rpc,重磅

注册中心的客户端,在提供者端,负责将提供者的服务地址主动的通知给服务端,并且在服务发生了变更时及时的更新服务端的信息。做到优雅的发布,我们可以先把将要停止服务的地址,先主动从注册中心移除,等待正在处理的任务结束后,再进行停止服务。针对以上的解决办法,可以通过在服务调用者判定服务下线之前,自己做一次检查。注册中心感知服务上线,在服务提供者时,会主动的通知给注册中心。那么对于服务的下线如何感知呢?从以上可以看出,对于注册中心来说,需要有服务提供者的地址、服务消费者的地址,以及服务消费者和服务的订阅关系。

2024-05-17 06:53:51 553

原创 Go最新聊聊RPC之Register_rpc(2),2024年最新开发这么久这些问题都不会

比如在我们做应用的发布时,我们通常使用分批发布应用,如果我们直接把服务停掉做发布。做到优雅的发布,我们可以先把将要停止服务的地址,先主动从注册中心移除,等待正在处理的任务结束后,再进行停止服务。这时对于服务做专门的分组,交易链路调用专用的分组。针对以上的解决办法,可以通过在服务调用者判定服务下线之前,自己做一次检查。注册中心感知服务上线,在服务提供者时,会主动的通知给注册中心。环境的区分,就是通过在设计注册中心时,引入分组的方式完成。实现优雅的上下线之前,我们先解决者怎么感知服务的上线和下线的问题。

2024-05-17 06:53:16 237

原创 Go最新聊一聊我做过的副业(3),2024年最新社招面试心得

有不少阅读过我文章的伙伴都知道,笔者本人17年就读于一所普通的本科学校,20年6月在三年经验的时候顺利通过校招实习面试进入大厂,现就职于某大厂安全联合实验室。我从事网络安全行业已经好几年,积累了丰富的技能和渗透经验。在这段时间里,我参与了多个实际项目的规划和实施,成功防范了各种网络攻击和漏洞利用,提高了互联网安全防护水平。也有很多小伙伴给我留言问我怎么学?怎么渗透?怎么挖漏洞?

2024-05-17 06:52:41 938

原创 Go最新Redis事件驱动框架(2),2024年最新网易的朋友给我这份339页的Golang面经

/ long int类型的数组,数组一共32个元素(1024/32=32),每个元素是32位(long int类型的大小),每一位可以用来表示一个文件描述符的状态。// 调用poll函数,检测client数组里的文件描述符是否有就绪的,返回就绪的文件描述符个数。// 将创建的监听套接字加入pollfd数组,并监听其可读事件。// 如果监听套接字的文件描述符有可读事件,则进行处理。// 添加对新创建的已连接套接字描述符的监听。// 监听的文件描述符是刚创建的监听套接字。// 将监听套接字加入到监听列表中。

2024-05-17 03:07:24 729

原创 Go最新Redis中BigKey的分析与优化_redis大key优化(1),为什么Golang要采用Binder作为IPC机制

BigKey问题在Redis的使用中是一个不能忽视的问题。通过合理的数据模型设计,强化监控预警机制,以及定期的性能评估,可以有效地避免BigKey的产生,保持Redis的高性能。我们需要不断地学习和应对新的技术挑战,提升系统的稳定性和可用性。推荐几个学习 Redis 教程文章01、Redis 基础教程02、Redis6.0 系列教程03、Redis 实战教程在线求赞,加个关注我会非常感激!@小郑说编程。

2024-05-17 03:06:49 819

原创 Go最新Redis—缓存(1),大厂Offer拿到手软啊

时,如果此时有大量的用户请求,都无法在 Redis 中处理,于是全部请求都直接访问数据库,从而导致数据库的压力骤增,严重的会造成数据库宕机,从而形成一系列连锁反应,造成整个系统崩溃,这就是。,导致请求在访问缓存时,发现缓存缺失,再去访问数据库时,发现数据库中也没有要访问的数据,没办法构建缓存数据,来服务后续的请求。,不用再继续访问数据库,从而降低对数据库的访问压力,保证数据库系统的正常运行,然后等到 Redis 恢复正常后,再允许业务应用访问缓存服务。业务线程不再负责更新缓存,缓存也不设置有效期,而是。

2024-05-17 03:06:14 815

原创 Go最新Redis—数据结构(2),2024年最新Golang面试题库

总之,Redis 的 Quicklist 是一种高效的列表实现,它综合了压缩列表和双向链表的优点,通过多个压缩列表节点和双向链表结构实现了内存紧凑且访问高效的列表操作。在处理各种规模的列表数据时,Quicklist 都能提供较好的性能和可扩展性。

2024-05-17 03:05:40 719

原创 Go最新Redis—持久化(2),2024年最新35岁技术人如何转型做管理

这意味着,在执行 RDB 持久化期间,Redis 可能会接收到新的写操作,并且这些写操作会修改内存中的数据。为了避免AOF文件越写越大,提供了AOF重写机制,当文件超过阀值就会启动AOF重写机制,来压缩文件,重写机制的妙处在于,尽管某个键值对被多条写命令反复修改,AOF(Append-Only File)持久化是 Redis 的一种持久化机制,它将所有的写操作追加到一个文件中,通过重新执行这些写操作来恢复数据。的,也就是数据是能被修改的,关键的技术就在于。AOF重写很耗时,所以,Redis 的。

2024-05-17 03:05:01 897

原创 Go最全认识Metasploit框架(2),2024年最新聪明人已经收藏了

MSF攻击载荷生成器的shellcode完全是可以独立运行的,但是包含了一些NULL空字符,在进行解析的时候会出现一些小问题,空字符会认为是字符串的结束标志,从而使代码在完整的运行之前被截断而终止运行。技术文档也是我自己整理的,包括我参加大型网安行动、CTF和挖SRC漏洞的经验和技术要点,电子书也有200多本,由于内容的敏感性,我就不一一展示了。网上虽然也有很多的学习资源,但基本上都残缺不全的,这是我自己录的网安视频教程,上面路线图的每一个知识点,我都有配套的视频讲解。

2024-05-16 11:40:44 337

原创 Go最全认证流程源码级详解(4-6节内容)_this(2),腾讯字节等大厂面试真题汇总

(3)UsernamePasswordAuthenticationToken的构造方法,this.setAuthenticated(false);** 即没有通过身份认证。是权限的集合,由于调用的时候不知道权限信息,所以传入的。传到父类的权限集合是null**,是 封装了登录时的认证信息。(1)Ctrl加鼠标左键点。

2024-05-16 11:40:11 281

原创 Go最全认真分析mmap:是什么 为什么 怎么用(2),最新整理

由上文讨论可知,mmap优点共有一下几点:1、对文件的读取操作跨过了页缓存,减少了数据的拷贝次数,用内存读写取代I/O读写,提高了文件读取效率。2、实现了用户空间和内核空间的高效交互方式。两空间的各自修改操作可以直接反映在映射的区域内,从而被对方空间及时捕捉。3、提供进程间共享内存及相互通信的方式。不管是父子进程还是无亲缘关系的进程,都可以将自身用户空间映射到同一个文件或匿名映射到同一片区域。从而通过各自对映射区域的改动,达到进程间通信和进程间共享的目的。

2024-05-16 11:39:38 371

原创 Go最全QT使用QAxObject读取Excel教程-全网最全_qt读取excel(4),2024年最新Github标星5.3K

/ 参考内容: https://blog.csdn.net/qq319923400/article/details/80149367。//打开刚才选定的excel。//获取工作簿(excel文件)集合。

2024-05-16 08:08:59 531

原创 Go最全QT使用QAxObject读取Excel教程-全网最全_qt读取excel(2),妈妈再也不用担心我找工作了

就是打开一个Excel文件,序号顺序就是excel 打开后下方的排序读取所有单元格内容-数据量大,只需要进行一次操作即可读取所有内容,避免重复对每个单元格进行QAxObect操作此时结果以QVariant保存,需要自行转化为QList以QList存储,需要限定范围写入数据。

2024-05-16 08:08:26 625

原创 Go最全QT-GUI应用程序设计基础_qtuigg(4),极其重要

刚开始接触QT编程的时候,发现可以使用ui组件界面来编程,看一些教程又没有使用ui组件界面,当时是挺疑惑的。这些资料,可以戳这里获取](https://bbs.csdn.net/topics/618658159)**现在知道了QT编程可以使用ui组件界面,也可以使用纯代码来生成这些组件。这里又是一个容易混淆的点。注意其实是可以混合编程的。

2024-05-16 08:07:52 142

原创 Go最全QT-GUI应用程序设计基础_qtuigg(2),2024年最新细节爆炸

刚开始接触QT编程的时候,发现可以使用ui组件界面来编程,看一些教程又没有使用ui组件界面,当时是挺疑惑的。这些资料,可以戳这里获取](https://bbs.csdn.net/topics/618658159)**现在知道了QT编程可以使用ui组件界面,也可以使用纯代码来生成这些组件。这里又是一个容易混淆的点。注意其实是可以混合编程的。

2024-05-16 08:07:19 202

原创 go-micro系列(番外一)docker封装自己的micro工具_dockerfile构建go-micro(1)

【代码】go-micro系列(番外一)docker封装自己的micro工具_dockerfile构建go-micro(1)

2024-05-16 04:33:30 218

原创 go-mciro系列(二) 手写第一个微服务_go-micro 4 proto3 怎么写(3)

proto3基础语法不做单独介绍,不清楚的话自己行百度一下。下面以一个简单user服务提供一个注册方法为例。这里没有配置注册中心,因此使用的是micro默认的mdns作为注册中心,后面会讲使用其他注册中心。注意以下命令是在项目的根目录执行的,如果你在其它目录记得修改。的目录都是相对于执行命令所在的目录的。

2024-05-16 04:32:57 303

原创 go-mciro系列(二) 手写第一个微服务_go-micro 4 proto3 怎么写(2)

log.Fatalln(“注册服务失败”, err)log.Fatalln(“启动服务失败”, err)log.Fatalln(“调用服务出错”, err)Nickname: “王小明”,

2024-05-16 04:32:24 658

原创 go-mciro系列(二) 手写第一个微服务_go-micro 4 proto3 怎么写(1)

本文先手写一个proto文件,初步感受一下micro微服务。

2024-05-16 04:31:51 381

原创 2024年最新软件开发总结_自适应软件开发(1),2024年最新Golang开发技巧

设计原则一句话归纳目的开闭原则对扩展开放,对修改关闭降低维护带来的新风险依赖倒置原则高层不应该依赖低层,要面向接口编程更利于代码结构的升级扩展单一职责原则一个类只干一件事,实现类要单一便于理解,提高代码的可读性接口隔离原则一个接口只干一件事,接口要精简单一功能解耦,高聚合、低耦合迪米特法则不该知道的不要知道,一个类应该保持对其它对象最少的了解,降低耦合度只和朋友交流,不和陌生人说话,减少代码臃肿里氏替换原则不要破坏继承体系,子类重写方法功能发生改变,不应该影响父类方法的含义。

2024-05-16 00:58:31 910

原创 2024年最新软件定义一切?,Golang开发面试准备

知乎周朔鹏在新时达做机器人公司副总经理的时候,我曾经对我们的硬件团队讲:“在工业领域,硬件通用化是大趋势。当年,我们见到的三菱、西门子、施耐德等等工业巨头,不管是做控制器还是驱动器,他们所使用的控制硬件都是定制开发的,他们为了搭建自己的系统,还耗费巨大精力开发了自己的OS。但是,当PC base成为一种流行的开发模式之后,我们见到的绝大多数国产的工业控制产品,包括机器人都是基于PC base的。当CPU等芯片的运算速度已经不是瓶颈,工业领域、民用领域,必然出现软件定义一切的局面。

2024-05-16 00:57:58 850

原创 2024年最新软件定义一切?(2),2024年最新Golang开发的基础知识

知乎周朔鹏在新时达做机器人公司副总经理的时候,我曾经对我们的硬件团队讲:“在工业领域,硬件通用化是大趋势。当年,我们见到的三菱、西门子、施耐德等等工业巨头,不管是做控制器还是驱动器,他们所使用的控制硬件都是定制开发的,他们为了搭建自己的系统,还耗费巨大精力开发了自己的OS。但是,当PC base成为一种流行的开发模式之后,我们见到的绝大多数国产的工业控制产品,包括机器人都是基于PC base的。当CPU等芯片的运算速度已经不是瓶颈,工业领域、民用领域,必然出现软件定义一切的局面。

2024-05-16 00:57:25 598

原创 2024年最新软件定义一切?(1),Golang学习教程

知乎周朔鹏在新时达做机器人公司副总经理的时候,我曾经对我们的硬件团队讲:“在工业领域,硬件通用化是大趋势。当年,我们见到的三菱、西门子、施耐德等等工业巨头,不管是做控制器还是驱动器,他们所使用的控制硬件都是定制开发的,他们为了搭建自己的系统,还耗费巨大精力开发了自己的OS。但是,当PC base成为一种流行的开发模式之后,我们见到的绝大多数国产的工业控制产品,包括机器人都是基于PC base的。当CPU等芯片的运算速度已经不是瓶颈,工业领域、民用领域,必然出现软件定义一切的局面。

2024-05-16 00:56:51 811

原创 2024年最新「渗透技巧」添加 administrator 影子用户_影子用户怎么用(2),2024年最新面试加分项

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上Go语言开发知识点,真正体系化!由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新如果你需要这些资料,可以戳这里获取以上Go语言开发知识点,真正体系化!**由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新如果你需要这些资料,可以戳这里获取。

2024-05-15 12:01:40 328

原创 2024年最新「刷起来」Go必看的进阶面试题详解_golang 进阶面试题(4),2024年最新字节跳动内部学习资料泄露

这两个defer语句的执行顺序是先进后出的,也就是说后定义的defer语句先执行,先定义的defer语句后执行。在实际的程序中,大量的逃逸会导致内存分配和垃圾回收的开销增加,从而影响程序的性能。逃逸分析是Go语言的一项优化技术,可以在编译期间分析代码,确定变量的生命周期和分配位置,从而避免不必要的内存分配和垃圾回收。逃逸分析是Go语言中的一项重要优化技术,可以帮助程序减少内存分配和垃圾回收的开销,从而提高程序的性能。需要提醒的是,**map是一种引用类型的数据结构,它的底层实现是一个哈希表。

2024-05-15 12:01:07 238

原创 2024年最新《软件工程导论》之详细设计_软件工程导论模块详细设计,2024Golang岗面试题知识点小结

业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

2024-05-15 12:00:34 233

原创 2024年最全软件项目常见失败原因_软件开发失败案例及原因(3),怎么入门Golang

目前,国内的软件开发企业的项目经理一般都是一名,而且是技术出身的占绝对多数,他们主要擅长的是技术研发,在管理方面先天不足,这不利于项目风险管理和控制。这样做的目的有三个好处,一是客户很直观的看到他们的系统是什么样子的以及怎么操作,二是这些开发的成果是可以二次利用的,三是可以更好的激发客户的需求。根据企业不同的发展阶段,按照规划逐步深入,这样一方面可以避免投资的盲目性,另外一方面在前期的投入收到效果后,再进行下一阶段投入的同时,员工和企业领导也容易接受,软件人员的压力也会相对减少。

2024-05-15 08:31:08 206

原创 2024年最全软件需求最佳实践笔记(三)_需求文档 最佳实践,2024年最新Golang面试题汇总

一、SERU过程框架的理论基础Subject Area可以理解为子系统,更强调业务分析,非功能分解;Use Case可以理解为功能模块,只不过它更强调用户视角,而非功能分解。但这两者之间是存在鸿沟的,很难有效地将子系统分解成具体场景级的功能模块。二、SERU过程框架全景图用虚线将3个主要的阶段划分开,从左边开始数的第一部分是“需求定义”阶段,第二部分是“理清需求框架和脉络”阶段,第三部分是“填充需求细节”阶段。

2024-05-15 08:30:35 263

原创 2024年最全软件配置项_软件配置项的概念(2),35岁以后的Golang程序员出路在哪里

软件生存周期各个阶段活动的产物经审批后即可称之为软件配置项。软件配置项包括:①与合同、过程、计划和产品有关的文档和资料;②源代码、目标代码和可执行代码;③相关产品,包括软件工具、库内的可重用软件、外购软件及顾客提供的软件等。

2024-05-15 08:30:02 534

原创 2024年最全软件设计模式:MapReduce模式详解与Go实现,2024年最新字节跳动Golang金三银四解析

/ Reduce函数。

2024-05-15 08:29:29 257

原创 2024年最全RS232电平 RS485电平 RS422电平 TTL电平,2024年最新高级Golang工程师面试题

现在常用的电平标准有TTL、CMOS、LVTTL、LVCMOS、ECL、PECL、LVPECL、RS232、RS485等,还有一些速度比较高的 LVDS、GTL、PGTL、CML、HSTL、SSTL等。和上面的GTL相似,输入为输入为比较器结构,比较器一端接参考电平(VCCIO/2),另一端接输入信号。和HSTL基本相同。V¬¬CCIO=2.5V,输入为输入为比较器结构,比较器一端接参考电平1.25V,另一端接输入信号。:类似CMOS的一种结构,输入为比较器结构,比较器一端接参考电平,另一端接输入信号。

2024-05-15 04:53:50 674

原创 2024年最全Round-Robin负载均衡算法及其实现原理_madt core round robin(1),2024年最新一举拿下腾讯美团滴滴offer

毫无疑问,随着互联网、移动网络接入成本的降低,互联网正在日益深入地走入我们的生活,越来越成为人们获取信息的高效平台,ICP行业也顺势呈现出强劲的成长趋势,成为互联网迅猛发展形势下最大的受益者,也直接促成了从web1.0到web2.0以及社区、博客、视频等一系列互联网时代的更迭和运营模式的变动。但是随着各站点访问量和信息交流量的迅猛增长,如何使用最小的资源成本,提高网络的效率,最优化用户体验,已经成为网络管理人员不得不面对的挑战。

2024-05-15 04:53:17 661

原创 2024年最全RocketMQ消息丢失场景及解决办法_rocketmq如何处理消息丢失(1),Jetpack-MVVM-高频提问和解答

如果消费者还没有返回CONSUME_SUCCESS时就宕机了,那么RocketMQ就会认为你这个消费者节点挂掉了,会自动故障转移,将消息交给消费者组的其他消费者去消费这个消息,保证消息不会丢失。只有返回了CONSUME_SUCCESS,消费者才会告诉RocketMQ我已经消费完了,此时如果消费者宕机,消息已经处理完了,也就不会丢失消息了。上面这段代码中,RocketMQ在消费者中注册了一个监听器,当消费者获取到了消息,就会去回调这个监听器函数,去处理里面的消息。那么如何保证消息的零丢失呢?

2024-05-15 04:52:44 625

原创 2024年最全Redis配置项汇总(超级详细)_配置库及配置项列表示例,2024年抓住金三银四涨薪好时机

通过使用如图所示:图1:Redis配置项注意:由于版本和操作系统的不同,配置项的数量会存在差异。

2024-05-15 04:52:11 752

原创 2024年Go最全redis源码阅读—dict(字典结构)_字典规则源(7),2024年最新Golang技术图谱

其中哈希表的负载因子可以通过公式:负载因子 = 哈希表已保存节点数量 / 哈希表大小。

2024-05-15 01:15:48 256

原创 2024年Go最全redis源码阅读—dict(字典结构)_字典规则源(2),字节Golang高级岗

这其实和Java的HashMap相似,都是数据加链表的结构,随着数据量的增加,hash碰撞发生的就越频繁,每个数组后面的链表就越长,整个链表显得非常累赘。如果业务需要大量查询操作,因为是链表,只能从头部开始查询,等一个数组的链表全部查询完才能开始下一个数组,这样查询时间将无线拉长。这无疑是要进行扩容,所以第一个数组存放真正的数据,第二个数组用于扩容用。第一个数组中的节点经过hash运算映射到第二个数组上,然后依次进行。那么过程中还能对外提供服务吗?

2024-05-15 01:15:15 268

原创 2024年Go最全redis源码阅读—adlist_redis的adlist改成循环(1),2024年最新看完直接跪服

/创建一个表头,返回值是链表结构的指针。// 链表所包含的节点数量。//为新节点node赋值。//添加一个元素到表头。// 节点值复制函数。// 节点值释放函数。// 节点值对比函数。//定义两个节点指针。//新建节点node。

2024-05-15 01:14:42 250

原创 2024年Go最全Redis原理详解(5),2024年最新2024字节跳动春招技术面试题

为什么呢?因为多线程的本质就是 CPU 模拟出来多个线程的情况,这种模拟出来的情况就有一个代价,就是上下文的切换,对于一个内存的系统来说,它没有上下文的切换就是效率最高的。因为上下文切换所花费的时间远大于直接从内存中读取数据所花费的时间。Redis 用单个 CPU 绑定一块内存的数据,然后针对这块内存的数据进行多次读写的时候,都是在一个CPU上完成的,所以它是单线程处理这个事。在内存的情况下,这个方案就是最佳方案。

2024-05-15 01:14:09 317

原创 2024年Yolov5安装及简单使用_yolov5安装步骤,写给1-3年Golang程序员的几点建议

但是如果在一些需要对项目、文件打包的时候,如果直接打包base环境,就会导致混入很多本身项目不需要的包,造成依赖包冗余的状态,而通过Anaconda则可以通过创造新的虚拟环境解决此问题。比如需要完成一个目标检测的任务,就需要导入一些包,比如说numpy、pytorch等等,那么只需要在Anaconda中创建一个虚拟环境,然后在此环境中安装相关包即可。此处选择Windows版本,Conda安装方式,Cuda选择11.3(如果没有独立显卡,则选择CPU版本)选择64bit版本即可。如下图所示,选择Add。

2024-05-14 12:08:34 600

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除