- 博客(23)
- 收藏
- 关注
原创 【进大厂必看面试题】错误和异常、CGO、fallthrough_cgo相关的面试问题
当程序运行时,如果遇到引用空指针、下标越界或显式调用panic函数等情况,则先触发panic函数的执行,然后调用延迟函数。调用者继续传递panic,因此该过程一直在调用栈中重复发生:函数停止执行,调用延迟执行函数等。如果一路在延迟函数中没有recover函数的调用,则会到达该协程的起点,该协程结束,然后终止其他所有协程,包括主协程(类似于C语言中的主线程,该协程ID为1)。
2024-09-12 17:45:23
428
1
原创 【计算机网络】HTTP和HTTPS区别(1)
公钥有可能才分发的过程中被篡改。HTTP协议传输的数据都是未加密的,也就是明文的,因此使用HTTP协议传输隐私信息非常不安全,为了保证这些隐私数据能加密传输,于是网景公司设计了SSL(Secure Sockets Layer)协议用于对HTTP协议传输的数据进行加密,从而诞生了HTTPS。我们再模拟一下长连接的情况:client向server发起连接,server接受client连接,双方建立连接,client与server完成一次请求后,它们之间的连接并不会主动关闭,后续的读写操作会继续使用这个连接。
2024-09-12 17:21:25
2376
原创 【游戏开发小技】Unity中实现Dota里的角色技能地面贴花效果(URP ShaderGraph Decal)
嗨,大家好,我是新发。我平时偶尔会打打Dota2,在Dota里面,技能释放前会有一个地面贴花效果来作为范围的显示,比如深渊领主的这个技能,如下我们可以看到技能范围特效是可以投射到场景地面和物体上(比如树木),这个在Unity中如何去实现呢?本文我以URP渲染管线为例,讲一下这个技能地面贴花效果的制作过程吧~注:本文我使用的Unity版本为版本为12.1.6。
2024-09-12 16:42:24
598
原创 【LeetCode刷题日记】堆类题目常见题型_堆的常见题型
/ [left, i-1] 都小于等于 pivot, [i+1, right] 都大于 pivot。
2024-09-12 15:16:01
346
原创 「微服务」这10道Consul面试题值得一看_consul的面试题
Consul 是一款功能强大的分布式服务发现和配置管理工具,它能够帮助开发人员和运维人员更好地管理和维护分布式系统,提高系统的可用性和稳定性。但是,使用 Consul 也需要投入一定的人力和物力,需要根据实际情况进行选择和使用。确定使用场景:Consul 支持多种服务发现方式和多种协议,需要根据实际情况选择合适的方式和协议。部署和维护:Consul 的部署和维护需要一定的技术和资源支持,需要投入一定的人力和物力。安全性:Consul 存储了系统的关键信息,需要采取相应的安全措施来保护数据的安全性。
2024-09-12 13:03:35
907
原创 VPN原理入门(非常详细)从零基础入门到精通,看完这一篇就够了
最近在工作中遇到 VPN 的相关问题,之前一直对 VPN 的原理存在一些疑惑,借此机会学习一下 VPN 的原理以及进行实现验证。由于 VPN 在不同系统下的实现方式不同,为了便于学习和理解,这里我们选择Linux环境,我本地测试环境使用的是。本文从 TUN/TAP 出发,逐步理解 VPN 中的技术细节;并结合simpletun源码,进行 VPN 的原理验证。本文从 VPN 原理出发,介绍了关键作用的 TUN/TAP 虚拟网络设备,并结合simpletun。
2024-09-12 10:38:54
5128
1
原创 SRC漏洞挖掘经验分享
但是有个致命的问题需要解决,像a=1这种明显是问题与答案,那么x=MTIzNA==是什么呢MTIzNA==显然是base64编码后的结果,解码发现是1234,应该是用来进行身份验证的,不同用户的x值不同幸好发现了一个页面存在水平越权漏洞,可以通过遍历x来获取用户信息通过这种方式即可遍历所有用户的x值,也就说可以构造恶意链接了再结合网站自己的邮件功能即可将恶意链接发送给指定用户,导致用户密码被改经尝试修改成功,也就是说网站也没有验证Referer。
2024-09-12 08:20:42
267
原创 Redis与MongoDB:技术优势与市场选择解析_redis和mongodb各自用途优势
在过去的几年里,由于互联网技术的快速发展,国内市场对于高性能、高可用性和易扩展性数据库的需求急剧增加,Redis凭借其独特的优势迎合了这一需求。对于需要快速访问和处理数据的应用,Redis的内存数据存储方式提供了更快的响应速度,且更容易管理数据本地化的需求。它支持企业级的安全特性,但配置和维护这些安全特性可能需要更多的专业知识和额外的配置。虽然MongoDB和Redis在某些安全性和合规性方面提供了类似的特性,但由于它们设计上的不同,它们在数据本地化、加密标准、合规性处理以及实时监控方面的适用性有所差异。
2024-09-12 05:53:51
1244
原创 python学生管理系统(pyqt5 含界面)_学生管理系统pyqt5
首先,因为我们的代码中,经常出现增删查改的部分,那么我们可以认为这个部分就是高频调用部分,那么一般我们再写项目的时候,我们可以将高频调用的部分,直接放入我们的函数中,再用一个类对这些函数统一进行封装,来封装出类的方法。因为账号为数据库的主键,所以账号是唯一的,所以我们可以通过搜索账号,获取数据库中存储的密码,来进行验证。那么首先我们的类的初始化部分,一定要对数据库进行连接,然后创建游标。账号密码的逻辑就是将我们两个输入框的文本进行获取,在获取之后,进行一个数据库的比对,正确时进行界面跳转,错误是弹窗警报。
2024-09-12 03:44:16
1005
原创 Nunjucks简介&;基本使用教程
global定义全局对象,然后调用process全局变量,然后MainModule来开启模块,来调用其他模块,所以下面就通过require调用了child_process模块,同时使用模块下面的exec函数来执行calc的shell命令,所以打开了计算器。execFile():类似于exec(),但是可以直接执行一个可执行文件而不需要通过shell解释器。{{str | replace("world","你好") | capitalize}}过滤器1: replace, 把"world"替换为 "你好"
2024-09-12 01:30:17
494
原创 go配置解析库 - viper_go viper mergeinconfig
如果你想在Get()中使用包含-的配置名 ,但希望对应的环境变量名包含_分隔符,就可以使用该方法。为指定的键设置默认值,对key不区分大小写,仅当用户没有通过flag、配置文件以及环境变量设置值时才使用默认值。覆盖内存中的键的值,对键不区分大小写。将用于代替通过flag、配置文件、环境变量、默认值或键/值存储获得的值。明确定义配置文件的路径、名称和扩展名。将环境变量的值设置到viper键中,该函数可以提供一或两个参数。设置配置文件的类型,如json、ini、toml。会将新的配置和原有的配置合并。
2024-09-11 16:36:16
904
原创 Golang链路追踪:实现高效可靠的分布式系统监控_golang 链路追踪
OpenTelemetry是一个开源的分布式跟踪和度量规范,它提供了一组标准化的API和数据格式,可以方便地集成到各种编程语言和框架中。OpenTelemetry支持多种后端存储和可视化工具,如Jaeger、Zipkin和Prometheus等,可以方便地实现链路追踪和性能监控。Zipkin是一个开源的分布式跟踪系统,它提供了一套完整的工具和可视化界面,可以方便地查看请求的处理路径和性能指标。在链路追踪中,我们通常需要记录span的一些重要信息,如请求的URL、请求的方法、请求的处理时间等。
2024-09-11 12:17:17
572
原创 Golang — 根据IP获取地理位置信息_golang geoip
{region: 中国|0|浙江省|温州市|电信, took: 70.8846ms}Portuguese (BR) city name: 杭州。English subdivision name: 浙江省。Russian country name: 中国。域名的ip:20.205.243.166。
2024-09-11 10:09:54
521
原创 go 为什么协程在用户态管理?
由于用户态的程序不能直接访问硬件,需要通过系统调用中转,导致许多情况下用户态的程序执行效率低于内核态,造成许多人有错误的认识。实际上,用户态和内核态的运行效率问题并不是绝对的,它们各有特点和适用场景,而Go语言选择在用户态管理goroutines正是基于效率和灵活性的考虑。
2024-09-11 07:54:04
655
原创 django使用redis缓存token验证_django redis token(1)
首先,需要在你的项目里面安装django-redis然后在view里面引入接着在settings.py里面配置redis,具体可参考连接redis,这个是写在接口外面,千万不要写在接口内,不然每一次请求都会执行该行代码,至于结果,自己意会。这里连接的是默认配置的redis,如果需要自定义的还请参考官方文档。到这一步,就完成redis的安装,配置和连接了。具体验证请往下看。
2024-09-11 05:31:37
542
原创 ASPICE框架下的自动驾驶技术集成:应对复杂性与合规性的策略_自动驾驶软件集成
强调安全性和合规性是ASPICE框架中的一个重要方面,尤其在汽车行业中,确保车辆和驾驶员的安全以及符合相关法规和标准的要求至关重要。模块化设计和接口定义是ASPICE框架中的重要概念,对于汽车行业的软件开发具有关键意义。适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上Go语言开发知识点,真正体系化!集成测试和验证在ASPICE框架下的汽车软件开发中起着重要的作用。持续改进和学习是在ASPICE框架下的汽车行业中不可或缺的一部分。
2024-09-11 03:04:18
867
原创 Chisel:基于HTTP的快速稳定TCPUDP隧道工具_chisel隧道udp用法
该项目包目前由Fedora社区进行维护,如果你遇到了关于RPM使用的问题,可以使用这个问题跟踪工具【https://bugzilla.redhat.com/buglist.cgi?通信连接始终启用了加密。Chisel是一个快速稳定的TCP/UDP隧道工具,该工具基于HTTP实现其功能,并通过SSH保证通信安全。点击【http://blog.gopheracademy.com/go-and-ssh/】了解更多关于SSH加密的信息。4、现在你的通信将被加密,并通过HTTP实现已认证的Socks5连接。
2024-09-04 21:04:56
971
原创 Android异步任务和消息机制_第二节 android 异步任务和消息机制
强引用就是指在程序代码之中普遍存在的,类似“Object obj = new Object()"这样的引用,强引用环境下,垃圾回收时需要严格判断当前引用是否为强引用,若判断为强引用,则不会被垃圾回收。软引用一般被作为缓存来使用,在垃圾回收时,虚拟机会根据当前内存使用情况来决定是否对软引用进行回收,如果系统剩余内存比较紧张,则虚拟机会回收软引用所引用的空间,如果剩余内存相对富余,则不会进行回收。Handler是消息的处理者,Looper是消息的调度者,MessageQueue是存放消息的地方。
2024-09-04 11:25:40
1664
原创 30分钟掌握沧湖一体化:flink+hudi(干货,建议收藏)_flink hudi sink
通过 CDC 进入到 Kafka 的数据除了落一份到离线数据仓库的 ODS 层之外,会同时按照实时数据仓库的链路,从 ODS->DWD->DWS->OLAP 数据库,最后供报表等数据服务使用。从架构图上,可以看到有一步数据修正 (重跑历史数据) 的动作,之所以有这一步是考虑到:有可能存在由于口径调整或者前一天的实时任务计算结果错误,导致重跑历史数据的情况。这个问题坑了我好几天,一度都打算放弃hudi了,表面上很正常,日志也没有任何报错,也可以看出来cdc起作用了,有数据写入,但是就是卡在。
2024-09-03 19:36:43
691
原创 04-集合类不安全&Callable
/java.util.ConcurrentModificationException 并发修改异常!/*解决方法*/i
2024-09-02 19:39:42
1128
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人