Spring Cloud 微服务项目构建

本文用于记录搭建基于Spring Cloud的微服务项目的架构骨架。基础构建工具使用Gradle/KotlinSDL,Java版本为11,微服务框架Spring Cloud。项目构建只考虑统一语言、统一框架的前提下构建,因此所有的微服务代码都置于同一个git仓库中,因此需要启用多模块的Gradle项目。

Monad小记

Monad是函数式编程中的一个概念,对于函数式编程具有很重要的作用:实现纯函数无能为力的IO处理、在函数式编程中实现命令式编程。学习Monad主要的障碍是数学理论,其名称来源于范畴论中的一种数学结构。实际上函数式编程语言中的Monad也是根据这一结构来设计的。本文不展开讨论Monad的数学定义,而是讨论Monad在函数式编程语言Haskell中的定义和应用。

定量投资分析基础知识

本文主要摘录自CFA定量投资分析一书,如果文中一些概念没有进一步讨论,请查阅此书。

货币的时间价值

我们进行投资的时候,往往会面临处理一系列不同时间点的现金流的处理。人们认为对于给定一笔数量的钱,越早收到,其价值越高。因此,可以判定一定数量的货币,在不同时间点,其价值是不同的,一般来说,时间点越早的货币价值越高。可以说,货币具有时间价值

制作最小化的Docker镜像

最近更新Docker知识发现了一个新的Linux发行版Alpine Linux,这个发行版仅有几M大小,非常适合作为Docker容器的基础环境。DockerHub上主流的镜像纷纷推出Alpine版本的镜像,由此我决定尝试一下如何制作最小的Docker镜像。

Docker减少大小有以下几种思路: