背景

最近几天升级置换了自己的群辉NAS硬盘,也藉由此开始混起了PT。
2020年在硬件上升级最大的就是:置换了4K显示器(也是我换的最满意的一个硬设之一),其实早就该这么搞了。

阅读全文 »

背景

本篇搭建设计到的相关资源如下:

  • 操作系统:CentOS 7.9
  • JDK: 1.8.0_211
  • Nexus私服版本:nexus-3.29.2-02

更新日志

  • 2025-04-12:补充升级迁移旧版本至最新版本:nexus-3.79.1-04步骤详情

Nexus介绍

Nexus 是Maven仓库管理器,如果我们使用Maven,我们可以从Maven中央仓库下载所需要的构件(artifact),但这通常没有公司这么干,一般都是在本地架设一个Maven仓库服务器,在代理远程仓库的同时维护本地仓库,以节省带宽和时间,Nexus就可以满足这样的需要。此外,它还提供了强大的仓库管理功能,构件搜索功能,它基于REST,友好的UI是一个extjs的REST客户端,它占用较少的内存,基于简单文件系统而非数据库。这些优点使其日趋成为最流行的Maven仓库管理器。
Nexus不是Maven的核心概念,它仅仅是一种衍生出来的特殊的Maven仓库。对于Maven来说,仓库只有两种:本地仓库和远程仓库。

Nexus私服特点

搭建私服后:本地仓库没有,再去私服下载,私服没有,再去中央仓库下载

  • 减少网络带宽流量
  • 加速Maven构建
  • 部署第三方构件
  • 提高稳定性、增强控制
  • 降低中央仓库的负载
阅读全文 »

调色相关

注:调色场景并不是绝对一定,掌握住要点,针对不同照片的具体展现形式,不同的调整才是关键所在。

青橙色调

  • 适合场景:
    • 白天和夜景的大部分场景
    • 画面中具备天空、大海等青蓝色元素,和肤色,灯光等橙色元素即可
  • 一种调整细节思路
    • HSL界面(主要关注色相饱和度):
      • 红色和黄色色相往橙色偏
      • 橙色色相(稍微)偏一点红色,饱和度提升。有人的话,橙色调整需要额外注意,因为橙色会改人物的肤色。
      • (如果有)树叶草坪等元素:色相往黄色偏,饱和度降低。
      • 青色和蓝色:色相往 中间偏 ,饱和度酌情提升
    • 校准页面(Camera RAW 和 Lightroom修改)
      • 红颜色右移,红颜色饱和度左移
      • 蓝颜色左移,蓝颜色饱和度右移
  • 二种调整细节思路
阅读全文 »

背景

JVM作为Java底层的核心,一直以来是我的短板,其底层等相关不甚了解。借此机会,通过这种方式学习,记录,分析&分享。
书中涉及代码调试案例,收录在learningjvm项目中,各看官有需要可以自行查阅。

书籍实录

第一章:走进JAVA

Java发展史

宏观上了解Java整个发展体系:

  • 1995年5月23日,Oak语言改名为Java,并且在SunWorld大会上正式发布Java1.0版本,并且提出“Write Once, Run Anyware”的口号。
  • 1996年1月23日,JDK1.0发布,代表技术包括:Java虚拟机、Applet、AWT等。
    阅读全文 »

课程实录

(01)Java代码是怎么运行的?

  • 从虚拟机视角来看,执行 Java 代码首先需要将它编译而成的 class 文件加载到 Java 虚拟机中。加载后的 Java 类会被存放于方法区(Method Area)中。实际运行时,虚拟机会执行方法区内的代码。
    Java 虚拟机会将栈细分为面向 Java 方法的 Java 方法栈,面向本地方法(用 C++ 写的 native 方法)的本地方法栈,以及存放各个线程执行位置的 PC 寄存器。
  • 在运行过程中,每当调用进入一个 Java 方法,Java 虚拟机会在当前线程的 Java 方法栈中生成一个栈帧,用以存放局部变量以及字节码的操作数。这个栈帧的大小是提前计算好的,而且 Java 虚拟机不要求栈帧在内存空间里连续分布。
  • 当退出当前执行的方法时,不管是正常返回还是异常返回,Java 虚拟机均会弹出当前线程的当前栈帧,并将之舍弃。
    在 HotSpot 里面,上述翻译过程有两种形式:
  • 第一种是解释执行,即逐条将字节码翻译成机器码并执行;
  • 第二种是即时编译(Just-In-Time compilation,JIT),即将一个方法中包含的所有字节码编译成机器码后再执行。
    !(HotSpot字节码解释执行与即时编译)[52d27346/AutoCapture_2020-07-12_195739.jpg]
    两者之间,前者的优势在于无需等待编译,而后者的优势在于实际运行速度更快。HotSpot默认采用混合模式,综合了解释执行和即时编译两者的优点。它会先解释执行字节码,而后将其中反复执行的热点代码,以方法为单位进行即时编译。

