原创 tomcat源碼編寫計劃連載(1)

 以前沒實在的接觸過tomcat這個東西,對於應用服務器和服務器的概念也一直都很模糊,於是我決定抽時間出來去實現以下tomcat源碼.tomcat的流程網上一堆,大家自己去熟悉一下就行了,我直接先實現一個簡單的java http服務器。這

原创 boost集成模型

boost集成模型 簡述: 常用集成樹模型有隨機森林、gbdt、xgb、lgb;bagging隨機森林很簡單,隨機取特徵和樣本,不容易過擬合,不做介紹。主要介紹一下gbdt和xgb. cart決策樹: 分類樹使用基尼係數增益,

原创 PHP遍歷memcache

 Memcache的客戶端操作一般都只提供了get,set,stats等簡單的操作,但是在某些特殊時候,我們可能需要遍歷Memcache的數據, Memcache自帶的命令是不能。 $host='localhost';$port=1121

原创 PHP 異步的curl

PHP是不支持線程的,但是我們有總想並行地幹一些事情,比如,同時執行多個http的請求,如果使用多進程的話,有兩個問題: 1. 不能跨平臺 2. 創建進程的開銷似乎大了些 於是,我們就想到了使用異步來達到類似並行的效果,曾經早就寫程序實

原创 redis分佈式鎖的實現及問題分析

Implementing a distributed lock manager with Redis.使用redis實現一個分佈式鎖的管理 當我們需要用不同的進程或者線程處理同一個資源的時候,鎖就顯得比較重要了。redis的分佈式鎖叫做

原创 lampp下配置https,並設置cookie跨域

 最近公司的項目登錄要轉成https的,但是根據同源協議,https登錄後的cookie與http的網頁不能共享。兩個問題,一個是centos下https的配置, 另外一個是登錄後cookie的跨域問題 問題- apache配置http

原创 PHP的訂單生成算法

PHP的訂單號生成算法算是語言本身的硬傷吧,相信很少的大型互聯網公司會用PHP去生成訂單號了,但是如果你身處一個沒有各方資源的情況下還是仔細想想怎麼做吧, PHP相比JAVA而言是以進程的方式運行的,進程結束資源回收,所有不會跟java一

原创 關於web服務的接口冪等性

原創鏈接: http://www.smithfox.com/?e=16 轉載請保留此聲明, 謝謝] 絕大部分網絡上對冪等性的解釋類似於: "冪等性是指重複使用同樣的參數調用同一方法時總能獲得同樣的結果。比如對同一資源的GET請求訪問

原创 lease 腦裂

Lease 中文叫租約,是一種廣泛應用於分佈式系統領域的協議,它是一種維護分佈式系統一致性的有效工具。 Lease 通常定義爲:頒發者在一定期限內給予持有者一定權利的協議。 Lease 表達了頒發者在一定期限內的承諾,只要未過期頒發

原创 redis的多命令執行方法之一-pipeling

管道傳輸(pipelining):用於一次性處理多條redis命令      redis的執行流程爲客戶端發送命令到服務端,客服端阻塞等待服務端程序返回,如果中間由於網絡通信問題導致速度比較慢,另外由於客戶端和服務端的數據傳輸需要一定的

原创 twitter snow flake 雪花算法

Twitter-Snowflake算法產生的背景相當簡單,爲了滿足Twitter每秒上萬條消息的請求,每條消息都必須分配一條唯一的id,這些id還需要一些大致的順序(方便客戶端排序),並且在分佈式系統中不同機器產生的id必須不同。

原创 redis內存參數

下面這些redis內存方面的問題是在工作中發現的。可以作爲一個工作中的參考 一、redis數據類型的特殊編碼形式      在redis2.2以後許多數據類型爲了節約內存使用大小,都開啓了一個壓縮的算法,當數據庫中的 元素個數少於配置文

原创 tomcat源碼編寫計劃連載(2)

  上一次講了一下server的基礎實現,但是實現的只是簡單的靜態資源的請求,用過tomcat的童鞋肯定說要調用servlet啦,OK, 在上次的基礎上我增加了一個請求servlet的功能。 servlet的生命週期不做多的介紹了,我主

原创 redis快速的插入大量的數據

如何在服務啓動的時候快速插入大量的  過億的key value數據呢? 使用新的方式 : LUKE 以下爲幾種可能的方式:      1、逐條命令發送,命令的傳輸時間RTT很長,速度會比較慢      2、使用pipelining,這

原创 maven項目構建spring項目

畢業以後拋棄java已經一年了,php搞了一年,簡單易上手。每種語言都有各自的好處吧。php是有cgi或者fast-cgi來fork進程跑的腳本語言,進程佔用的系統資源會多一些,並且每次請求都要把所有php的配置信息以及include的文