用Kotlin的方式来处理网络异常
之前的文章 RxJava处理业务异常的几种方式 曾经介绍过 Retrofit 的异常可以有多种处理方式。这次我结合 Kotlin 扩展函数的特性来尝试处理异常。
之前的文章 RxJava处理业务异常的几种方式 曾经介绍过 Retrofit 的异常可以有多种处理方式。这次我结合 Kotlin 扩展函数的特性来尝试处理异常。
这篇文章详细分析了现代网络攻击中的 DGA(域名生成算法)技术,涵盖了其工作原理、分类及在恶意软件中的应用实例。通过技术解析和实际案例,展示了如何检测和防御 DGA 带来的安全威胁。内容适合网络安全研究人员、安全工程师以及对恶意软件分析感兴趣的技术爱好者,提供了系统化的学习参考。
本文提供了多种方法来防止网站被镜像,包括使用 JavaScript 检查域名有效性、设置 `X-Frame-Options` 和 `Content-Security-Policy` 防止嵌入、限制访问频率、过滤爬虫请求,以及强制 HTTPS 加密。通过分析访问日志识别异常流量,这些措施可有效降低网站被恶意镜像的风险,提升资源的安全性和访问控制。
本文详述了 AWS 网络环境的规划,包括 VPC、子网、路由表的创建和管理。通过对公有、私有和内部子网的划分,以及 NAT 网关和 IGW 的配置,实现了不同网络的隔离与访问控制。同时,文章介绍了使用中转网关进行跨账号 VPC 打通的方法,为多账号和复杂网络环境提供了便捷的连接方案。这些规划为 AWS 运维部署打下了基础,有助于提升环境的安全性与可扩展性。
在 Go 中,字符串和字节数组的互转性能是很多开发者关注的问题。本文详细对比了四种转换方式,包括新型 unsafe 方法和 Kubernetes 实现,并通过 Benchmark 测试揭示了它们的性能差异。想要优化你的 Go 项目性能?不妨看看这篇详细的实测分析!
本文介绍了一种结合Zustand和React Query进行前端数据管理的方法。作者指出,直接使用React Query进行复杂数据的乐观更新可能会导致性能和维护问题。通过使用Zustand创建数据映射表和自定义hook,可以简化状态管理和数据同步,提升效率和可维护性。文章还提供了在开发RSS信息流浏览器“Follow”中的应用示例。
这篇文章介绍了如何使用Rust编程语言捕获和解析网络包,以提取TCP时间戳并计算网络延迟。作者利用pcap库捕获网络包,并使用pdu库解析TCP选项中的时间戳信息,结合哈希映射存储五元组信息以计算往返时间。文中提供了代码示例,展示了在Mac系统上实现这一过程的步骤。
之前在某电商 App 上浏览商品评论区时,发现一些晒单照片中包含的二维码被马赛克处理了,从马赛克的处理痕迹来看不像是用户手动处理的,更像是机器识别+处理的,对此我更好奇其实现原理了。
借助 ChatGPT,了解到主流的处理方式是通过 OpenCV 识别二维码的位置,并创建一个模糊图层对其覆盖。
最近编写了一个Go程序,向数百万个IP地址发送ICMP ping消息。显然,希望这个过程能尽可能快速高效地完成。因此,这促使我研究各种与网络栈交互和快速发送数据包的各种方法。这是一个有趣的旅程,所以在本文中,我将分享一些学习成果,并记录下来供将来参考:)你将看到,仅使用8个内核就可以达到1880万数据包/秒。这里还有一个GitHub仓库,其中包含了示例代码,可以方便地跟随学习。
用过 skynet 的应该都碰到过:当我们在服务中不小心调用了一个长时间运行而不返回的 C 函数,会独占一个工作线程。同时,这个被阻塞的服务也无法处理新的消息。一旦这种情况发生,看似是无解的。我们通常认为,是设计问题导致了这种情况发生。skynet 的框架在监测到这种情况发生时,会输出 maybe in an endless loop 。
如果是 Lua 函数产生的死循环,可以通过发送 signal 打断正在运行运行的 Lua 虚拟机,但如果是陷入 C 函数中,只能事后追查 bug 了。
那么,如果我原本就预期一段 C 代码会运行很长时间,有没有可能从底层支持以非阻塞方式运行这段代码呢?即,在这段代码运行期间,该服务还可以接收并处理新的消息?
网络空间指纹是对涉案网络资产所表现的数字痕迹和服务特征的收集和分析,类似于传统刑事科学的指纹概念,每个网络犯罪活动站点都会在网络空间留下独特的特征。本文将重点介绍网络空间指纹的形成和采集方法,以及其在网络犯罪研判中的应用实践。同时,我们将通过实际案例分析,验证网络空间指纹在研判网络犯罪行为中的可行性和有效性。