先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7
深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年最新Web前端全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上前端开发知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新
如果你需要这些资料,可以添加V获取:vip1024c (备注前端)
正文
replication_factor: 1
final_sleep: 0s
chunk_idle_period: 5m
chunk_retain_period: 30s
max_transfer_retries: 0
schema_config:
configs:
- from: 2023-12-02 #2023-12-02之后loki信息用下面的配置,这个主要是用来做兼容的
store: boltdb #索引使用哪种存储
object_store: filesystem #怎么存储,简单部署的话保存在本地文件系统
schema: v11
index:
prefix: index_
period: 24h #索引期限24小时
storage_config:
boltdb:
directory: /tmp/loki/index
filesystem:
directory: /tmp/loki/chunks
limits_config:
enforce_metric_name: false
reject_old_samples: true
reject_old_samples_max_age: 168h
ingestion_rate_mb: 32 #采集速率
ingestion_burst_size_mb: 64 #单次采集大小
max_entries_limit_per_query: 0 #查询返回的条目的最大行数,默认是5000,0表示无限制
retention_period: 24h #全局保留期,超过这个时间的日志会被删除,具体删除规则在compactor里配置
#retention_stream: #局部保留期
#- selector: ‘{level=“error”}’
priority: 1
period: 720h
chunk_store_config:
max_look_back_period: 0s #最大日志可见时间,0表示一直可见。or 24h等等
table_manager:
retention_deletes_enabled: false
retention_period: 0s
compactor:
working_directory: /data/loki/compactor #compactor运行状态保存目录
shared_store: filesystem
retention_enabled: true #启动日志删除
compaction_interval: 10m #compactor每隔10分钟运行一次
retention_delete_delay: 2h #在compactor运行2小时后删除
retention_delete_worker_count: 150 #用150个worker删除chunks
analytics:
reporting_enabled: false #关闭向loki团队发送此配置文件
EOF
**配置文件说明:**
>
> **ingestion\_rate\_mb: 32 #采集速率,如果日志量比较大的话,需要调整的
> ingestion\_burst\_size\_mb: 64 #单次采集大小,如果日志量比较大的话,需要调整的
> max\_entries\_limit\_per\_query: 0 #查询返回的条目的最大行数,默认是5000,0表示无限制**
>
>
> **这三个是比较重要的,其它的其实是可以默认的,就性能比较好**
>
>
>
> **在Loki中,对于客户端push到distributor中产生的每条日志流是可以对其做条目的大小限制的,这个在配置里面默认是不限制,也就是说每行的日志大小可以是无限?,当然大部分情况下我们都不会去限制这个,如果有的同学环境特殊,可以考虑开启对每行日志的大小限制。**
>
>
>
> ```
> limits_config:
> # 日志条目的大小限制,默认不限制
> max_line_size: | default = none
>
> ```
>
> **除此之外,对于单次查询的限制还有的chunk、stream和series的,不过大部分场景我们不会去对此做调整**
>
>
>
> ```
> limits_config:
> # 单个查询最多匹配的chunk个数
> max_chunks_per_query: | default = 2000000
>
> # 限制查询是匹配到的chunk大小,默认0为不限制
> max_query_length: | default = 0
>
> # 单词查询最多匹配到的日志流个数
> max_streams_matchers_per_query: | default = 1000
>
> # 限制查询时最大的日志度量个数
> max_query_series: | default = 500
>
> # 查询的并发数
> max_query_parallelism | default = 14
>
> # 允许租户缓存结果的有效时间
> max_cache_freshness_per_query |default = 1m.
> ```
>
>
**启动脚本:**
**/var/log/loki/ 目录需要提前建立,/opt/loki/loki-linux-amd64 是loki的执行程序,/opt/loki/loki-cfg.yaml是loki的配置文件绝对路径**
cat >/etc/systemd/system/loki.service <<EOF
[Unit]
Description=loki
After=network.target
[Service]
ExecStart=/opt/loki/loki-linux-amd64 -config.file=/opt/loki/loki-cfg.yaml &>> /var/log/loki/loki.log
ExecReload=/bin/kill -s HUP $MAINPID
LimitNOFILE=infinity
LimitNPROC=infinity
LimitCORE=infinity
TimeoutStartSec=0
Delegate=yes
KillMode=process
Restart=on-failure
StartLimitBurst=3
StartLimitInterval=60s
[Install]
WantedBy=multi-user.target
EOF
**启停和自动启动:**
systemctl enable loki && systemctl start loki && systemctl status loki
### **六,**
### **promtail的部署**
**promtail的配置文件:**
**这个是一个非常简单的静态读取/var/log/目录下的log后缀文件信息,并上传到loki**
cat promtail_config.yaml
server:
http_listen_port: 9080
grpc_listen_port: 0
记录读取日志的位置信息文件,Promtail重新启动时需要它
positions:
filename: /tmp/positions.ymal
Loki的api服务的地址
clients:
-
url: http://192.168.123.11:13100/loki/api/v1/push
scrape_configs: -
job_name: system
static_configs:- targets:
- localhost
labels:
job: varlogs
path: /var/log/*log
- localhost
- targets:
**promtail的启动脚本:**
cat >/etc/systemd/system/promtail.service <<EOF
[Unit]
Description=promtail
After=network.target
[Service]
ExecStart=/opt/loki/promtail-linux-amd64 -config.file=/opt/loki/promtail_config.yaml &>> /var/log/promtail/promtail.log
ExecReload=/bin/kill -s HUP
LimitNOFILE=infinity
LimitNPROC=infinity
LimitCORE=infinity
TimeoutStartSec=0
Delegate=yes
KillMode=process
Restart=on-failure
StartLimitBurst=3
StartLimitInterval=60s
[Install]
WantedBy=multi-user.target
EOF
### **七,**
### 常用的JavaScript设计模式
* 单体模式
* 工厂模式
* 例模式
![](https://img-blog.csdnimg.cn/20210616215753130.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl81NjEzNDM4MQ==,size_16,color_FFFFFF,t_70)
### 函数
* 函数的定义
* 局部变量和全局变量
* 返回值
* 匿名函数
* 自运行函数
* 闭包
![](https://img-blog.csdnimg.cn/20210616215826268.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl81NjEzNDM4MQ==,size_16,color_FFFFFF,t_70)
**网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。**
**需要这份系统化的资料的朋友,可以添加V获取:vip1024c (备注前端)**
![img](https://img-blog.csdnimg.cn/img_convert/2fed3b3f762b15509ccc2cd910e62eae.png)
**一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**
FFF,t_70)
**网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。**
**需要这份系统化的资料的朋友,可以添加V获取:vip1024c (备注前端)**
[外链图片转存中...(img-cmSdsnTJ-1713155447897)]
**一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**