关于安卓逆向的学习思考

本地同时启停多个中间件的优雅方案

"I don’t care if it works on your machine! We are not shipping your machine!" - Vidiu Platon “我才不管它能不能在你的机器上运行捏!我们又不会给你提供机器!” —— 韦都·柏拉图 0x00 大纲 0x01 前 ......
中间件 多个 同时 方案

为什么总是应该考虑给定 List 的初始大小

在 .Net 技术中,使用 List<> 来存储数据是很常见的。List<> 是一个可以动态增长的泛型集合类型,可以存储任何类型的数据。 但是,在实际使用中,很多人并不注意给定 List<> 的初始大小,导致在数据量较大时,List<> 的性能可能不尽如人意。 代码示例 下面,我们以一个简单的代码示 ......
大小 List

Chaos 测试下的若干 NebulaGraph Raft 问题分析

作为分布式系统的基石 Raft 有非常明显的优势,但这也伴随着不小的挑战 —— Raft 算法的实现及其容易出错,同时算法的测试和调试也是一项巨大的挑战。NebulaGraph 目前使用的是自研的 Raft,鉴于 Raft 本身的复杂性我们构造了诸多 Chaos 测试来保障 NebulaGraph ... ......
NebulaGraph 问题 Chaos Raft

动态更改Spring定时任务Cron表达式的优雅方案

"Most of you are familiar with the virtues of a programmer. There are three, of course: laziness, impatience, and hubris." - Larry Wall “程序员的美德:懒惰,不耐烦 ......
表达式 任务 方案 动态 Spring

一次不太成功的内网部署视屏会议系统预研

Jitsi Meet 背景 接到一个任务,想在公司内网搭建一个视频会议系统,用于公司内部或与分公司交流,需要内网部署,最好是开源免费。 项目定位 查找了如下几个项目: tailchat-meeting - https://github.com/msgbyte/tailchat-meeting sta ......
视屏 会议系统 会议 系统

使用 System.Text.Json 时,如何处理 Dictionary 中 Key 为自定义类型的问题

在使用 System.Text.Json 进行 JSON 序列化和反序列化操作时,我们会遇到一个问题:如何处理字典中的 Key 为自定义类型的问题。 背景说明 例如,我们有如下代码: // 定义一个自定义类型 public class CustomType { public int Id { get ......
Dictionary 类型 System 问题 Json

作者推荐 | 【分布式技术专题】「架构设计方案」图解学习法总结集群模式下的各种软负载均衡策略实现及原理分析

通常来说,负载均衡分为硬件负载均衡及软件负载均衡。硬件负载均衡,顾名思义,在服务器节点之间安装专门的硬件进行负载均衡的工作,F5或者A10便为其中的佼佼者。软件负载均衡则是通过在服务器上安装的特定的负载均衡软件或是自带负载均衡模块完成对请求的分配派发。例如,平时我们使用的Nginx或者API-Gat... ......
分布式 集群 架构 原理 策略

二叉树的遍历

1.二叉树的遍历 二叉树主要有两种遍历方式: 深度优先遍历:先往深走,遇到叶子节点再往回走。 前序遍历(递归法,迭代法) 中左右 中序遍历(递归法,迭代法) 左中右 后序遍历(递归法,迭代法) 左右中 广度优先遍历:一层一层的去遍历。 层次遍历(迭代法) 对比图可以理解一下遍历的过程,前中后序遍历涉 ......

基于MATLAB的人民币识别系统

1、选图背景 随着科技的发展,图像识别技术在计算机视觉领域起着越来越重要的作用,现已被应用到金融、军事、公安刑侦、生物医学、机器视觉等各个领域; 随着国民经济的快速发展,人民币大量流通市场,商业交易都离不开人民币; 开发出一种高效率、低成本、通用性强的人民币识别系统,能够减少大量的人力资源,提升资金 ......
人民币 MATLAB 人民 系统

.net core 中 WebApiClientCore的使用

