Github贡献PR六部曲
Github贡献PR六部曲 1. fork代码1选中自己要贡献PR的仓库,点击Github右上角的fork 2. clone代码1git clone git@github.com:{username}/seata.git 3. 设置提交信息1234git config user.name {username}git config user.email {email}git remote add upstream git@github.com:seata/seata.gitgit remote set-url --push upstream no-pushing 4. 贡献PR步骤123git checkout remotes/upstream/develop -b {branch name}git push origin {branch name}git branch --set-upstream-to=origin/{branch name} {b...
frida安装与配置
frida安装与配置 下载夜神模拟器 x86_64下载python 3.8.x下载 frida-server1https://github.com/frida/frida/releases/download/12.8.0/frida-server-12.8.0-android-x86_64.xz 1unxz frida-server-12.8.0-android-x86_64.xz 下载frida-gadget1https://github.com/frida/frida/releases/download/12.8.0/frida-gadget-12.8.0-android-x86_64.so.xz 123unxz frida-gadget-12.8.0-android-x86_64.so.xzmkdir -p ~/.cache/fridacp -rp frida-gadget-12.8.0-android-x86_64.so ~/.cache/frida/gadget-android-arm64.so 安装frida12pip3 install frida==12.8.0p...
Frida获取微信消息内容
Frida获取微信消息内容 上一篇讲解了如何安装Frida获取微信消息内容1234567var SQLiteDatabase = Java.use("com.tencent.wcdb.database.SQLiteDatabase");SQLiteDatabase["insert"].implementation = function (str, str2, contentValues) { console.log('SQLiteDatabase.insert is called:', 'str=', str, 'str2=', str2, 'contentValues=', contentValues); var result = this["insert"](str, str2, contentValues); console.log('SQLiteDatabase.insert result=...
Android Studio搭建Xposed项目
添加依赖settings.gradle在dependencyResolutionManagement添加12345678910111213dependencyResolutionManagement { repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS) repositories { google() mavenCentral() // ** maven { url 'https://maven.aliyun.com/nexus/content/groups/public/' } maven { url 'https://maven.aliyun.com/nexus/content/repositories/jcenter' } maven { url 'https://maven.aliyun.com/nex...
搭建可观测平台SigNoz
搭建可观测平台SigNoz 一、前提条件git,docker,docker-compose 二、下载安装脚本1git clone -b main https://github.com/SigNoz/signoz.git && cd signoz/deploy/ 三、去掉示例程序123456789101112131415161718192021222324252627vim docker/clickhouse-setup/docker-compose.yaml# 注释一下内容# hotrod:# image: jaegertracing/example-hotrod:1.30# container_name: hotrod# logging:# options:# max-size: 50m# max-file: "3"# command: ["all"]# environment:# - JAEGER_ENDPOINT=http://otel-c...
搭建可观测平台SigNoz
使用signoz快速搭建可观测平台 一、前提条件git,docker,docker-compose 二、下载安装脚本123git clone -b main https://github.com/SigNoz/signoz.git && cd signoz/deploy/git checkout v0.69.0 -b v0.69.0-local 四、启动1234567891011docker-compose -f docker/clickhouse-setup/docker-compose-minimal.yaml up -ddocker pssignoz/frontend:0.69.0gliderlabs/logspout:v3.2.14signoz/signoz-otel-collector:0.111.24signoz/alertmanager:0.23.7signoz/query-service:0.69.0clickhouse/clickhouse-server:24.1.2-alpinebitnami/zookeeper:3.7.1 五、Java程序接...
Kubernetes证书更新
Kubernetes证书过期更新 一、查看证书过期的时间1kubeadm certs check-expiration 二、证书备份 1cp -rp /etc/kubernetes/ /etc/kubernetes.20230320 增加配置文件12345678910输出默认配置kubeadm config print init-defaultsvim ~/kubeadm.yamlapiVersion: kubeadm.k8s.io/v1beta3kind: ClusterConfigurationkubernetesVersion: v1.23.0 #这里改成你集群对应的版本imageRepository: registry.aliyuncs.com/google_containers #这里使用国内的镜像仓库,否则在重新签发的时候会报错:could not fetch a Kubernetes version from the internet: unable to get URL "https://dl.k8s.io/release/stable-1.txt&qu...
深入理解计算机浮点数存储
深入理解计算机浮点数存储 根据IEEE 754 浮点标准12345V = (-1)^s * M * 2^Es: 符号 s决定这数是负数(s=1)还是正数(s=0)M: 尾数 M是一个二进制小数E: 阶码 E的作用是对浮点数加权,这个权重是2的E次幂123456789101112单精度表示+---------+----------------+------------------------+| s | E | M |+---------+----------------+------------------------+ 1 8 23双精度+---------+----------------+------------------------+| s | E | M |+---------+----------------+-----------------...
Spring解决RocketMQ发消息与MySQL事务一致性
Spring解决RocketMQ发消息与MySQL事务一致性 场景 用户订单并支付 发送消息开通查看文章权限 123456789101112131415161718192021222324// 伪代码@Transactional(rollbackFor=Exception.class)public void pay(long uid, String orderNO) { Order order = orderService.selectOrder(uid, orderNO) if (order != null) { String status = "paid"; orderDao.updateStatus(uid, orderNo, status); rocketMQTemplate.send("order:status", message(uid, orderNo, order.itemId, status)); }}public class OrderStatusA...
G1 垃圾收集器
G1 垃圾收集器Garbage-First (G1) 收集器是一种服务器式垃圾收集器,针对具有大内存的多处理器机器。它以高概率满足垃圾收集 (GC) 暂停时间目标,同时实现高吞吐量。 Oracle JDK 7 update 4 及更高版本完全支持 G1 垃圾收集器。 G1 收集器专为以下应用而设计: 可以与 CMS 收集器等应用程序线程同时操作。 紧凑的可用空间,没有冗长的 GC 引起的暂停时间。 需要更多可预测的 GC 暂停持续时间。 不想牺牲很多吞吐量性能。 不需要更大的 Java 堆。 G1 计划作为 Concurrent Mark-Sweep Collector (CMS) 的长期替代品。将 G1 与 CMS 进行比较,G1 是一个更好的解决方案。一个区别是 G1 是一个压缩收集器。 G1 充分压缩以完全避免使用细粒度的空闲列表进行分配,而是依赖于区域。这大大简化了收集器的各个部分,并且主要消除了潜在的碎片问题。此外,G1 提供比 CMS 收集器更可预测的垃圾收集暂停,并允许用户指定所需的暂停目标。 G1运行概览较旧的垃圾收集器(串行(serial)、并行(paral...