Categories

130 pages

Computer

pstack troubleshoot a hung process

In software development and operations, deadlocked processes are frequently encountered. This situation can lead to performance degradation or service unavailability. This article introduces how to use the pstack tool to troubleshoot deadlocked process issues by analyzing process stack information to identify the root cause and resolve it.

Background: A child service within the risk control system experienced a deadlocked state, resulting in the unavailability of the risk control service. Due to the lack of service availability monitoring, the deadlocked process situation was not detected in a timely manner, leading to system unavailability.

C++ Function Call Latency

Designed a行情 SDK, implementing different callback function implementations, and performed an extensive test. Recently I’ve been looking into C++ function programming, where functions have become first-class citizens, flowing within the program internally – what’s the difference in performance?

Previous article link: Compiler, Callback Functions, Performance Testing leimao大佬 also did similar tests, so I borrowed their code.

How to Anti-Debug

Suddenly, I was feeling the urge to browse for new wallpapers, sticking with my usual black series, with some areas colored in, and the desktop needing to display icons. Other color schemes would result in blurry icons.

I stared at the assembly code, trying to figure it out, but couldn’t understand it. I tried throwing it to an AI, explaining the instructions, but it failed to explain the context – clearly, this was a command used for a specific scenario. Regular code isn’t like that.

How to Download Focus News/CCTV Video Files

Recently, someone asked how to download Focus Interview videos. My mind immediately went to the usual – eight or nine out of ten times it’s encrypted using an m3u8 method, and a bit of simple processing is all it takes.

Downloader

https://github.com/nilaoda/N_m3u8DL-CLI m3u8 downloader is an open-source command-line m3u8/HLS/dash downloader that supports ordinary AES-128-CBC decryption, multi-threading, custom request headers, etc. Supports Simplified Chinese, Traditional Chinese and English. English Supported.

Bulk Modify SQL Server Database Disk File Permissions

The company adjusted its security policies. Ultimately, ‘Mechanical Mini’ was relocated back home as a backup server, along with a full system reinstallation. Ubuntu switched to Windows Server; due to an irregular activation method – used at home – it seemed like it wouldn’t be activated, and that was fine. An unconventional activation triggered Microsoft’s detection (running normally for half a month), the server would automatically shut down after running for one hour. After reviewing the system logs, it was discovered that this was due to using a pirated version.

Linux System Benchmark Test

Windows platform has RuMaster (Entertainment Master), which isn’t known for highly accurate data, but it’s still useful as a reference. Of course, there are other professional benchmarking software options available. When it comes to Linux systems, there haven’t seemed to be any particularly suitable benchmarking software found.

Sysbench is a versatile benchmark testing tool that can be used to test CPU, memory, file I/O, thread performance, and more. You can use Sysbench to execute various performance testing tasks.

Git Disable HTTP Repository

Updated habit software version, unsure which Git version to start from, prohibiting fetching code from Http repositories.

fatal: Unencrypted HTTP is not supported for GitLab. Ensure the repository remote URL is using HTTPS

Background Introduction

Environment: Windows platform, I’ve always used Tiny Turtle to operate Git, and key configuration was also handled through it. I previously created a script to batch update local repositories. Previous article link: Batch Update Local Git Repository Today when I went home to execute the code update, the previous error occurred, and the repository could no longer be updated normally. I was planning to use Git’s configuration to continue using the http protocol to update the repository, but I searched everywhere without finding the corresponding configuration item. The simplest solution is of course to switch to the ssh protocol to update the repository, as the gitlab configured by the company will not provide the https protocol in the short term.

AI Programming and Task Decomposition

Two years ago, I added a copy function to the site, which took me half a day of tinkering. Ultimately, the rendering effect wasn’t quite satisfactory, and as a somewhat mediocre frontend developer, I didn’t plan on improving it – if it worked, it was good enough. This year, I used AI to develop a mini-program, which has also made me more familiar with frontend development. I refactored it (the AI redesigned it).