教你玩转Git-安装
Git 是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。Git 与常用的版本控制工具 CVS, Subversion 等不同,它采用了分布式版本库的方式,不必服务器端软件支持。Debian/Ubuntu Git 安装命令为:$ apt-
Java内存模型简介
首先要明确内存模型指什么。书中的定义是:在特定的操作协议下,对特定内存和高速缓存进行读写访问的过程抽象。可以知道,内存模型就是来规定如何对内存/缓存进行读写操作的。所以Java内存模型,就是用来定义程序对Java内存的的访问规则。进一步说, Java内存模型就是定义程序中变量(静态变量、数组对象元素等,不包括局部变量、方法参数)的访问规则。Java内存模型的规定:所有变量存储在主内存中;每个线程都
为什么Podman运行容器更安全?
Podman 使用传统的 fork/exec 模型(相对于客户端/服务器模型)来运行容器。在进入本文的主要主题 Podman 和容器之前,我需要了解一点 Linux 审计功能的技术。什么是审计?Linux 内核有一个有趣的安全功能,叫做审计。它允许管理员在系统上监视安全事件,并将它们记录到audit.log 中,该文件可以本地存储或远程存储在另一台机器上,以防止黑客试
如何在Linux中复制文档
了解在 Linux 中多种复制文档的方式以及各自的优点。在办公室里复印文档过去需要专门的员工与机器。如今,复制是电脑用户无需多加思考的任务。在电脑里复制数据是如此微不足道的事,以致于你还没有意识到复制就发生了,例如当拖动文档到外部硬盘的时候。数字实体复制起来十分简单已是一个不争的事实,以致于大部分现代电脑用户从未考虑过其它的复制他们工作的方式。无论如何,在 Linux 中复制文
教你如何用 MongoDB 实现评论榜功能
Mongodb很适合做这件事,api的调用仅仅是使用到了入门级别的CRUD,理清楚了思路,编码也会顺风顺水,所以你会发现我在这篇博客中说的比编码还多。评论榜预期的功能就像是StackOverFlow的那样, 用户可以发出自己的提问,其他用户来解答, 同时楼主可以回复别人的评论,别人依然可以回复楼主数据结构mongodb可以存储文档啊, 其实我们要做的就是构建一个合适的类,评论帮也就成功一大半了问题
教你如何在 CentOS 7 下编译安装 Python 3.7 与 Python 2.7.5 共存
教你如何在 CentOS 7 下编译安装 Python 3.7 与 Python 2.7.5 共存。环境:CentOS 7.6 x64一、安装Python 3.7下载python源码包:wget https://www.python.org/ftp/python/3.7.4/Python-3.7.4.tgz如果没有wget命令,可以使用命令安装:y
教你玩转Git-分支合并
Git 是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。Git 是 Linus Torvalds 为了帮助管理Linux 内核开发而开发的一个开放源码的版本控制软件。Git 与常用的版本控制工具 CVS, Subversion 等不同,它采用了分布式版本库的方式,不必服务器端软件支持。一旦某分支有了独立内容,你终究会希望将它合并回到你的主分支。 你可以使用以下命令将
ThinkPad重大更新!5款创意设计PC齐发2日
日前,ThinkPad巨匠P系列专业移动工作站迎来全线更新,包括ThinkPad P1隐士2019、ThinkPad P53、ThinkPad P73、ThinkPad P43s、ThinkPad P53s在内的5款新品集体亮相。这是自近日英特尔发布“创意设计PC”这一全新电脑品类之后,ThinkPad率先带来的作品。其中,ThinkPad P1隐士2019搭载全新Intel至强E-2176M处理
教你如何在 Linux 中使用 unzip 解压缩文件
ZIP 是最广泛使用的归档文件格式,支持无损数据压缩。 ZIP 文件是包含一个或多个压缩文件或目录的数据容器。在本教程中,我们将向您展示如何使用 unzip 命令通过命令行解压缩 Linux 系统中的文件。什么是 unzip ?Unzip 是一个实用程序,可帮助您列出,测试和提取压缩的 ZIP 存档。安装解压缩默认情况下,大多数 Linux 发行版中都没有安装 Unz
教你玩转Git-创建仓库
Git 是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。Git 与常用的版本控制工具 CVS, Subversion 等不同,它采用了分布式版本库的方式,不必服务器端软件支持。git initGit 使用 git init 命令来初始化
HAproxy企业应用,TCP/HTTP动静分离
HAproxy企业应用,TCP/HTTP动静分离HAProxy的是一个免费的、开源的的tcp/http反向代理工具、负载均衡器,是一个企业非常快速和可靠的安全的解决方案,提供高可用性、高并发性,负载均衡和代理对TCP和基于HTTP的应用程序。它特别适用于流量非常高的网站。它已成为事实上的标准开源负载均衡器,现在随大多数主流Linux发行版一起提供,在互联网领域应用也是非常广泛,受欢迎的第三方工具。
导览Linux 文件系统类型
Linux 文件系统多年来在不断发展,让我们来看一下文件系统类型。虽然对于普通用户来说可能并不明显,但在过去十年左右的时间里,Linux 文件系统已经发生了显著的变化,这使它们能够更好对抗损坏和性能问题。如今大多数 Linux 系统使用名为 ext4 的文件系统。 “ext” 代表“扩展extended”,“4” 表示这是此文件系统的第 4 代。随着时间的推移添加的功能包括:能够提供越来
OBS Studio 24.0 RC1 发布 – 有大惊喜
对于那些使用OBS Studio进行跨平台直播和屏幕录制需求的人来说,OBS Studio 24.0即将推出,但首先发布的是他们的候选版本,以审查进入这一重大更新的新功能。OBS Studio 24.0 RC1于今天下午发布,增加了在录制时暂停的功能,允许“无缝地实时删除视频片段”。OBS Studio 24.0 RC1还支持在发生拥塞时自动调整比特率,而不是丢帧,添加各种设置、更新Windows
TCP的三次握手与四次挥手
TCP报文段的首部格式序列号seq:占4个字节,用来标记数据段的顺序,TCP把连接中发送的所有数据字节都编上一个序号,第一个字节的编号由本地随机产生;给字节编上序号后,就给每一个报文段指派一个序号;序列号seq就是这个报文段中的第一个字节的数据编号。确认号ack:占4个字节,期待收到对方下一个报文段的第一个数据字节的序号;序列号表示报文段携带数据的第一个字节的编号;而确认号指的是期望接收到下一个字
TCP协议的常见面试题
1. 为什么连接的时候是三次握手,关闭的时候却是四次握手?因为当Server端收到Client端的SYN连接请求报文后,可以直接发送SYN+ACK报文。其中ACK报文是用来应答的,SYN报文是用来同步的。但是关闭连接时,当Server端收到FIN报文时,很可能并不会立即关闭SOCKET,所以只能先回复一个ACK报文,告诉Client端,"你发的FIN报文我收到了"。只有等到我S
PHP实现异步操作总结
1.为啥PHP需要异步操作?一般来说PHP适用的场合是web页面展示等耗时比较短的任务,如果对于比较花时间的操作如resize图片、大数据导入、批量发送EDM、SMS等,就很容易出现操作超时情况。你可以说我可以设置无限超时时间,等等你也要知道PHP有一个工作模式是fastcgi,PHP无限不超时,不代表 fastcgi相应不超时……如果你还想说要fastcgi相应永不超时,我建议你应该跟你们的运维
教你玩转Git-合并冲突
Git 是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。Git 与常用的版本控制工具 CVS, Subversion 等不同,它采用了分布式版本库的方式,不必服务器端软件支持。合并并不仅仅是简单的文件添加、移除的操作,Git 也会合并修改。$&n
Laravel日志文件写入失败(permission denied)
用过Laravel的小伙伴一开始安装完框架后可能都遇到过daily 日志文件写入失败的问题,接下来我们就来详细说下日志文件写入失败的原因以及对应的解决方案。在讲这个问题之前可能需要简单介绍下Linux系统下的文件的Ownership和Permission。•Ownership◦UserUser是文件的所有者,默认情况下,用户创建了一个文件,该文件的所有者就是该用户。◦Group一个用户组能包含多个
教你如何用 Java 实现异步调用
本教程教你如何使用Java实现异步调用。一、创建线程@Test public void test0() throws Exception { System.out.println("main函数开始执行"); Thread thread=new Threa
Java异常机制深入理解
在程序运行过程中出现错误,导致程序出现非预期场景。异常处理可以保证出现错误后,控制接下来的程序流程,是选择定位错误信息,还是抛出异常或捕获异常、还是避免程序非正常退出,都取决于我们。1.异常的概述1.1什么是异常?异常:程序在运行过程中发生由于外部问题导致的程序异常事件,发生的异常会中断程序的运行。(在Java等面向对象的编程语言中)异常本身是一个对象,产生异常就是产生了一个异常对象。注意在jav