Function 计算

函数计算,阿里云叫做 Function Compute,Aws 叫做 lambda 函数,GCP 叫做 Cloud Functions,各家都有各家的产品。就如同 AWS 页面介绍的那样,函数计算是一个无服务计算,可以用代码来响应事件并自动管理底层计算资源,比如通过 Amazon Gate API 发送 HTTP 请求,在 S3 桶中修改对象等等。 Serverless 抽象的 Serverless 很难概括,不过 Serverless 也经常被人叫做 Function as a Server(FaaS),这就比较好理解了,比如最常见的存储服务,原来的 Read more ...

2019-03-26 function-compute , serverless , gcp , aws

使用 Git worktree 将同一个项目分裂成多个本地目录

在偶然逛 StackOverflow 的时候看到一个提问,能不能在同一个 repo 中同时有两份代码,并且可以保持两份相似但不是完全相同的代码并行开发?虽然对其需求有些好奇和疑惑 ,但也关注了一下下方的回答。 这个时候我知道了 git 原来还有一个命令叫做 git worktree 这是 Git 2.15 版本引入的新概念。我们都知道一个正常的 git workflow 可能就是从 master 拉出新分支 feature 进行功能开发,如果遇到有紧急 bug,那么从 master 拉出 hotfix 分支紧急修复在合并。这是一个比较常规的工作流,那么 Read more ...

2019-03-21 git , git-worktree , scm , version-control

CPU 负载

之前在 Openwrt 负载 中也曾经谈到过 CPU 的负载,通过 top, uptime 等等命令都可以非常快速的查询当前 CPU 的负载。 CPU 的 load average(平均负载)指的是一段时间内正在使用和等待使用 CPU 的平均任务数。 还有一个判断 CPU 的指标是 CPU 的利用率。同样使用 top 命令也能够查到。但是并不意味着负载高就一定 CPU 利用率高。 如果用电话亭来表示 CPU,把等待打电话的人比作 CPU 需要处理的任务的话,那么假设一队人排队打电话,每个人只能打 1 分钟,时间到了必须重新排队,那么随着时间变化,排 Read more ...

2019-03-20 cpu , load , linux , java

Jenkins 使用

这篇文章主要记录一下 Jenkins Pipeline Syntax 的使用。 Pipeline Jenkins Pipeline 是什么,简单的来说就是一组定义好的任务,相互连接在一起串行或者并行的来执行,比如非常常见的 build,test,deploy 这样需要重复频繁进行的工作。 更加具体地来说就是 Jenkins 定义了一组非常强大的扩展插件用来支持 CI/CD ,用户可以扩展这些内容来实现自己的内容。这么定义呢?那就是本文的重点,Jenkins 允许用户用一种近似伪代码的形式来编写自己的自定义任务,这个特殊的语法叫做 Pipeline D Read more ...

2019-03-13 jenkins , ci-cd , program

SD 卡种类和标示

如果注意观察 SD 卡面上的内容就会发现上面有很多标签,除开 SD 的品牌,可能还会看见,micro,I, U,等等标识,这些标识都不是厂家随意标注的,每一个都有其特殊的含义。了解这些特殊的标示之后对 SD 卡的选购也有一定的便捷。 microSD vs SD 卡 microSD 卡和 SD 卡的区别其实不用太多交代,基本上从大小就能看出区别。因为体积的区别,所以 microSD 卡经常用于便携,小型设备,比如手机,行车记录仪,运动相机等设备中,而大的 SD 卡则会用于单反等设备。 SD vs SDHC vs SDXC SD 卡,Secure Read more ...

2019-03-10 sdcard , sd , tf

jks pem cer pfx 不同种类的证书

通常在安全级别较高的场景经常需要对通信信息进行加密传输,有一种情况就是非对称加密,将信息使用对方提供的公钥加密传输,然后对方接收到之后使用私钥解密。今天在对接时对方发送了一个压缩包,其中包含了 SSL 不同类型的证书,包括了 jks, pem, cer, pfx 等等文件,现在就来了解一下。 jks jks 全称 Java KeyStore ,是 Java 的 keytools 证书工具支持的证书私钥格式。jks 包含了公钥和私钥,可以通过 keytool 工具来将公钥和私钥导出。因为包含了私钥,所以 jks 文件通常通过一个密码来加以保护。一般用于 Read more ...

2019-03-02 ssl , jks , pem , cer , pfx , certificate