WebApiClient 接口注册与选项 1 配置文件中配置HttpApiOptions选项 配置示例 "IUserApi": { "HttpHost": "http://www.webappiclient.com/", "UseParameterPropertyValidate": false, ......
WebApiClientCore core net

【秒杀购物商城业务服务】「分布式架构服务」盘点中间件服务的高可用模式及集群技术的方案分析

- 基于MySQL数据库集群技术实现服务的高可用 - 基于Tomcat的集群负载机制实现Tomcat服务器的高可用 - 基于Nginx负载均衡机制实现负载均衡(介绍和配置) - 基于Redis缓存服务实现数据缓存控制相关介绍和技术点分析 - 对未来的分布式技术架构扩展和延伸介绍(包含云原生部分) ......

【Java难点攻克】「NIO和内存映射性能提升系列」彻底透析NIO底层的内存映射机制原理与Direct Memory的关系

Java类库中的NIO包相对于IO包来说有一个新功能就是 【内存映射文件】,在业务层面的日常开发过程中并不是经常会使用,但是一旦在处理大文件时是比较理想的提高效率的手段,之前已经在基于API和开发实战角度介绍了相关的大文件读取以及NIO操作的实现,而本文主要想结合操作系统(OS)底层中相关方面的内容... ......
内存 难点 底层 NIO 原理

工作5年的老程序员的年终总结

看了上篇的博客是2020年9月10号,已经两年多没写博客了,重新执笔开始写篇年终总结! 时间飞逝,已经毕业5年多,这一路经历太多了,这篇博客对整个经历进行复盘和总结。 经历 2017年坐着夜间绿皮硬座来到北京,运气还算不错一个多星期就找到了工作,工作第一年浑浑噩噩,然后经历了P2P暴雷,深受打击觉得 ......
程序员 程序

使用linux的ffmpeg进行B站直播推流

很久之前买了个友善的开发板R2S,一直在家吃灰。最近看到网上有用ffmpeg进行直播推流的案例,想把吃灰的的开发板利用起来,于是有了这篇教程。 第一步:安装ffmpeg sudo apt update sudo apt install ffmpeg 第二部分:创建用来存放视频的文件夹 这里我选择在/ ......
ffmpeg linux

究竟是谁负了谁,来自底层测试的2022年终总结

前言 说实话坐在椅子前,都想好了,该怎么去写,甚至感觉有好多要写的,但是当我坐在椅子上时,却不知道该怎么开头了,不知道是不是紧张?还是不舍?难道还没有跟过去挥手告别的勇气吗? 当然不是,只是在构思怎么能将自己的2022这一年完美呈现,结果越想越复杂了,所以还是不想了,不如即兴表达,写到哪算哪里,就算 ......
底层 2022

Selenium4+Python3系列(十二) - 测试框架的设计与开发

前言 自己从未没想过能使用python来做自动化测试框架的设计、开发。 可能有人会好奇说,六哥,你怎么也用python写测试框架了? 领导说: python你也没有实际工作经验,可能就是自己自学的。 听完,那一刻,我真的特别证明自己,我也行! 框架搭建 整个框架的实现,大约也就1.5天,关于框架的开 ......
Selenium4 框架 Selenium Python3 Python

微软出品自动化神器【Playwright+Java】系列(七) 之 元素的可操作性验证

前言 昨天在某平台发表了一篇这系列的文章,结果不但提示说有违禁词(java也算?),然后文章审核通过后,文章还找不到,不到去哪了,表示很郁闷,去反应未果,确实有点尴尬了。 元素的可操作性验证 关于API的命名,仅出自于我个人理解,旨在看的同学理解会用,感觉名字不好可以重写哈! 1、何为元素的可操作性 ......
可操作性 神器 Playwright 元素 Java

历时9个月重构iNeuOS工业互联网操作系统,打造工业领域的“Office”

历时9个月的时间,对iNeuOS工业互联网操作系统进行全面重构,发布内部测试版本。重构的主要目的:工程化的框架优化,更好的聚焦工业领域业务发展。重构也是保障产品能够可持续发展的重要手段,同时兼顾产品的安全性和稳定性。 ......
工业 领域 互联网 iNeuOS Office

【分布式技术专题】「架构设计方案」盘点和总结秒杀服务的功能设计及注意事项技术体系

分析秒杀的业务场景,最重要的有一点就是超卖问题,假如备货只有100个,但是最终超卖了200,一般来讲秒杀系统的价格都比较低,如果超卖将严重影响公司的财产利益,因此首当其冲的就是解决商品的超卖问题。 ......
技术 分布式 架构 注意事项 事项

【Spring专题】「开发指南」夯实实战基础功底之解读logback-spring.xml文件的详解实现

logback的maven配置 <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-api</artifactId> <version>2.0.3</version> </dependency> <dependency> <grou ......

【深入浅出Spring原理及实战】「源码原理实战」从底层角度去分析研究PropertySourcesPlaceholderConfigurer的原理及实战注入机制

主要有一下xml文件占位符解析和Java的属性@Value的占位符解析配置这两种场景进行分析和实现解析,如下面两种案例。 ......

【JVM故障问题排查心得】「内存诊断系列」Docker容器经常被kill掉,k8s中该节点的pod也被驱赶,怎么分析?

我有一个在主机中运行的Docker容器(也有在同一主机中运行的其他容器)。该Docker容器中的应用程序将会计算数据和流式处理,这可能会消耗大量内存。 该容器会不时退出。我怀疑这是由于内存不足,但不是很确定。我需要找到根本原因的方法。那么有什么方法可以知道这个集装箱的死亡发生了什么? ......
节点 容器 故障 内存 心得

深度剖析 | 【JVM深层系列】[HotSpotVM研究系列] JVM调优的"标准参数"的各种陷阱和坑点分析(攻克盲点及混淆点)「 1 」

相信大多数人的理解是Major GC只针对老年代,Full GC会先触发一次Minor GC,不知对否?我参考了R大的分析和介绍,总结了一下相关的说明和分析结论。 ......
盲点 quot 深层 JVM HotSpotVM

gtest学习教程(从0到1)

gtest使用教程 1 简介 之前对gtest一无所知,最近,找了些相关的资料,学习了下.这里主要记录了学习过程和相关知识点. 什么是gtest: gtest测试框架是在不同平台上(Linux,Mac OS X,Windows,Cygwin,Windows CE和Symbian)为编写C++测试而生 ......
学习教程 教程 gtest

把时间沉淀到自己的热爱里 | Kagol 的 2022 年终总结

如何将时间沉淀下来? 虽然时间是无形的,看不见、摸不着,也无法贮存,但却可以通过有形的东西沉淀下来。 当你花时间写完一篇文章,时间就沉淀到文字中; 当你录制了一个有趣的视频,时间就沉淀到视频里; 当你花了一整天的时间整理房间,时间就沉淀到你每天的起居环境里; 当你去健身房撸铁,时间就沉淀到每一块结... ......
时间 Kagol 2022

intel Pin:动态二进制插桩的安装和使用,以及如何开发一个自己的Pintool

先贴几个你可能用得上的链接 intel Pin的官方介绍Pin: Pin 3.21 User Guide (intel.com) intel Pin的API文档Pin: API Reference (intel.com) intel Pin的下载地址Pin - A Dynamic Binary In ......
二进制 Pintool 动态 intel Pin

阿里云香港节点全面故障给我们的启示

2022年12月18日上午,阿里云发布《阿里云香港可用区C某机房设备异常》公告。“阿里云监控发现香港地域某机房设备异常,影响香港地域可用区C的云服务器ECS、云数据库PolarDB等云产品使用,阿里云工程师已在紧急处理中。” 在这个寒冷的冬天,一个炸雷给业界惊起了一个大波浪。很多人不解的是说好的高可 ......
节点 故障

定制.NET 6.0的Middleware中间件

大家好,我是张飞洪,感谢您的阅读,我会不定期和你分享学习心得,希望我的文章能成为你成长路上的垫脚石,让我们一起精进。 本章是《定制ASP NET 6.0框架系列文章》的第8篇。在本文中,我们将学习中间件,以及如何使用它进一步定制应用程序。我们将快速学习中间件的基础知识,然后探讨如何使用它做的一些特殊 ......
中间件 Middleware NET 6.0

超详细讲解如何搭建自己的文件服务器

由于FTP、HTTP、Telnet等协议的数据都是使用明文进行传输的,因此从设计上就是不可靠的。人们为了满足以密文方式传输文件的需求,发明了vsftpd服务程序。vsftpd(very secure ftp daemon,非常安全的FTP守护进程)是一款运行在Linux操作系统上的FTP服务程序,不... ......
服务器 文件

仿照“全能扫描王”的图像增强-由原理到实现

本文区分目标、ps模拟操作、算法实现、算法原理、延申扩展等几个部分对背景去除增强这种典型算法进行了剖析。 ......
全能 图像 原理