对ChatGPT的几个提问,当码农小帮手可行

  ChatGPT能说会到,还能写代码修Bug,今天就验证它的IT相关知识能力,容器的使用、代码理解编写的能力等,目前看ChatGPT的水平还是很高,虽然之前通过搜索引擎也能够获取得到,但是搜索精准程度还是差得很多并不是第一时间就能够找到自己想要的答案;   ChatGPT在代码理解、编写代码方面视

frp穿透简要使用

frp   frp为golang开发的高性能内网穿透、反向代理软件,支持tcp、udp、http、https协议等,使用frp进行穿透需要有外网服务器;   frp分为服务端frps与客户端frpc,服务端监听frp端口,客户端通过frp端口连接到服务端同时通知服务端开启代理的服务类型与端口,服务端

一个Golang的REPL工具

  REPL为Read-Eval-Print Loop的简写,为一种简易的,可交互式的编程环境,使用者可以方便的调试相关代码:   Read: 读取用户输入;   Eval: 计算输入的数据;   Print: 输出所计算的数据;   Loop: 循环执行上述流程;   目前多种编程语言也都官方自带

从Go编程看IO多路复用Epoll

  IO多路复用使得一个线程就可就可以处理多个网络连接,无需要创建多个线程来处理多个socket连接,减少不必要的资源开销,但是Select还是Poll、Epoll模式都有着不同的区别;   上篇在介绍Select模式是也介绍了Select模式存在的种种问题,如大量FD集从用户态拷贝到内核态、FD集

从Go编程看IO多路复用Select

  IO多路复用通过某种机制使进程监听某些文件描述符,当文件描述符中有读或写就绪时,进程能够收到系统内核发送的相应通知从而进行相应的IO操作;IO多路复用有:select、poll、epoll等模式,这里主要介绍select;select本质上也是同步IO,调用时阻塞自己,IO事件就绪后被唤醒返回负

基于LSM的Key-Value数据库实现稀疏索引篇

  上篇文章简单的填了一个坑基于LSM数据库的实现了WAL,在该版本中如数据写入到内存表的同时将未持久化的数据写入到WAL文件,在未将数据持久化时程序崩溃,可通过WAL文件将数据还原恢复从而避免了数据的丢失。 目前此基于LSM的数据库还有三大坑:    1、索引问题    2、SSTable合并

基于LSM的Key-Value数据库实现初篇

  前篇文章对LSM的基本原理,算法流程做了简单的介绍,这篇文章将实现一个简单的基于LSM算法的迷你Key-Value数据库,结合上篇文章的理论与本篇文章的实践使之对LSM算法有更好的理解,当然此版本还有很大问题只是Demo模型,后面也会指出;   此LSMDB有支持常见的数据库四大功能:CURD(

系统调用跟踪——ls功能实现(二)

  在上篇文章中我们跟踪ls命令看到了其所使用的这么几个系统调用:stat、openat、fstat、getdents、close、write等,这里再简单介绍下这几个系统调用的功能:   stat:为获取文件状态系统调用   openat:将打开目录/data获取它的文件描述符,返回值3即为文件描

系统调用跟踪——分析(一)

  通过strace工具可跟踪用户进程与Linux内核的调用交互,可看到其中的System Call(系统调用情况)情况; 安装strace: apt-get instsall strace   strace安装完成后执行:strace ls /data即可看到ls命令执行时所执行的系统调用情况,

使用ANSI改变终端输出样式

  默认情况下程序输出到终端的字符样式为白字黑背景,样式、字体比较单一。如想改变程序输出到终端字符的样式等可使用ANSI转移码使其输出具有不同样式; ANSI转义序   ANSI转义序列包括这三个部分组成:前置引导,CSI转义序列,结束符号 1、前置引导: 为ESC的ASCII值(\033,\0x1
Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×