原创 【PHP7源碼分析】初探PHP字符串類型中的引用計數

作者:王澍 背景介紹 字符串類型也是我們平時常用的類型,由於字符串的特性,爲了節省內存通常相同字符串變量會共用一塊內存空間,通過引用計數來標記有多變量使用這塊內存。 但是,經過GDB追蹤發現,並不是所有字符串都是正常在操作引用計數,有正常

原创 技術團隊的學習方法:每天學習 100 分鐘,成功寫出 2 本書

作者:李樂 “雷哥,我感覺我工作 2 年了,天天都是在用 PHP 寫業務邏輯,CURD,CURD,CURD,雖然很努力也很累,但是感覺自己也沒什麼成長……” “隔壁團隊搞基礎架構的兄弟好像很厲害,比我成長得快很多……” “掌握的技術感覺很

原创 Qt 信號和槽源碼分析

作者:曹羣原文:https://mp.weixin.qq.com/s/Mp...歡迎關注學而思網校技術團隊公衆號: 引言: Qt 是一個1991年由Qt Company開發的跨平臺C++圖形用戶界面應用程序開發框架。它既可以開發GUI程序

原创 淺談C/C++鏈接庫

作者:施洪寶 一. 說明 1、本文後續代碼的編譯以及執行環境爲Centos 7.6 x86_64, g++ 4.8.5 2、本文後續會用到linux下nm, ldd命令。nm用於查看文件中的符號, 例如變量, 函數名稱。ldd用於查看動態

原创 從渲染原理談前端性能優化

作者:李佳曉 原文:學而思網校技術團隊 前言 合格的開發者知道怎麼做,而優秀的開發者知道爲什麼這麼做。 這句話來自《web性能權威指南》,我一直很喜歡,而本文嘗試從瀏覽器渲染原理探討如何進行性能提升。全文將從網絡通信以及頁面渲染兩個過程去

原创 【Swoole源碼研究】淺析swoole中server的實現

作者:施洪寶 一. 基礎知識 1.1 swoole swoole是面向生產環境的php異步網絡通信引擎, php開發人員可以利用swoole開發出高性能的server服務。swoole的server部分, 內容很多, 也涉及很多的知識點,

原创 初探nginx HTTP處理流程

作者:景羅 基本概念:   Nginx作爲一款開源的、高性能的HTTP服務器和反向代理服務器而聞名,本文基於nginx-1.15.0,將爲讀者簡要介紹其HTTP處理流程。   通常nginx配置文件如下所示: worker_processe

原创 【前端早讀會】每天記錄前端學習的過程

在這裏使用學而思網校的錄像設備,記錄前端工程師每天學習的內容: 2019-05-16 js的執行過程 by 王聰

原创 【筆記整理】http協議淺析(二)

作者:楊志曉 http的版本: a.HTTP建立在TCP協議之上。 b.HTTP/0.9 於1991年發佈。 c.HTTP/1.0 於1996年發佈。 d.HTTP/1.1 於1999年發佈。 e.HTTP/2 於2015年發佈。 h

原创 【筆記整理】http協議淺析(一)

作者:楊志曉 一、相關協議類概念: a.TCP (Transmission Control Protocol)和UDP(User Datagram Protocol)協議屬於傳輸層協議。 其中TCP提供IP環境下的數據可靠傳輸,它提供的服務

原创 【Swoole源碼研究】深入理解Swoole協程實現

作者:李樂  本文基於Swoole-4.3.2和PHP-7.1.0版本 Swoole協程簡介   Swoole4爲PHP語言提供了強大的CSP協程編程模式,用戶可以通過go函數創建一個協程,以達到併發執行的效果,如下面代碼所示: <?php

原创 【前端語言學習】學習minipack源碼,瞭解打包工具的工作原理

作者:王聰 學習目標 本質上,webpack 是一個現代 JavaScript 應用程序的靜態模塊打包器(module bundler)。當 webpack 處理應用程序時,它會遞歸地構建一個依賴關係圖(dependency graph),

原创 【Redis源碼研究】Redis module開發

作者:張仕華 module的作用 Redis通過對外提供一套API和一些數據類型, 可以供開發者開發自己的模塊並且加載到redis中.通過API可以直接操作redis中的數據,也可以通過調用redis命令來操作數據(類似lua script

原创 【Redis源碼研究】Redis的一個歷史bug及其後續改進

作者:張仕華 ziplist簡介 Redis使用ziplist是爲了節省內存.以zset爲例,當zset元素個數少並且每個元素也比較小的時候,如果直接使用skiplist(可以理解爲多層的雙向鏈表),每個節點的前後指針這些元數據佔用空間的比

原创 【Vue源碼學習】vue實例化到掛載到dom(上)

作者:王聰本篇目的是介紹vue實例化到掛載到dom的整體路線,一些細節會被省略。 從new Vue()開始 所有的一切都是從 new Vue()開始的,所以從這個點開始探尋這個過程發生了什麼。 從源碼中找到Vue構造函數的聲明,src/co