Spring 中的 @Transactional 注解

Spring 中有两种不同方式实现事务 —- annotations 和 AOP。 配置事务 在 Spring 3.1 及以后可以使用 @EnableTransactionManagement 注解 1 3.1 之前可以使用 XML 配置,注意几个 tx 的命名空间: <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:contex Read more ...

2019-03-01 spring , spring-mvc , spring-boot

Maven 插件学习之: shade 插件

maven shade plugin 插件允许把工程使用到的依赖打包到一个 uber-jar(单一 jar 包) 中并隐藏(重命名)起来。 Shade Plugin 绑定到 package 生命周期。 使用 shade 常见的场景: 对包名进行重命名 生成单一 jar 包 使用 <project> ... <build> <plugins> <plugin> <groupId>org.apache.maven.plugins< Read more ...

2019-02-27 maven , maven-plugin , build , java

Cinnamon 桌面下 Applets 推荐

使用 Linux Mint 一些时候,真的发现有些功能和配置真的非常舒服,以前也写过一篇文章说的是 Cinnamon 桌面自带的 nemo 文件管理器,这可能是我用过的所有系统中自带文件管理器让我用的最舒服的了。所以这里再总结一篇 Cinnamon 下好用的 applets 。 Cinnamon 下所有的 applets 都存放在 ~/.local/share/cinnamon/applets/ 目录下,如果有安装包直接移动到该目录下即可。 Desktop Capture 一句话简单的说就是支持 Screenshot 和 Recorder,录屏和录制 Read more ...

2019-02-22 cinnamon , linux-mint , applets , desktop , gui

maven 相关的错误

deploy 遇到 400 错误 错误日志 [ERROR] Failed to execute goal org.apache.maven.plugins:maven-deploy-plugin:2.7:deploy (default-deploy) on project xxxx: Failed to deploy artifacts: Could not transfer artifact xxx:pom:1.0.1 from/to archiva.internal (http://nexus.xxx/nexus/content/reposito Read more ...

2019-02-20 maven , error

最近文章

  • 我购买了一个 DJI Mic Mini 最近为了提升移动拍摄时的收音质量,我入手了 DJI Mic Mini。虽然大疆提供了带充电盒的套装,但我只购买了单机版本(发射器+接收器,2 TX 1 RX 版本),因为对于我日常的拍摄需求来说,本体的续航已经完全足够了。
  • Auto Claude:Vibe Kanban 的终极形态?让 AI 并行开发的“指挥中心”来了 在上一篇文章 《Vibe Kanban:当 AI 开始并行协作,我们的开发方式变了》 中,我分享了一种利用 [[Vibe Kanban]] 和 AI Agent 实现并行开发的工作流理念。我们可以利用 Vibe Kanban 来统一管理多个并行任务。
  • Vibe Kanban:当 AI 开始并行协作,我们的开发方式变了 在我之前的视频当中,我介绍过在 Claude Code 中使用子代理(Subagents)机制和 Git Worktree 来实现并行工作流。我们可以创建子代理来并行执行任务,但是 Subagents 的配置和使用都还需要我们在 Claude Code 中等待。那如果我们有完全独立的两个任务要执行呢,我们可以开两个 Claude Code 分别在两个 Claude Code 中提交任务,然后让 Claude Code 完成。此时我们依然会遇到一些问题,比如说两个 Claude Code 的代码可能产生冲突。并且如果我们有超过两个独立任务时,我们在管理 Claude Code 的成本就会指数级上升。
  • 终于还是入手了:Insta360 Go Ultra 初体验 每次想要拍摄,我得从口袋掏出手机,解锁,打开相机应用,切换到视频模式,然后举着它——这个过程在很多稍纵即逝的生活瞬间面前,显得太繁琐了。而且,当你举着手机拍摄时,你其实是在”观察”生活,而不是在”经历”生活。手机太”重”了,不是物理重量,而是心理负担。所以我想使用一个工具,可以帮我记录生活,但又不需要我刻意去”操作”它。于是,在观望了许久之后,我终于入手了这台 Insta360 Go Ultra。在 11.11 在天猫 2350 下单了 Insta360 Go Ultra,后来价格保护还退还了 260 块。
  • 奥卡姆剃刀:为何简单的往往就是最好的 最近我在整理我的 Obsidian 笔记库时,发现了一个有趣的现象。