Draymonder

Results 100 issues of Draymonder

- 使用`assert` https://stackoverflow.com/questions/3018683/what-does-the-assert-keyword-do - VM参数要用上`-enableassertions`,`assert`才会生效 - java-assert https://www.baeldung.com/java-assert

java

简易IOC容器实现: https://github.com/Draymonders/IoC-Implement 四种定义Bean的注解 - Controller - Service - Repository - Component

java

跟着 @hanggegreat 一起学习 && 实战 简单的IM

# 检索技术核心 检索, 研究的是如何将所需的数据高效的取出来。 - 基础技术 - 进阶实战 - 系统案例

todo
middleware

留坑待补.. 组件的分布式事务 - kafka - mysql

todo
middleware

# java - JVM 常见线上问题 → CPU 100%、内存泄露 问题排查 https://www.cnblogs.com/youzhibing/p/13599874.html

java

# origin 前不久刚讨论过 **分布式id** 的生成方案 我们用一个long类型来表示一个id long有64位, 由于Java没有无符号long, 所以最高位我们不用,还剩63位,那么我们就可以按照以下大概情况去generate id - 时间(距系统第一次上线的时间) - 机器id(根据 region, container, worker name, ) - id自增 因为同一个机器id,每1秒可能会有很大的并发,因此这里的id自增是按照毫秒去划分的 # reference - https://github.com/weiyinfu/wolf/blob/wei/wiredwolf/snow_flake.py

linux

jenkins 是 ci/cd必不可少的一个工具 - 安装 https://www.jenkins.io/zh/doc/book/installing/ - docker版jenkins的安装及自动构建 https://blog.csdn.net/boling_cavalry/article/details/78942408 - 向GitHub提交代码时触发Jenkins自动构建 https://blog.csdn.net/boling_cavalry/article/details/78943061

doing

# Origin 看到了`Runnable`, `RunnableFuture`源码 ```java public interface Runnable { public abstract void run(); } public interface RunnableFuture extends Runnable, Future { void run(); } ``` 普通声明的方法和abstract的方法有什么区别呢? 其实无论接口和接口中的方法如何声明,都是抽象的。即使在声明接口时,并没有用abstract修饰,但是在编译的时候编译器会自动加上abstract。所以根本没有实质意义上的区分,只不过在写法上有所不同而已。接口中方法都是抽象的,这个无论用不用修饰符abstract都是**一样**的。 # Reference https://blog.csdn.net/xw13106209/article/details/6926265

java

- reference link: https://lawrenceli.me/blog/load-balancing 基于 OSI 模型, - 三层负载均衡的例子,DNS 解析,同一个域名可以解析到多个 IP 上,但轮询策略不在自己手上 - 四层负载均衡其实是在三层基础上加上了端口,也就是通过 IP + Port 的形式进行转发 - 七层负载均衡在四层的基础上考虑应用的 URL 等方式做转发

network