Java虚拟机的运行效率

HotSpot 采用了多种技术来提升启动性能以及峰值性能,刚刚提到的即时编译便是其中最重要的技术之一。即时编译建立在程序符合二八定律的假设上,也就是百分之二十的代码占据了百分之八十的计算资源。
对于占据大部分的 不常用的代码,我们无需耗费时间将其编译成机器码,而是采取解释执行的方式运行;另一方面,对于仅占据小部分的热点代码,我们则可以将其编译成机器码,以达到理想的运行速度。
注:综合编译,以优化达到理想的运行性能

为了满足不同用户场景的需要,HotSpot 内置了多个即时编译器:C1、C2 和 Graal。Graal 是 Java 10 正式引入的实验性即时编译器。

  • C1 又叫做 Client 编译器,面向的是对启动性能有要求的客户端 GUI 程序,采用的优化手段相对简单,因此编译时间较短。
  • C2 又叫做 Server 编译器,面向的是对峰值性能有要求的服务器端程序,采用的优化手段相对复杂,因此编译时间较长,但同时生成代码的执行效率较高。
    从 Java 7 开始,HotSpot 默认采用分层编译的方式:热点方法首先会被 C1 编译,而后热点方法中的热点会进一步被 C2 编译。

(03)Java虚拟机是如何加载Java类

(10)Java对象的内存布局

(11&12)垃圾回收

延伸阅读

额外实践

背景

本篇文章整理Sony 7M3K在摄影摄像中的一些拍摄设置技巧。多数技巧都来源B站或油管等UP主推荐,不排除后期个人设置心得。

配置整理

B站洪峰设置教程

源视频链接:https://www.bilibili.com/video/BV1R4411A7p4
该期视频中主要提到了HLG3、SLOG3、Cine4这三种模式拍摄设置技巧。其中:
Cine4 - 一般用在白天阴天模式下拍摄
HLG3 & SLOG3 - 主要用在明暗反差比较大,宽容度要去比较高的情况下使用。
其中SLOG3模式,拍摄人物时用的较多,这种视频样式较灰,后期调色较容易;HLG3主要用在白天,明暗度对比比较大场景。

Cine4图片配置设置

黑色等级 = +2
伽马 = Cine4
黑伽马 = (范围 = 宽, 等级 = +4)
膝点 = (模式 = 手动, 手动设置 = [Point = 80%, Slope = +2])
色彩模式 = Pro
饱和度 = -5
色相 = 0
色彩深度 = (R = +3, G = +1, B = -1, C = -4, M = -4, Y = +3)
细节 = -6

SLOG3图片配置设置

原生PP8

HLG3预设

PP10 - HLG3
黑色等级 = +5
伽马 = HLG3
黑伽马 = (范围 = 宽, 等级 = +4)
膝点 = (模式 = 手动, 手动设置 = [Point = 90%])
色彩模式 = BT. 2020
饱和度 = 0
色相 = +3
色彩深度 = (R = +1, G = +2, B = -2, C = 0, M = +2, Y = +2)
细节 = -6

三种模式曝光设置

Cine4无需过度曝光,正常曝光即可。
SLOG3一定要过度曝光设置
HLG3拍摄,正常曝光,无需过度曝光设置

延伸

前言

魔鬼经济学-揭示隐藏在表象之下的真实世界
FREAKONOMICS-A Rogue Economist Explorers the Hidden Side of Everything

书籍摘录

读后感

延伸

前言

本篇主要记录王争老师在极客时间算法课程中主要提到的核心要点。

课程纪实

复杂度分析方法

用课程中提到的一句话:复杂度分析是整个算法学习的精髓,只要掌握了它,数据结构和算法的内容基本上就掌握了一半。

如何分析与统计算法的执行效率和资源消耗

为什么需要复杂度分析?
  • 测试结果非常依赖测试环境:不同的硬件环境,测试的结果自然不同
  • 测试结果受数据规模的影响很大

因此需要一种不用具体的测试数据来测试,就可以粗略地估计算法的执行效率的方法。

阅读全文 »
0%