原创 PHP底層那些事--生命週期、變量zval、引用計數

從內核層面解析PHP的聲明週期、變量zval、引用計數。 《Extending and Embedding PHP》讀後總結 1.PHP的生命週期 不論是使用cli指令行還是使用webserver(apache、nginx)形

原创 1.Laravel學習點滴-路由

接觸laravel也有一段時間了,但是一直在用最基本的功能和方法去完成項目,一直感覺沒有把這款優雅、強大的框架的特點發揮出來,因此回頭重新理解框架,並嘗試多用terminal命令行去解決問題,簡化操作,提高工作效率。 本文並非完

原创 mac下java配置問題

Mac下java配置問題 今天嘗試在mac下學習java,碰到兩點問題,1.mac終端亂碼問題。2.java命令運行編譯後的java文件時,報java.lang.NoClassDefFoundError錯誤。 1.mac終端亂

原创 對於php、mysql優化、angularjs的一些小感悟

最近在新公司(遊戲公司)因爲業務需要,需要開發一套獨立的數據統計後臺,包括前端頁面和php端數據處理。數據表是按照日期生成的log表,每日一張,包含了所有用戶的一切操作,例如:登錄、註冊、遊戲相關、在線相關等,按照type字段分

原创 php常用數組函數

php常用數組函數 大致需求前文以及簡單介紹過,數據表按照時間生成,每天一張,每張表大約80W+數據量,加上需要獲取多日的數據,例如獲取連續5日登陸的用戶。 需求:玩家留存率、時間可選,開始時間以及結束時間 表頭包含:新註冊用

原创 好用易忽視的字符串處理函數

好用易忽視的字符串處理函數 1.自動插入HTML換行符 string nl2br(string $string[, bool $is_xhtml = true]) 在新行或者換行符處替換成<br />或<br>。 例如: <?ph

原创 php配置解析

php.ini部分配置解析 配置作用域 PHP_INI_PERDIR:可以在php.ini、httpd.conf、.htaccess中修改。 PHP_INI_SYSTEM:可以在php.ini、httpd.conf文件中修改。

原创 linux 常用命令

1.壓縮與解壓縮 -r 遞歸壓縮文件 zip -r xxx.zip /path/* 不帶path目錄。 zip -r xxx.zip /path 帶path目錄。

原创 Gitlab CI/CD部署使用

概念: CI/CD:持續集成/持續部署,簡單來說就是將發佈-測試-部署自動化,統一、規範開發流程。是敏捷開發理念、微服務架構的重要的一環。 Gitlab: 網址:https://gitlab.com 簡介:與Github類似,是一個gi

原创 分佈式事務分析

近期公司項目基於微服務架構需要涉及到實現一套分佈式事務。經過幾天在網上查閱資料發現大部分文章只是講解了具體的其中一個模型。因此在這裏做一個總結+自己的一些感悟和看法。 1.CAP理論 CAP理論本身並不是一套和事務相關的理論,

原创 分佈式事務--最大努力通知

參照事務的基本特性,分析基於消息系統模型之最大努力通知模型。 1.事務的特性 A(Atomicity):事務中的全部操作都是一個原子操作序列,要麼一起成功,要麼一起失敗。其中任何一個操作失敗,之前已經成功操作也會回滾到操作之

原创 微服務架構總結--1.微服務的特點

微服務架構一書讀後感,並結合自己實際工作的歸納總結。 1.什麼是微服務? 官方說法:微服務架構就是將單一程序開發成一個微服務,每個微服務運行在自己的進程中,並使用輕量級的機制通信,通常是HTTP RESTFUL API。這些

原创 Linux、Mac時間戳轉換小工具

工作中經常會和時間戳打交道,每當這個時候,都需要打開網頁,去格式化或者反格式化某一個時間戳。因此用go寫了一個小工具,命令行即可直接查看結果。 github地址:https://github.com/Orz-Li/timestam

原创 數據結構與算法---鏈表(包含GO源碼分析)

鏈表的定義 鏈表是一種物理存儲單元上非連續、非順序的存儲結構,數據元素的邏輯順序是通過鏈表中的指針鏈接次序實現的。----摘自百度百科 鏈表的底層 可見它並不是一組連續的內存,他是靠指針將零散的內存串聯起來,形成的一個完整的數據

原创 數據結構與算法---算法複雜度分析

爲什麼需要複雜度分析 對於一段算法,如何判定它是否高效?如何針對現有的數據量級對於這段代碼以及數據增長之後的空間、時間進行預估?可能有人會認爲,這個問題很簡單,直接寫一段測試代碼,實際運行一下就知道了。這種統計的方法叫做:事後統計法