XOR

一种面向业务配置基于JSF广播定时生效的工具

作者:京东物流 王北永 姚再毅 李振 1 背景 目前,ducc实现了实时近乎所有配置动态生效的场景,但是配置是否实时生效,不能直观展示每个机器上jvm内对象对应的参数是否已变更为准确的值,大部分时候需要查看日志确认是否生效。 2 技术依赖 1)Jsf:京东RPC框架,用作机器之间的通讯工具 2)re ......
业务 工具 JSF

代码影响范围工具探索

作者:京东零售 田创新、耿蕾 一、背景 1.祖传代码不敢随意改动,影响范围无法评估。并且组内时常有因为修改了某块代码,导致其他业务受到影响,产生bug,影响生产。 2.研发提测完成后,测试进入测试后经常会向研发询问本次需求改动影响范围,以此来确定测试用例,以达到精准测试,提升整个需求的质量,缩短交付 ......
范围 代码 工具

基于AbstractProcessor扩展MapStruct自动生成实体映射工具类

作者:京东物流 王北永 姚再毅 1 背景 日常开发过程中,尤其在 DDD 过程中,经常遇到 VO/MODEL/PO 等领域模型的相互转换。此时我们会一个字段一个字段进行 set|get 设置。要么使用工具类进行暴力的属性拷贝,在这个暴力属性拷贝过程中好的工具更能提高程序的运行效率,反之引起性能低下、 ......

Squirrel状态机-从原理探究到最佳实践

作者:京东物流 郑朋辉 1 简介 Squirrel状态机是一种用来进行对象行为建模的工具,主要描述对象在它的生命周期内所经历的状态,以及如何响应来自外界的各种事件。比如订单的创建、已支付、发货、收获、取消等等状态、状态之间的控制、触发事件的监听,可以用该框架进行清晰的管理实现。使用状态机来管理对象生 ......
Squirrel 原理 状态

前端Linux部署命令与流程记录

以前写过一篇在Linux上从零开始部署前后端分离的Vue+Spring boot项目,但那时候是部署自己的个人项目,磕磕绊绊地把问题解决了,后来在公司有了几次应用到实际生产环境的经验,发现还有很多可以补充的地方,很多指令和下载地址每次用到的时候再找就相对麻烦,通过这篇文章可以做一个记录。 另外,之前 ......
前端 命令 流程 Linux

深入理解 OpenMP 线程同步机制

在本篇文章当中主要给大家介绍了一些经常使用的 OpenMP 用于线程之间同步的指令,并且用实际例子分析它内部的工作机制,以及我们改如何使用 nowait 优化程序的性能,以上就是本篇文章的所有内容希望大家有所收获! ......
线程 机制 OpenMP

OpenMP 原子指令设计与实现

在本篇文章当中主要是深入剖析了 OpenMP 当中各种原子指令的实现原理以及分析了他们对应的汇编程序,OpenMP 在处理 #pragma omp atomic 的时候如果能够使用原子指令完成需求那就直接使用原子指令,否则的话就使用 CAS cmpxchg 指令和 while 循环完成对应的需求。 ......
原子 指令 OpenMP

OpenMP Parallel Construct 实现原理与源码分析

在本篇文章当中我们将主要分析 OpenMP 当中的 parallel construct 具体时如何实现的,以及这个 construct 调用了哪些运行时库函数,并且详细分析这期间的参数传递! ......
Construct 源码 Parallel 原理 OpenMP

OpenMP 线程同步 Construct 实现原理以及源码分析(上)

在本篇文章当中主要给大家介绍了 flush, master 和 critical 指令的实现细节和他的调用的库函数,并且深入分析了这几个 construct 当中设计的库函数的源代码,希望大家有所收获。 ......
线程 Construct 源码 原理 OpenMP

PowerUsageSummary.java源码分析

在在线网站http://androidxref.com/上对Android版本6.0.1_r10源码进行分析 官方手机的应用耗电排行具体实现位置在:/packages/apps/Settings/src/com/android/settings/fuelgauge/PowerUsageSummary ......
PowerUsageSummary 源码 java

BatteryStatsHelper.java源码分析

