Java 查漏补缺之 jvm

JVM 设计者将 JVM 内存结构划分为多个区域,每个内存区域有各自的用途,负责存储各自的数据类型。有些内存区生命周期和 JVM 一致,也有些和线程生命周期一致,伴随着诞生,伴随着消亡。 Java 源代码文件会被编译为字节码(.class),然后由 JVM 中类加载器加载类字节码,加载完毕后,交给 JVM 执行引擎,整个程序郭晨中 JVM 会使用一段内存空间来存储执行过程中需要用到的数据和信息,这段空间一般被称为 Runtime Data Area,也就是 JVM 内存。 线程共享内存区 允许被所有线程共享访问的内存区,包括堆,方法区,运行时常量池 Read more ...

2018-10-22 java , jvm , gc

Go 语言学习笔记 3:基础类型

和大多数强类型语言一样,Go 也有自己基本的类型系统。Go 语言的类型大致可以分为四大类: basic types 基础类型(basic types)包括 numbers,strings,booleans aggregate types 聚合类型(aggregate types)包括 arrays , structs reference types 引用类型(reference types) 包括不同组,包括 pointers , slices, maps, functions, channels ,他们都是程序变量或者状态的引用 Read more ...

2018-10-19 golang , programming

服务器监控整理

手上的 VPS 多余一台的时候总是想着通过一个统一的界面来监控管理。 需要监控的项 VPS 及服务在线时间 从某地到该 VPS 的 ping 值稳定程度 [[smokeping]] 该 VPS 各项资源的使用情况,包括 CPU,内存,IO,网络带宽使用 之前也有分享过两个很不错的服务器监控程序 nodequery 和 netdata。之后又陆陆续续发现了其他一些不错的监控程序,所以就顺手整理一下。 商业方案,也就是提供服务在线监控,并且如果超过一定使用量向用户收取一定费用的服务: [[SyAgent]] [[EHEH] Read more ...

2018-10-18 server , monitor , collection , linux

由 WebM 格式学习常见的容器和编码格式

因为使用 YouTube 所以接触到了 WebM 格式,这个格式 Google 开源的一个媒体容器格式,常见的文件后缀名是 .webm,他设计的目标是为了给 HTML5 提供视频和音频。Google 发起的 WebM 项目还有一个姊妹项目 WebP 是提供图像编码的。BSD 协议开源。1 编码格式和容器格式 我们平常所见的媒体格式,有 avi,mp3,mp4,mkv 等等,但是这些都是媒体文件容器的扩展,WikiPedia 有一份比较完整的媒体容器列表,在这份列表中我们也能看到其实 webm 格式就是 Matroska 容器的一层“皮”,mkv 格式也 Read more ...

2018-10-17 webm , youtube , google , video , ffmpeg , mp4

读万字访谈后感:软硬件公司的差别

9 月份一次出门在路上看了这篇万字采访,这篇文章主要以 Osterloh (Google 硬件部门 Leader)为脉络梳理了 Google 这几年在 硬件方面的尝试。文章中的观点并不是那么直白,但是看完却有一股气憋在心中不得不抒。作为用 Google 产品这么多年的忠实用户,Galaxy Nexus,Nexus 6 也是陪我度过了很多年,而 Google Glass 当年如何的红火,但是不得不说在 Google 在硬件确实不如其软件行业的发展,现在音箱被 Amazon Echo 压着打,手机不管是 Nexus 还是 Pixel 丝毫无法动摇 iPhon Read more ...

2018-10-16 google , apple , amazon , software , hardware , android

Jupyter 简单使用

Jupyter 是一个为了支持多语言交互式编程的项目, Jupyter Notebook 是一个开源的网络程序,允许用户创建和分享包含代码,视图,方程式,文本的文档。 Notebook documents 是应用产生的文档 Jupyter Notebook App 是一个服务端应用,可以让用户在浏览器编辑和运行 notebook documents Notebook Kernel 是计算引擎,执行 Notebook document 中的代码 Dashboard 控制面板 Jupyter 支持超过 40 中编程语言,可以轻松通过各 Read more ...

2018-10-13 jupyter , python

GraphQL 初识

在开发服务端接口的时候接触到 GraphQL 这个名词,故而有了这篇文章。因为初始,所以整理过程难免有些错误和疏漏,请留言告知。在我们面对一个新的名词,或者一门新的技术时,了解的过程可以分成这么几部分,他是什么,他解决了什么问题,他和目前同类型的技术相比优势在哪里,这样几个部分去看也就能够比较粗略,但是快速的了解一样新东西了。所以这篇文章的组织结构也以这样的方式进行。 GraphQL 是什么 GraphQL,很容易让人想起来 SQL,其实也很类似,可以理解为是一门查询语句,但和 SQL 不同的是,SQL 是查询关系型数据库,而 GraphQL 是查询 Read more ...

2018-10-12 graphql , restful , api , github , facebook

MySQL 配置优化

开启慢查询日志 查看慢查询日志 show variables like '%slow_query_log%'; set global slow_query_log=1; 使用上述方式修改,重启 MySQL 后修改丢失,如果要永久生效,需要修改 my.cnf 文件 slow_query_log = 1 slow_query_log_file = /tmp/mysql_slow.log Read more ...

2018-10-11 mysql , sql

Go 语言学习笔记 2:基本结构

和大部分编程语言一样,Go 也有很多内置关键字,下面这些关键字和语法相关,不能用于定义。 break case chan const continue default defer else fallthrough for func go goto if import interface map package range return select struct switch type var 三大类预定义的关键字 分类 关键字 Constants: Read more ...

2018-10-10 go-lang , google , programming

go 语言学习笔记 1:基本介绍和使用

Go 语言特性: 静态语言 函数支持多返回值 错误处理机制 支持语言并发 面向对象:使用类型,组合,接口来实现面向对象思想 反射 CGO,可以调用 C 语言实现的模块 自动垃圾回收 静态编译 交叉编译 BSD 开源协议 并发 Go 语言在语言级别支持[[Coroutine|协程]],叫 [[Goroutine]]。Go 语言标准库提供的所有系统调用 (syscall) 操作,当然也包括所有同步 IO 操作,都会出让 CPU 给其他 goroutine Go 语言推荐采用“Erlang 风格的并发模型” Read more ...

2018-10-09 golang , google , java , programming

最近文章

  • Zig 语言编写的开源终端 Ghostty 在 Linux 上我使用 [[Guake]],到后来换成 macOS 之后使用 Kitty,直到前段时间更换成 Warp,但是没想到这几天又发现一款不错的终端 Ghostty。没查不知道,但是一查之后才发现 Ghostty 背后的作者的故事是多么精彩,并且 Ghostty 使用的 Zig 语言也是我第一次听说。
  • 关于在 Docker 容器中如何优雅关闭 Java 应用的记录 这两天遇到一个和 Docker 运行相关的问题,我们使用 Azure App Service 来运行服务,但是每次重启服务的时候,发现不会出发 Javalin 的 stop,感觉 Java 进程没有接受到 Docker 容器停机的信号,然后就被系统杀死了,所以就这个问题,仔细地研究了一下 Docker 运行以及如何优雅地关闭 Docker 容器中的 Java 进程。
  • IBKR 使用教程系列之共同基金 ETF Replicator 这两天在 IBKR 上买了一点按月分红的 ETF,然后在邮箱中就收到了 IBKR 发过来的建议邮件,说 IB 还提供了一个共同基金的工具可以来寻找类似表现,但是费用更低的其他 ETF,这就是一款 ETF 发掘工具。
  • Google Stitch:AI 驱动的 UI 设计工具让创意快速成为现实 在昨天 2025 年的 Google I/O 大会上 Google 一口气发布了超多的 AI 工具集,其中包括了一款叫做 Stitch 的 AI 工具,它可以快速帮助设计师和开发者将 UI 设计理念变成可实际使用的设计稿,生成设计稿之后可以直接导入到 Figma,或者直接导出成前端代码。所以本文就具体来介绍一下 Stitch。
  • NameCrane 邮件托管服务体验:超大存储空间的终身邮箱解决方案 去年黑五以及今年年初逛论坛的时候偶然间发现一款邮件托管服务 NameCrane,我自己一直都有发邮件的需求,我自己也有维护邮件服务器,但是看到有合理的邮件托管服务还是会忍不住多看一下,于是我就被 NameCrane 提供的终身套餐吸引住了。