Ubuntu gearman 搭建

来源:http://www.cnblogs.com/wangyulu/archive/2016/03/08/5252950.html
-Advertisement-
Play Games

近階段一直在查看項目里所使用到的一些技術點,發現了gearman,於是就動手搞了下環境,下麵是來自百度百科關於gearman的介紹: Gearman是一個用來把工作委派給其他機器、分散式的調用更適合做某項工作的機器、併發的做某項工作在多個調用間做負載均衡、或用來在調用其它語言的函數的系統。 可用於...


近階段一直在查看項目里所使用到的一些技術點,發現了gearman,於是就動手搞了下環境,下麵是來自百度百科關於gearman的介紹:

Gearman是一個用來把工作委派給其他機器、分散式的調用更適合做某項工作的機器、併發的做某項工作在多個調用間做負載均衡、或用來在調用其它語言的函數的系統。 可用於sso 分發連接,但有弊端就是占用系統資源較多,例如CPU、記憶體。  

1.更新

sudo apt-get update


wget https://launchpad.net/gearmand/1.2/1.1.12/+download/gearmand-1.1.12.tar.gz


tar zxvf gearmand-1.1.12.tar.gz


cd gearmand-1.1.12/


./configure


configure: error: could not find boost


sudo apt-get install libboost-dev


接著重新執行:./configure


configure: error: Could not find a version of the library!


sudo apt-get install libboost-all-dev


接著重新執行:./configure


configure: error: could not find gperf


sudo apt-get install gperf*


接著重新執行:./configure


configure: error: Unable to find libevent


sudo apt-get install libevent-dev


接著重新執行:./configure


configure: error: Unable to find libuuid



安裝libuuid


這裡不能通過 sudo apt-get install 來安裝了,找不到,通過下麵方式安裝


wget http://nchc.dl.sourceforge.net/project/libuuid/libuuid-1.0.3.tar.gz


sudo tar zxvf libuuid-1.0.3.tar.gz


cd libuuid-1.0.3/


./configure


沒有錯誤的情況下繼續


sudo make


sudo make install


接下來繼續上面的安裝



./configure


sudo make && make install


這裡要等一段時間。。

 

根據上圖運行結果來看並沒安裝成功,繼續往下


sudo make clean (清除上次的make命令所產生的object文件(尾碼為“.o”的文件)及可執行文件。)


重新安裝


./configure


sudo make


sudo make install


貌似沒有錯誤,繼續


gearman


第一次運行會看到以下提示:

gearman: error while loading shared libraries: libgearman.so.8: cannot open shared object file: No such file or directory

(這表示系統不知道libgearman.so.8 放在哪個目錄下。 要在/etc/ld.so.conf中加入libgearman.so.8所在的目錄。 檢查了下,文件所在目錄為/usr/local/lib 因此出現這個問題的原因是libgearman.so.8剛生成,沒有加入到ld.so.cache中,所以這時需要重新運行一下 /sbin/ldconfig( ldconfig命令的作用))


sudo /sbin/ldconfig



此時再執行 gearman 則已安裝成功!


安裝完Job Server之後,用gearmand –d命令啟動


gearmand -d


第一次運行會看到以下提示:


gearmand: Could not open log file "/usr/local/var/log/gearmand.log", from "/home/wangyulu/下載/gearmand-1.1.12", switching to stderr. (No such file or directory)


在提示的目錄下創建好/log/gearmand.log文件,再次執行上述命令,就正常啟動了job server



sudo gearmand -d


到這裡就已經完全ok






安裝PHP Gearman擴展


wget http://pecl.php.net/get/gearman-1.1.2.tgz


sudo tar zxvf gearman-1.1.2.tgz


cd gearman-1.1.2/


sudo phpize (這裡可能會提示沒有此命令,執行 sudo apt-get install php5-dev 安裝)


sudo ./configure


sudo make


sudo make install



sudo echo "extension=gearman.so" >> /etc/php5/apache2/php.ini (註意這裡php.ini位置)


sudo /etc/init.d/apache2 restart


這時查看php_info時就應該看到 gearman擴展了

 

代碼完成:

https://gist.github.com/andreaspag/6242671/archive/a66d18d191b880c1f8210deb612eb51b185f0892.zip

解壓後把裡面的文件複製到相應目錄即可,如我是在用netbeans開發,我會把它放在 

/usr/local/netbeans-8.1/php/phpstubs/phpruntime 這個目錄里;

 

 

 

以下是安裝Job Server時的部分截圖

 

PHP Gearman 擴展

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 這篇文章主要介紹了PHP截取IE瀏覽器並縮小原圖的方法,涉及PHP調用com組件實現圖像截取的相關技巧,需要的朋友可以參考下 本文實例講述了PHP截取IE瀏覽器並縮小原圖的方法。分享給大家供大家參考,具體如下: // 截取一個視窗 Capture a window (IE for example)
  • 對於 Web 伺服器返回的 HTTP chunked 數據, 我們可能希望在每一個 chunk 返回時得到回調, 而不是所有的響應返回後再回調. 例如, 當伺服器是 icomet 的時候. 在 PHP 中使用 curl 代碼如下: <?php $url = "http://127.0.0.1:810
  • 本文轉載自:http://www.cnblogs.com/dolphin0520/p/3913517.html java併發編程(二):如何創建線程?(轉載) 在前面一篇文章中已經講述了在進程和線程的由來,今天就來講一下在Java中如何創建線程,讓線程去執行一個子任務。下麵先講述一下Java中的應用
  • 原文出處: 小寶鴿 一、概況 總體來說設計模式分為三大類: (1)創建型模式,共五種:工廠方法模式、抽象工廠模式、單例模式、建造者模式、原型模式。 (2)結構型模式,共七種:適配器模式、裝飾器模式、代理模式、外觀模式、橋接模式、組合模式、享元模式。 (3)行為型模式,共十一種:策略模式、模板方法模式
  • <span style="font-size:18px;"><!-- Open Entity Manager in View filter--> <filter> <filter-name>openEntityManagerInViewFilter</filter-name> <filter-cla
  • 本文轉載自:http://www.cnblogs.com/dolphin0520/p/3910667.html Java併發編程(一):進程和線程之由來(轉載) 在前面,已經介紹了Java的基礎知識,現在我們來討論一點稍微難一點的問題:Java併發編程。當然,Java併發編程涉及到很多方面的內容,不
  • 第一次用centOS,感覺好高大上,安裝了差不多一個半小時,學習了挺多命令的 1、 檢查centOS中預設的python版本,一般是python2.6。 命令:python –v 2、 安裝GCC 命令:#yum install gcc gcc-c++ 3、 安裝wget網頁下載工具:為後續下載做準
  • 一開始還以為代碼寫的有問題,點擊事件裡面有比較耗時卡主線程的代碼,逐一刪減代碼發現並不是這麼回事。
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...