摘要:
时间稍纵即逝,不知不觉已经来到2024,age add one again。 2023 年是煎熬与困难的一年,也是幸运的一年。 2023年经历了好多人生的第一次,那些场景不会随着岁月的洗礼而模糊,将会是脑海中最深刻的回忆。2024 年,好好对待自己遇到的人,做好一个大男孩该做的事, 2023年小结: 阅读全文
摘要:
时间真快。转眼2023 了。 对2022 简单做个回顾,对2023 简单做个计划。 2022年小结: 1. 学习了k8s、kubesphere 等相关。 同时对k8s 相关概念以及其对容器编排有了初步的认识。 给一个k8s 环境,可以大概查到其内部相关的资源等信息。 2. 学习了kafka、rock 阅读全文
摘要:
2021年很快的过去了,这一年发生了一些不少的事情,也明白了一些事情。 2021年工作方面查看了一些框架的源码,包括spring、springmvc、springcloud、netty、mybatis、shiro、xxl-job 等框架源码,理解程度80%吧。 通过阅读源码,大致了解到每个框架的设计 阅读全文
摘要:
2020年浑浑噩噩的过去了,一年里自己也接触了一些知识。当然也欠缺许多东西。 20年自己学习了SpringCloud全家桶,包括Eureka注册中心、Ribbon负载均衡、Openfeign远程服务调用、Hystrix服务熔断以及降级、Gateway服务网关、Sleuth链路追踪等相关组件;也学习了 阅读全文
摘要:
2019年过去了,自己毕业一年半了,2019年自己也学到了一些东西,当然也欠缺好多东西。 现在回顾一下自己2019年学到的东西以及2020年计划学习的东西。 2019年自己看了一本书,《Java与模式》,同时结合<<大话设计模式>>进行学习设计模式。自己看完之后还是非常有收获的。了解到:(1)创建型 阅读全文
摘要:
2018年过去了,自己也毕业半年了,2018年自己也学到了一些东西,当然也欠缺好多东西。毕业半年了,自己在实际工作中更多的是做一些基本的CRUD,没有什么特别复杂性的工作,但是也学到了很多东西。更多的是增强了自己的思维逻辑能力,在写代码的时候可以想到各种可能出现的异常情况,也接触了很多的工具包的使用 阅读全文
摘要:
1、简介 jetcache 是阿里开源的一个缓存框架,支持像guava的cache、caffeine的Cache 用法,也可以集成springboot,像spring的@Cache 注解一样进行使用。 jetcache的缓存类似于map,提供了get、put、putAll、computeIf 阅读全文
摘要:
1. nacos 服务端源码启动 资源信息: 操作系统:mac JDK: 8 nacos: 1.1.4 (2.2.1 版本需要protobuf, 插件比较麻烦就放弃了) 下载项目 选择 1.1.4 版本 mvn 编译所有项目 创建数据库:nacos/distribution/conf/nacos-m 阅读全文
摘要:
0. 数据准备 1. 创建索引 curl -X PUT -H 'Content-Type:application/json' -d '{"settings":{"index":{"number_of_shards":2,"number_of_replicas":0}},"mappings":{"pr 阅读全文
摘要:
在分布式系统中,数据存储有两种,一种是共用一个持久化数据库,这种自带一致性;一种是数据在内存中,需要自己用一定方案保证集群中多节点数据一致性。 下面讨论的针对的是内存中数据在集群中的同步。 1. CAP 理论 CAP定理主要关注的是分布式系统中的数据一致性、可用性和分区容错性,特别是在分布式集群 阅读全文
摘要:
主要分析几个问题: 主分片如何确定的:比如3分片2副本,实际会有3*(2+1) = 9个分片,主节点创建的时候会根据一定规则分到不同节点,比如同一分片ID不能在同一节点等规则。 写入数据中如何进行数据同步: 写到主分片所在的节点,主分片所在节点在同步到副本分片所在节点 查询是如何进行的,多个分片如何 阅读全文
摘要:
通过这篇文章,了解ES 如何源码启动、如何定位对应请求的实现类。 1. 准备环境 Jdk: 17(后期经过验证发现,编译需要17,运行的时候可以用jdk8) Es: 7.17 IDEA: 2024.1 Gradle: 8.7 安装jdk、idea 下载es 源码: (我从github 下载的7.17 阅读全文
摘要:
实现制作一个springboot 的镜像,并且可以传递环境变量实现动态JVM参数和端口。 0. 准备 & cmd、entrypoint 区别 1. 准备 springboot 项目 一个简单的springboot 项目,默认启动8001 端口,里面只有一个接口。 xxx % curl localho 阅读全文
摘要:
0. Springboot Run 方法启动 启动方式: @SpringBootApplication @MapperScan("com.mysiteforme.admin.dao") public class MysiteformeApplication extends SpringBootSer 阅读全文
摘要:
0. 简介 Portainer是一个可视化的容器镜像的图形管理工具,利用Portainer可以轻松构建,管理和维护Docker环境。 而且完全免费,基于容器化的安装方式,方便高效部署。 且支持多种docker 编排方式,包括单机、dockerswarm、k8s等。 1. 安装 官网:http 阅读全文
摘要:
google的event 事件机制可以用于解耦,类似于spring的事件机制,可以同步也可以异步。 定时事件(类型随意,guava 调度的时候会根据对应的类型调对应的handler) package google.event; import lombok.AllArgsConstructor; 阅读全文