在分析PowerUsageSummary的时候,其实可以发现主要获取应用和服务电量使用情况的实现是在BatteryStatsHelper.java中 还是在线网站http://androidxref.com/上对Android版本6.0.1_r10源码进行分析 具体位置在 /frameworks/b ......
BatteryStatsHelper 源码 java

nmap脚本详解

nmap --script 前言 我们通过nmap script来大幅扩展nmap的功能,nmap具有强大的脚本引擎NSE(Nmap Scripting Engine),它允许用户编写(和共享)简单的脚本(使用lua编程语言)自动化各种网络任务 官方文档 NSEDoc Reference Porta ......
脚本 nmap

Java安全之JDBC Attacks学习记录

Java安全之JDBC Attacks 写在前面 很早就看到了Make JDBC Attacks Brilliant Again议题,一直想分析学习下,但是太懒。 MySQL 原理概述 "扩展参数" 就是本次导致安全漏洞的一个重要的部分。 Mysql JDBC 中包含一个危险的扩展参数: ”auto ......
Attacks Java JDBC

python数据分析与可视化【思维导图】

python数据分析与可视化常用库 numpy+matplotlib+pandas 思维导图 图中难免有错误,后期随着学习与应用的深入,会不断修改更新。 当前版本号:1.0 numpy介绍 NumPy 是什么? NumPy是使用Python进行科学计算的基础软件包。除其他外,它包括: 功能强大的N维 ......
数据分析 思维 数据 python

光速上手k8s(2023)(containerd)(未完待续)

又过了好久没写了,主要是近来状况也无聊 非常感谢 孙长宇大佬 ,没有他的帮助我不可能完成k8s的搭建(坑实在是太多了),大家可以看看他的教程 ,本教程面向初学者结合了自己的经验和遇到的问题 一、了解概念(参考) 概念 Kubernetes 是一个可移植、可扩展的开源平台,用于管理容器化的工作负载和服 ......
光速 containerd 2023 k8s k8

【Java复健指南15】链表LinkedList及其说明

链表LinkedList by Java 之前有写过一些记录(引用),但是忘了乱了,现在重新梳理一遍 链表是Java中List接口的一种实现 定义(引用) 链表(linked list)是一种物理存储结构上非连续存储结构,数据元素的逻辑顺序是通过链表中的引用链接次序实现的. 链表由一系列结点(链表中 ......
LinkedList 指南 Java

【LeetCode链表#9】图解:两两交换链表节点

两两交换链表中的节点 力扣题目链接(opens new window) 给定一个链表,两两交换其中相邻的节点,并返回交换后的链表。 你不能只是单纯的改变节点内部的值,而是需要实际的进行节点交换。 思路 这里还是要应用虚拟头节点,不然交换链表头节点的操作会与交换其他节点时不同 交换的过程其实不难理解, ......
节点 LeetCode

【C++ 数据结构:链表】二刷LeetCode707设计链表

【C++链表】 使用c++重新写一遍LeetCode707设计链表 目的是熟悉c++中链表的操作 知识点 C++链表节点的实现 在c++中,一般通过结构体来定义链表的节点,也需要写构造函数(使用初始化列表) 如: struct ListNode{ int val; ListNode* next; / ......
数据结构 LeetCode 结构 数据 707

iOS根据两点经纬度坐标计算指南针方位角

需求 在地图导航时,始终保持当前路段竖直超前。 设计 因地图暴露的方法中只有设置地图相对于正北的方向角的方法。因此,需要实现“根据两点经纬度坐标计算指南针方位角”的算法,这样在每次切换路段时,调用算法计算新路段指南针方位角,然后设置地图相对于正北的方向角即可实现需求。 示意图如下: 算法实现原理详见 ......
方位角 经纬度 指南针 经纬 坐标

关于 Dev-C++ 中缺少 iconv.h 的问题

前言 在 C++ 中有个扩展库 ext,里面有一些黑科技(hash, splay, binomial_heap 等等), 在 Windows 环境中,我们运行 Dev-C++ 并在头文件写 #include<bits/extc++.h> 时,经常会收到 [Error] iconv.h: No suc ......
问题 Dev-C iconv Dev

博客园自制样式主题分享

设计背景 关于个人笔记,每个人有每个的方案,就我而言大致经历了以下几个阶段: 笔记软件,比如 印象笔记,有道笔记 等。 优点:隐私性强,跨终端。 缺点:个人用起来不是很舒服,可定制化程度低。 开放博客,用作技术分享,比如某DN,某CTO,某书等等。 优点:使用方便。 缺点:广告多,可定制化程度低,博 ......
样式 主题 博客

迁移学习(MixMatch)《MixMatch: A Holistic Approach to Semi-Supervised Learning》

论文信息 论文标题:MixMatch: A Holistic Approach to Semi-Supervised Learning论文作者:David Berthelot, Nicholas Carlini, Ian Goodfellow, Nicolas Papernot, Avital Ol ......

迁移学习(JDDA) 《Joint domain alignment and discriminative feature learning for unsupervised deep domain adaptation》

论文信息 论文标题:Joint domain alignment and discriminative feature learning for unsupervised deep domain adaptation论文作者:Chao Chen , Zhihong Chen , Boyuan Jia ......

迁移学习(DIFEX)《Domain-invariant Feature Exploration for Domain Generalization》【已复现迁移】

论文信息 论文标题:Domain-invariant Feature Exploration for Domain Generalization论文作者:Wang Lu, Jindong Wang, Haoliang Li, Yiqiang Chen, Xing Xie论文来源:TMLR 2022论 ......

Codeforces Round #844 (Div. 1 + Div. 2, based on VK Cup 2022 - Elimination Round) A-D

比赛链接 A 题意 设计一条线路要贴着6个墙面走,从 $(a,b)$ 到 $(f,g)$ ,线路长度最短。 题解 知识点:模拟。 分类取最短即可。 时间复杂度 $O(1)$ 空间复杂度 $O(1)$ 代码 #include <bits/stdc++.h> #define ll long long u ......
Round Elimination Codeforces Div based

2023牛客寒假算法基础集训营3 A-I+K

比赛链接 A 题解 知识点:贪心。 把所有正偶数除成奇数,即可。 (人傻了没加 $x>0$ WA2 时间复杂度 $O(n)$ 空间复杂度 $O(1)$ 代码 #include <bits/stdc++.h> using ll = long long; using namespace std; int ......
算法 基础 2023 A-I

Codeforces Round #846 (Div. 2) A-E

比赛链接 A 题意 给 $n$ 个正整数,找到三个数,使得他们的和为奇数,输出他们的下标。 题解 知识点:贪心。 找到三个奇数或者一个奇数两个偶数即可,其他情况无解。 时间复杂度 $O(n)$ 空间复杂度 $O(n)$ 代码 #include <bits/stdc++.h> using namesp ......
Codeforces Round 846 A-E Div

WebGoat-8.2.2靶场之不安全的反序列化漏洞

前言 序列化是将变量或对象转换成字符串的过程 反序列化就是把一个对象变成可以传输的字符串,目的就是为了方便传输 而反序列化漏洞就是,假设,我们写了一个class,这个class里面存有一些变量。当这个class被实例化了之后,在使用过程中里面的一些变量值发生了改变,之所以会产生反序列化漏洞是因为应用 ......
靶场 序列 漏洞 WebGoat

Openmp Runtime 库函数汇总(上)

在本篇文章当中主要给大家介绍了一些在 OpenMP 当中常用的动态库函数,这篇文章的动态库函数主要是关于并行域和线程状态的函数,在下篇文章当中我们主要是分析一些 OpenMP 当中的锁相关函数。希望大家有所收获! ......
函数 Runtime Openmp

Openmp Runtime 库函数汇总(下)——深入剖析锁🔒原理与实现

在本篇文章当中主要给大家分析了 OpenMP 当中两种主要的锁的实现,分别是 omp_lock_t 和 omp_nest_lock_t,一种是简单的锁实现,另外一种是可重入锁的实现。其实 critical 子句在 OpenMP 内部的也是利用上面的锁实现的。整个锁的实现还是非常复杂的,里面有很多耐人... ......
函数 原理 Runtime Openmp 128274