一台 mac 的开发环境配置
最近买了一台 M1 的 mac,心水的 mac 终于到手了,先折腾一阵子,打算写个笔记记录一下。整体分为踩坑点、注意点、和一些常用的小 Tips… 本文持续更新!!! 一些小 Tips: 软件如果打不开,提示 xxx 已损坏,要移到废纸篓 终端输入 sudo spctl --master-disable 还不行则使用 xattr -cr /Application/程序.app 例如 qq 打不开 xattr -cr /Application/QQ.app 最新系统更新到了 14.2 版本发现,还不行的话去设置里的隐私与安全性,拉到最下面,看下是不是被拦截了,允许就可以打开了 使用 Vim 编辑完成保存退出失败,强制保存也失败 很多命令包括复制权限一样,需要在命令前加上 sudo 使用管理员权限 mac 安装软件很简单,要么去 appstore,要么下载安装包,以 dmg 为后缀的,直接把程序拖到 Application,听到叮的一声就完成了 自带的 vim 编辑器太丑了? 进入用户目录 cd ~ 创建 vim 配置文件 sudo vim...
在 docker 上安装 Gitlab
gitlab 介绍gitlab 是一款基于 git 仓库的代码管理工具,可以帮助我们团队进行版本控制和协作开发。gitlab 还提供了完整的持续集成 / 持续交付平台,能够自动化代码构建、测试、发布等过程,并且是一款开源的平台,公司也可以根据需求来进行定制化,满足不同团队,适应不同的需求和流程。 下载镜像12# 下载gitlab镜像docker pull gitlab/gitlab-ce 编写安装脚本注意我们这里要挂载三个目录,我的目录是在 /usr/local/docker/gitlab 下面的三个文件夹里面。其中 /etc/gitlab 为保存 gitlab 的配置文件,/var/log/gitlab 为保存 gitlab 的日志文件,/var/opt/gitlab 为保存 gitlab 数据文件。这里我用的端口号是 9980 123456docker run --name gitlab --restart always \ -p 9980:9980 -p 222:22 \ -v /usr/local/docker/gitlab/config:/etc/gitlab \...
简单谈谈我对 ChatGPT 的看法
近日,ChatGPT 的爆火无疑是科技圈最大亮点。这款人工智能爆火的出现,会对我们的生活有什么帮助,有什么影响。这次我想以一个普通开发者的角度来聊一聊这个人工智能对我的影响。 我们先来看 ChatGPT 是如何介绍自己的: 它说自己是一个大型语言生成模型,训练了大量的文本数据。据说是有 13 亿左右。然而最让我震惊的是 ChatGPT 的上下文联想功能,它可以根据对话的上下文来回答,比如说你给它提了一个需求,它的回答你不满意,那么你可以直接指出它错误的地方,并告诉它正确的思考方向。我们可以完全用真人对话的逻辑完成人工智能的交互,这在以前是想都不敢想的(点名 siri 和小爱的死亡” 抱歉,我没听清楚,请再说一遍”) 它有缺点吗?肯定是有的。如果你让它写一篇论文,它会说出一大堆道理和故事,虽然看着很完美,但是细看漏洞还是有的,什么草船借箭是周瑜的主意,引入的文献也是自己瞎编的,一本正经的胡说八道。但不可否认在某些事情上还是有用的,例如对于程序员来说,你可以说一个简单的需求,让它帮你完成一个简单的示例代码,或者非常复杂的逻辑...
我的 hexo 备份方案
我们的 hexo 一般都是上传都 github 作为服务器,github 里面存的都是编译好处理完成后的文件,而我们平时编辑博客则是需要在源码上完成。这会导致我们换一台电脑没有源码就编辑不了博客的问题。这次我来分享一下自己的 hexo 备份方案。原理很简单。在本地添加 GIT,在上传之前把源码先提交推送到 GITEE 上。这样我们直接可以从 GITEE 上获取到源码 在 GITEE 创建私人仓库 使用 clone 拉下来 将里面的.git 文件夹直接拷贝到博客根目录 在根目录运行 CMD,然后使用命令推送到 GITEE 上 这里我的远程分支名字叫 master 123git add .git commit -m "描述"git push -u origin master 在 GITEE 上看到推送上去的源代码了 之后发布博客只需要多加三步操作即可。添加,提交,推送 123456hexo cgit add .git commit -m "Backup"git pushhexo ghexo d Tip:如果换了一台电脑 把 GITEE...
prometheus+grafana 实现项目监控
介绍prometheus,也叫普罗米修斯。是目前很流行的开源项目监控框架,在项目中引入即可收集项目的信息,然后通过服务器来完成上传。 grafana 则是一个可视化工具。拥有比普罗米修斯更为丰富的功能和直观的页面。还可以做到邮箱报警,异常数据跟踪。 项目引入prometheus 我们加入 2 个依赖 12345678910111213 <!--普罗米修斯--><dependency> <groupId>io.micrometer</groupId> <artifactId>micrometer-registry-prometheus</artifactId> <version>1.9.0</version></dependency> <!--将项目内部信息暴露出来--><dependency> <groupId>org.springframework.boot</groupId> ...
SpringCache 的理解与使用
前言缓存相信各位都不陌生,作为开发中非常重要的一个组件。是解决高并发与数据库压力的第一方案,目前使用最多的是 redis 缓存中间件。但对于一些 CRUD 的缓存,还是有一些人使用的是 redisTemplate。开发中经常重复造车轮,以至于没有太多的时间去理解业务和逻辑。而 SpringCache 就出现了。只需要一行注解,几个配置,缓存的任务就完成了。我们只需要专心写逻辑就可以。使用也十分简单。本次就 SpringCache 结合当下最常用的 redis 来实践理解一下 SpringCache 的注解首先是三个常用注解 @Cacheable:获取缓存,如果获取不到缓存则执行本方法 将方法的返回值缓存到redis @CachePut:更新缓存,无论缓存是否存在,都会执行本方法,并且更新到redis @CacheEvict:删除缓存,缓存存在则删除,不存在自然不会删 下面来看看 Cacheable 注解中的值 cacheNames:可以理解为缓存容器的名字,也就是缓存要放进的地方 key:理解为redis的key就可以...
项目运行时如何拿到控制台上的日志?简单!
前言最近做项目的时候遇到一个问题,那就是程序运行的时候,怎么拿到控制台刚刚打印的日志,来做一些需求。甚至跨服务如何获取别的服务控制台打印的日志。这次我来分享一个非常简单的方法,使用目前最为常用的 logback。2 分钟即可搞定~ 导入依赖依赖只需要导入 2 个 logback 的依赖就可以 1234567891011<!--在logback-core基础上扩展的版本--><dependency> <groupId>ch.qos.logback</groupId> <artifactId>logback-classic</artifactId></dependency><!--logback基础模块--><dependency> <groupId>ch.qos.logback</groupId> ...
评论系统上线辣!
好久不见兄弟们,最近也是好久没更新博文了,一定会补上!!!今晚把之前老想上线的 Twikoo 评论系统上线了 (赞美开源,感谢作者~),用的是 MongoDB 作数据库。评论上线之后大家就可以留言了。我会在看到的第一时间内回复一起讨论。当然如果对写的地方有疑问欢迎评论区留言,我会认真对待的。 最后也入冬了,看到这篇博文的同学们,注意好保暖哦~
自己对网络的理解
网络分层OSI 七层模型 七层模型的结构清晰,每一层该干什么事。降低复杂性,统一标准,模块化。 物理层:很重要的一层,最底层,就像一个地基。保证双向传输,双向通讯。 数据链路层:①提供 MAC 地址;②负责数据帧的转发;③提供错误检查机制(交换机会对数据进行检测,如果发现有丢失,就会通知发送方重传数据) 网络层:①提供 IP 地址;②连接不同的媒介类型;③根据路由器运行的不同选择最佳路径;④在选择好的路径上路由数据包 传输层:传输层提供了端口号的概念。建立端口到端口的通信 会话层:在用于程序之间建立并维护会话连接 表示层:负责数据加密。比如对称加密、非对称加密… 应用层:给用户提供一个接口,用户可以通过用于程序来使用 6 层模型 七层模型虽然结构清晰,但是比较复杂并且不怎么实用,运行效率偏低。于是四层模型出现了 OSI 四层模型 应用层:提供两个终端设备上的应用程序信息交换的服务,定义消息交换的格式,将消息交给传输层传输 传输层:使用 TCP 和 UDP 协议对消息进行传输 网络层:给分组交换网上不同主机提供通信服务 物理层:使用物理手段将电脑等设备连接起来...
记一次 github22 端口连接超时
今天一大早发现 github 的文件推不上去,错误如下,提示 22 端口连接超时。寻思着前几天也好好的,科学上网也开了,就是连不上。 解决办法也很简单,我们只需要将 22 改为 443 就可以 首先我们使用下面这条命令来看一下是否能连接上 github 1ssh -T git@github.com 连接不上,还是超时。现在我们去.ssh 文件夹下新建 config 文件 **(注意没有后缀名)**,开始修改端口号 config 文件里配置好我们的参数 123456Host github.comUser MyEmail(邮箱)Hostname ssh.github.comPreferredAuthentications publickeyIdentityFile ~/.ssh/id_rsaPort 443 再次使用命令查看是否可以连接上 1ssh -T git@github.com 问题解决