后端
学习《框架思维》的第三天
今天继续学习《框架思维》,前面我们学习了界定问题的三种方法:准确地秒速问题,明确问题的构成要素,探究问题的本质。今天我们学习第四种方法:显性化问题隐含的假设。
一,显性问题隐含的环境假设,
二,显性问题隐含的时间假设
三,显性化理论/工具的应用前提和边界
显性化问题隐含的假设是一种威力巨大的界定问题的方法,特别有助于我们发现问题不缜密的部分,以及拓宽分析问题的思路。
从零开始的软路由之爱快虚拟机搭建openwrt
缘起
上篇文章我们介绍了爱快软路由的搭建方法,成功了实现了软路由的初级布置——能上网了。接下来就是搭建双软路由中的另一个openwrt了,上期介绍了爱快的特点,主要是用来多拨,分流,流控等操作,在这些方面爱快上手简单且运行稳定。而往往我们装软路由不仅仅只是用于这些基础功能,我们还需要些许个性化的需求,openwrt就能很好的满足这些需求,openwrt是个开源项目,发展了有十多年了,各种稀奇古怪的
mysql 主从配置
核心概念:
主服务器(Master):负责处理客户端的写操作,并将数据更改记录到二进制日志(binlog)中。
从服务器(Slave):负责读取主服务器的二进制日志,并在本地执行这些更改,以保持数据同步。
工作
Java 过滤器和拦截器
过滤器
概念:
滤器位于客户端和web应用程序之间,用于检查和修改两者之间流过的请求;
在请求到达Servlet/JSP之前,过滤器截获请求;
作用:在客户端的请求访问后端资源之前,拦截这些请求(添加处理)。
Filter接口是过滤器类必须实现的接口,该接口中有三个方法:
init(FilterConfig filterConfig)
该方法是对filter对象进行初始化的方法,仅在容器初始化fi
LeetCode #1123 Lowest Common Ancestor of Deepest Leaves 最深叶节点的最近公共祖先
1123 Lowest Common Ancestor of Deepest Leaves 最深叶节点的最近公共祖先
Description:
Given the root of a binary tree, return the lowest common ancestor of its deepest leaves.
Recall that:
The node of a binary tree
一图了解ConcurrentHashMap底层原理
底层结构图.png
1、ConcurrentHashMap底层数据结构是一个数组table
2、table数组上挂着单向链表或红黑树
3、new ConcurrentHashMap();如果没有指定长度的话,默认是16,并且数组长度必须是2的n次幂,若自定义初始化的长度不是2的n次幂,那么在初始化数组时,会吧数组长度设置为大于自定义长度的最近的2的n次幂。(如:自定义长度为7,那么实际
KingbaseES数据库:KingbaseES 面向应用程序的 SQL 开发教程
KingbaseES数据库:KingbaseES 面向应用程序的 SQL 开发教程
KingbaseES数据库:KingbaseES 面向应用程序的 SQL 开发教程,在数据库应用开发中,SQL作为与数据库交互的核心语言,其编写质量直接决定了应用程序的性能、数据完整性与可维护性。KingbaseES作为高度兼容SQL标准且
20230401--RHEL/Rocky/AlmaLinux8显示内存低于实际硬件内存
由于RHEL/CentOS7在2024年6月30日将EOL(End Of Life,结束生命周期),最近陆续在将生产上的服务的OS升级迁移到RHEL/AlmaLinux8,但是陆续发现原本用相同的资源的服务器经常出现SWAP不足、杀毒软件ClamAV进程因内存而被Kill等告警。
今天迁移一个测试环境的Web应用,参考原来服务申请了一个1C1G(1024M)的服务器,安装AlmaLinux8.7后
Java异步任务编排—CompletableFuture(二)
CompletableFuture API
默认情况下CompletableFuture会使用公共的ForkJoinPool线程池,这个线程池默认创建的线程数是 CPU 的核数(也可以通过 JVM option:-Djava.util.concurrent.ForkJoinPool.common.parallelism 来设置ForkJoinPool线程池的线程数)。如果所有Completabl
