原创 C語言實現爲終端程序--webshell基石

之前對ssh一直很困惑它是如何實現的,網上也沒有相關代碼實例,所以自己花了一段時間研究了一下。本篇博客主要寫了兩個程度:服務端和客戶端,通過客戶端可以遠程登錄服務端,執行shell命令。代碼實現的比較糙,但是基本原理一看就明白。 一、主要

原创 簡約而不簡單epoll之EPOLLRDHUP

上一篇主要介紹EPOLLOUT,本篇介紹EPOLLRDHUP。在內核2.6.17(不含)以前版本,要想知道對端是否關閉socket,上層應用只能通過調用recv來進行判斷,在2.6.17以後,這種場景上層只需要判斷EPOLLRDHUP即可

原创 簡約而不簡單epoll之EPOLLOUT

本篇主要分析epoll邊緣觸發,通過模擬各種場景,來介紹EPOLLOUT,不涉及epoll底層源碼實現。 一、前提 epoll_wait返回的條件 1、等待時間到期 2、發生信號事件,例如ctrl+c 3、The associated f

原创 kvm網絡那些事兒

在Linux下面我比較習慣用kvm虛擬出虛擬機,今天主要記錄一下kvm網絡相關的一些內容。 一、網絡模式 kvm虛擬機支持兩種網絡模式:NAT和Brigde,這種模式有什麼區別呢? NAT(網絡地址轉換):這種方式是虛擬系統通過網絡地址轉

原创 Webpack入門簡介

文章目錄什麼是Webpackwebpack安裝webpack配置文件webpack使用自動打包編譯組件 -- webpack-dev-server安裝配置運行配置項說明第三方加載器Babel配置Babel步驟 什麼是Webpack

原创 CSS3備忘錄3

  一、CSS精靈技術 精靈圖其實幾句是有多張小圖片,做成一張大圖片,通過精確位置定位+寬度高度來限制圖片顯示。使用這種技術能夠減少與web服務器的交互。 二、字體圖標 所謂字體圖標是在一個網頁中我們看着像是一個圖片(圖標),實際上是字體

原创 CSS3備忘錄

目錄 一、背景 二、css選擇器 三、css元素分類 四、CSS三大特性 五、CSS三大模塊 5.1、盒子模型 5.2、浮動-float 浮動使用方式 浮動特性 清除浮動 5.3、定位 5.3.1、邊偏移 5.3.2、定位模式   5.3

原创 小白搞kafka之安裝篇

一、簡介 kafka是由Scala語言開發的並且依賴zookeeper,所以我們在部署kafka環境的時候需要安裝scala以及zookeeper。一般都是多節點部署(除學習外),所以我通過kvm虛擬了6臺虛擬機,三臺做爲zookeepe

原创 docker 網絡之host模式底層實現

衆所周知,docker有4種網絡模式:橋接、host、容器、none,默認使用橋接。今天主要介紹一下host模式。 host模式,本質是容器與物理主機在網絡空間是同一個namesapce。docker在創建容器後會在默認路徑/var/ru

原创 Linux namespace定位

1、lsns命令查看系統中namespace [root@localhost hotspot]# lsns NS TYPE NPROCS PID USER COMMAND 4026531836 pid

原创 Linux進程、線程綁定CPU以及獨佔CPU

在很早之前就瞭解一項技術:線程綁定cpu。該項技術也應用到各種應用軟件,來提高性能。這裏把自己做的一個實驗記錄下來,方便日後查閱。 一、進程綁定cpu 我們通過系統調用sched_setaffinity進行綁定,通過sched_getaf

原创 CSS3備忘錄2

上一篇,在這裏 目錄 六、常用屬性 七、小技巧 六、常用屬性   屬性 取值 備註 background background-color 背景顏色   background-image 背景圖片   background-repeat

原创 Centos安裝GIMP圖片軟件

一、安裝GIMP GIMP應該是linux下面Photoshop,在linux下安裝也很方便。我的系統是Cenots7.4版本,下面是我的安裝方式 通過flatpak 進行安裝即可,如下命令: [root@localhost 下載]#

原创 Vue入門筆記(2)

目錄結構五、Vue中動畫六、Vue中組件組件創建組件間切換組件間傳值數據傳遞方法傳遞,父子間雙向傳遞七、Vue獲取DOM元素\組件獲取DOM元素獲取組件八、Vue路由相關說明使用路由傳值query方式--即?方式佔位符方式--即:

原创 Vue入門筆記(1)

目錄結構一、vue對象創建vue中常用屬性二、vue常用指令三、vue過濾器全局過濾器私有過濾器四、Vue的生命週期 一、vue對象創建 <html> <head> <!-- 導入vue.js --> <script src="l