Linux
学习😁vim修改配置
退出vim
esc
保存退出
:wq
强制退出
:q!
Xshell
找到 ip addr
拿到ip地址 ens33 下面的东西
新建文件->配置文件
在xshell中需要输入用户名和密码
Linux常用命令
ls list 查看当前目录下的内容
pwd print work directory,查看当期那所在目录
touch [文件名] 如果文件不存在,新建文件
rm [文件名] 删除指定文件
rmdir [文件名] 删除文件夹
在执行Linux时,显示乱码,修改其编码模式。
默认语言为英语(美国)并使用UTF-8编码。 echo ‘LANG =”en_US.UTF-8”‘ >> /etc/profile
重新加载配置文件 source /etc/profile
命令使用技巧 Tab键 自动补全 使用上下键调出曾经使用过的命令 ctrl+l 实现清屏的效果
ls
-a 显示所有文件及其目录
-l 显 ...
Typora说明
快捷键ctrl+shift+k:代码块
ctrl+shift+飘号:代码段
ctrl+b:加粗
ctrl+shift+q:引用
ctrl+shift+[:有序列表
win+句号:调出表情框
Xmind说明
Xmind这个软件是真的好用啊,适合知识梳理
面试题1
介绍大佬背景,44+ offer
美团优选一面1.项目问题2、线程池工作流程
线程池就是能够较好管理线程的池子。频繁的创建线程很消耗系统资源,而线程池它能够避免线程的频繁创建和销毁。在线程池中的线程执行完一个线程任务后,当前线程不会立即销毁,它会在线程池中存活一段时间,若在这段时间,线程池中提交了新的任务,就可以直接拿去线程池中的线程,实现了线程的复用。
概念
描述
核心线程池(Core Pool)
在线程池中始终保持存活的线程数量。即使它们处于空闲状态,也不会被回收。
任务队列(Task Queue)
用于存储等待执行的任务。
最大线程池大小(Maximum Pool Size)
线程池中允许存在的最大线程数。当任务队列已满时,新任务会创建新的线程来处理,但不会超过最大线程池大小。
线程存活时间(Keep Alive Time)
当线程池中的线程数量超过核心线程数时,多余的线程在空闲一段时间后会被回收。
3、线程池实现原理线程池实现原理包括连接池、内存池等:
连接池:缓存数据库连接,避免频繁创建和销毁,提高数据库访问性能。
内存池:预分配一块内存池, ...
next
四级备考计划听力对于一些听力基础不好的同学,
下面是“从零开始”的听力建立流程:
先看听力脚本。
如果基本都能看懂,就直接开始听。
如果生词还很多,
就先把每个词都查出来,搞懂意思之后再听。
真题听力原文单曲循环。
看脚本,进行脚本的跟读。
一句一暂停,然后逐字逐句读。
“看脚本”“循环听”“多跟读”这三板斧下来,没有搞不定的四六级听力。
这么下来练个七八套题,听力里出现的内容基本上都建立了听觉联系,上了考场就可以轻松拿捏四六级听力了。
我猜,很少有人把听力说得这么重要,
但它就是这么重要。
重视听力,是短期通过英语四级考试的捷径。
阅读
真题卷子里遇到任何“生词”——只要意思不确定,或者刚看过又忘了,就都算生词。
在手机上的app里查找这个词,查到这个词后,把该词的中文意思写到真题相应的文段旁边,专门开一个单词收藏夹添加收藏。
记住,边读题边查,读到哪查到哪,不要等到做完题再统一查!
一套真题写下来,你需要做的,仅仅是把生词从app里查出,收藏标记,再把中文解释抄在阅读题中生词的旁边。
用一个周的晚自习时间或是一周末的自习时间,这样处理3、4套真题,你会发现你的查找 ...
域名配置
域名碎碎念首先,我guthub学生包搞了一个.me后缀的域名,需要备案,死活都连不上公网IP,
然后放弃了,买了一个阿里云的域名,DNS解析一下,就可以访问了,不过不要着急哦
需要等一会的
域名列表-状态正常
域名解析
什么是DNS解析就是服务器只有个公网IP,你有一个域名,如何把域名跟IP联系起来,让别人访问你的域名就行了,这就是DNS的作用。
备案买完域名之后,需要等三天才可以备案。
接下来就是备案了
2023-11-24日域名备案成功,代码小站正式上线。😋
计划
搞几个二级域名,然后多布置几个网站
进行DNS解析即可。
Need-Skill
Plan没事去YouTube上面找找优质教程看看
mysql
RabbitMQ
Docker https://www.youtube.com/watch?v=Ozb9mZg7MVM
幂等性
spring源码
简历
规划
http://t.csdnimg.cn/8dFLe
RPC面经烂大街的 RPC 项目,如何和字节面试官聊出花儿来? - 知乎 (zhihu.com)
项目itwanger/paicoding: ⭐️一款好用又强大的开源社区,基于 Spring Boot、MyBatis-Plus、MySQL、Redis、ElasticSearch、MongoDB、Docker、RabbitMQ 等主流技术栈,附详细教程,包括Java、Spring、MySQL、Redis、微服务&分布式、消息队列等核心知识点。学编程,就上技术派😁。 (github.com)
项目学习论坛
技术派 (paicoding.com)
杂项快捷键返回上一个文件:ctrl+alt+<-
zookeeper
✍内容zookeeper的搭建由于至少要三个服务器,只能搭建个伪集群了
简单搭建
将Zookeeper解压 ,建立/usr/local/zookeeper目录,将解压后的Zookeeper复制到以下三个目录,都一样。
下面拿一个说例子,其它的都一样2. 创建data目录 ,并且将 conf下zoo_sample.cfg文件改名为zoo.cfg3. 配置每一个Zookeeper 的配置文件zoo.cfg
clientPort=2182dataDir=/usr/local/src/zookeeper/zookeeper-1/data
配置集群echo 1 >/usr/local/src/zookeeper/zookeeper-1/data/myidecho 2 >/usr/local/src/zookeeper/zookeeper-2/data/myidecho 3 >/usr/local/src/zookeeper/zookeeper-3/data/myid
配置IP列表,写在zoo.cfg的最后面,192.168.58.150是你的 ...
RPC知识杂项
Client包扫描器的主要作用是在运行时动态地扫描指定的包路径,发现符合条件的类,并将其注册为相应的组件,例如 Spring Bean。这样,开发人员无需手动在配置文件中一个一个地列举类名,而是通过注解或其他条件,让包扫描器自动完成类的注册。
具体作用包括:
自动发现组件: 包扫描器可以自动发现指定包路径下的类,并根据一定的条件(例如注解类型)将其识别为特定类型的组件,如 Spring Bean。
简化配置: 包扫描器能够减少手动配置的工作,提高开发效率。开发者只需关注指定包下的类符合哪些条件,而无需手动在配置文件中列举这些类。
灵活性和可维护性: 通过包扫描器,系统具有更好的灵活性,因为新增、删除、修改符合条件的类都不需要修改配置文件,只需更新代码即可。这样的设计也增强了系统的可维护性。
适应变化: 包扫描器使得系统更好地适应变化。新的业务组件可以通过添加新的类,并符合指定条件,实现自动注册。
在 Spring 框架中,@ComponentScan 注解就是一个常用的包扫描器。自定义包扫描器通常会继承自 Spring 框架提供的相关类,通过重写或定制化相关方法,实现特定需求的包扫 ...
System Design
System Design 101Explain complex systems using visuals and simple terms.
Whether you’re preparing for a System Design Interview or you simply want to understand how systems work beneath the surface, we hope this repository will help you achieve that.
Table of Contents
Communication protocols
REST API vs. GraphQL
How does gRPC work?
What is a webhook?
How to improve API performance?
HTTP 1.0 -> HTTP 1.1 -> HTTP 2.0 -> HTTP 3.0 (QUIC)
SOAP vs REST vs GraphQL vs RPC
Code First vs. API Fir ...