关于MongoDB

MongoDB是一种NoSQL文档型数据库,具有高性能、高可扩展性、灵活性和高可用性。它支持动态查询、多种索引类型(如单字段、复合、文本和地理空间索引)以及自动分片,适用于大数据分析等场景。与HBase相比,MongoDB采用更灵活的数据模型,使用内存映射文件存储数据,并通过复制集保证一致性。MongoDB能够快速查询的原因在于其内存映射技术、丰富的索引支持、聚合管道及分布式查询能力。索引基于B树或倒排索引实现,有效提升了查询效率。选择合适的索引策略对提高性能至关重要。

liujie Published on 2023-05-05

linux 常见文件列表输出说明

该文介绍了`ls -lah`命令输出中目录权限信息的含义。以`drwxr-xr-x 2 root root 4096 Apr 24 14:50 docker_build/`为例,首字符`d`表示这是一个目录;接下来的九个字符分为三组,分别代表文件拥有者(读、写、执行)、同组用户(只读、执行)和其他用户(只读、执行)对目录的权限。数字`2`是硬链接数,两个`root`分别指明了目录的所有者和所属组,`4096`为目录大小,最后`Apr 24 14:50`显示了目录创建的时间。

liujie Published on 2023-04-27

Git命令基本用法

本文介绍了Git这一开源的分布式版本控制系统及其常用命令。主要内容包括:常用的六个Git命令(如`git clone`、`git log`等);如何新建代码库和克隆项目;配置用户信息;文件的增删操作;提交代码变更;管理本地和远程分支,包括创建、切换、合并及删除分支;标签的创建与查看;显示项目的各种状态信息,比如变更文件、版本历史等;远程同步相关命令,用于更新本地仓库或推送更改到远程仓库;以及其他一些实用命令,例如生成压缩包、备份工作区内容等。这些命令对于日常使用Git进行版本控制非常有帮助。

liujie Published on 2023-04-25

shell相关

本文介绍了 shell 中 `set +e` 和 `set -e` 两个命令的功能。`set +e` 命令用于禁用 shell 脚本中因错误而自动退出的行为,即使脚本执行过程中遇到错误,也会继续运行直至完成。相反地,`set -e` 启用了错误时立即退出的机制:一旦脚本中的任何命令执行失败(返回非零状态码),整个脚本就会立刻停止执行,并同样以一个非零状态码结束,这有助于防止进一步的问题发生。这两种设置为脚本开发者提供了根据实际需求灵活控制脚本行为的方式。

liujie Published on 2023-04-24

ubuntu 安装并配置 nginx

本文详细介绍了在Ubuntu系统上安装和配置Nginx的步骤,包括更新软件包、安装Nginx、启动服务及设置开机自启。此外,还指导了如何通过防火墙规则允许HTTP/HTTPS流量,并验证Nginx是否成功运行。文章进一步讲解了如何设置Nginx作为反向代理,包括编辑配置文件以转发请求到指定端口、保存更改并重新加载Nginx以应用新配置。对于多站点管理,提出了创建独立配置文件并通过符号链接激活的方法。同时,明确了/etc/nginx/sites-available与/etc/nginx/sites-enabled目录的作用区别及其使用规范。最后,提供了验证Nginx配置正确性以及查看日志文件的方法,确保Nginx能够稳定运行。

liujie Published on 2023-04-21

如何查看 udp 协议的端口是否正常?

本文介绍了两种方法来检查UDP协议端口的状态。第一种方法是使用`netstat -anu`命令,该命令可以显示系统中所有UDP连接和监听端口的详细信息,包括端口号及其状态。如果特定端口处于开放状态,则会在输出结果中找到相关信息。第二种方法利用nmap工具通过执行`nmap -sU [IP地址]`命令对指定主机进行UDP端口扫描,从而获取端口状态(如开放、关闭或被过滤)。这两种方式都是有效检测UDP端口是否正常工作的手段。

liujie Published on 2023-04-12

docker-compose docker 容器能够随系统启动也启动

本文介绍了如何配置Ubuntu系统,使得Docker容器能够随系统启动而自动启动。首先,创建一个systemd unit文件`/etc/systemd/system/chatgpt-web.service`,并在其中定义服务的描述、依赖关系、工作目录及启动/停止命令等。接着,通过执行`sudo systemctl enable chatgpt-web.service`来启用该服务,并使用`sudo systemctl start chatgpt-web.service`立即启动它。如果遇到启动失败的情况,可以通过`sudo journalctl -u chatgpt-web -b`查看相关日志以诊断问题。此外,还提供了禁用自动启动和跟踪日志输出的方法。注意确保docker和docker-compose已正确安装,并根据实际情况调整路径和服务名。

liujie Published on 2023-04-12
Previous Next