欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

使用Python設(shè)置tmpfs來加速項目的教程

 更新時間:2015年04月17日 14:59:41   投稿:goldensun  
這篇文章主要介紹了使用Python設(shè)置tmpfs來加速項目的教程,文中給出方法使用Python腳本將tmpfs保存于內(nèi)存中的程序存儲到本地硬盤上,需要的朋友可以參考下

 對我當(dāng)前工程進(jìn)行全部測試需要花費不少時間。既然有 26 GB 空閑內(nèi)存,為何不讓其發(fā)揮余熱呢? tmpfs 可以通過把文件系統(tǒng)保存在大內(nèi)存中來加速測試的執(zhí)行效率。

但優(yōu)點也是缺點,tmpfs 只把結(jié)果保存在內(nèi)存中,所以你必須自己編寫腳本來把結(jié)果回寫到磁盤上進(jìn)行保留。而且這些腳本必須良好書寫和執(zhí)行,否則就要失去部分或全部的工作成果了。

一種常見的方法是直接在tmpfs文件夾中工作,然后把工作成果備份到磁盤上的一個文件夾中。當(dāng)您的機器啟動時你從那個備份文件夾恢復(fù)tmpfs文件夾。啟動之后用cron同步tmpfs文件夾和磁盤文件夾。


我發(fā)現(xiàn)這個設(shè)置有點復(fù)雜容易出錯。在啟動的時候,或者對于crom,我從沒有真正的相信?,F(xiàn)在我用一種簡單得多的設(shè)置,根本不用cron。

在我的機器上運行一個單項測試,使用IDE并發(fā)布于web服務(wù)器,其性能通常是合理的,只有運行全部測試需要許多時間。

我發(fā)現(xiàn)最佳之處是在磁盤上設(shè)置一個workspace,與/dev/shmand目錄下運行所有測試的tmpfs同步。這或多或少使我的設(shè)置無需改變,并消除了可能松散的工作,這些僅僅是因為我在正確設(shè)置方面太垃圾了。


性能提升的結(jié)果是合理的:
 

$ nosetests && run_tests.py
........................................................................................................................................................................................................................................................
----------------------------------------------------------------------
Ran 248 tests in 107.070s
 
OK
........................................................................................................................................................................................................................................................
----------------------------------------------------------------------
Ran 248 tests in 19.423s
 
OK

現(xiàn)在比原來提高了 5 倍速度。

使用 python 來進(jìn)行設(shè)置非常簡單:
 

#!/bin/bash -e
 
WORK=src/py
LOG=$(pwd)/test.log
TARGET=$(hg root)
SHADOW=/dev/shm/shadow/$TARGET
 
date > $LOG
mkdir -p $SHADOW
 
cd $SHADOW
rsync --update --delete --exclude=".*" --exclude=ENV --archive $TARGET ./..
 
if [ ! -d ENV ]
then
  virtualenv ENV
fi
. ENV/bin/activate
 
cd $WORK
python setup.py develop >> $LOG
nosetests $* | tee -a $LOG
exit ${PIPESTATUS[0]}

我只要重復(fù)同步到/dev/shm目錄,設(shè)置測試環(huán)境(virtualenv and python setup.PY)和運行測試(nosetests)。

在tmpfs文件夾里仍可用命令行運行單個測試。也可以把這個從你的IDE中踢走,但你會失去你的測試運行和調(diào)試的能力。如我之前所說,我現(xiàn)在不需要這些。

我希望我對tmpfs的這個變通使用能幫助你建立一個更快速的開發(fā)環(huán)境,而無須遭受所有的腳本麻煩。

相關(guān)文章

  • Python創(chuàng)建二維數(shù)組實例(關(guān)于list的一個小坑)

    Python創(chuàng)建二維數(shù)組實例(關(guān)于list的一個小坑)

    下面小編就為大家?guī)硪黄狿ython創(chuàng)建二維數(shù)組實例(關(guān)于list的一個小坑)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-11-11
  • 一文詳述 Python 中的 property 語法

    一文詳述 Python 中的 property 語法

    這篇文章主要介紹了一文詳述 Python 中的 property 語法,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-09-09
  • python+OpenCV人臉識別考勤系統(tǒng)實現(xiàn)的詳細(xì)代碼

    python+OpenCV人臉識別考勤系統(tǒng)實現(xiàn)的詳細(xì)代碼

    作為一個基于人臉識別算法的考勤系統(tǒng)的設(shè)計與實現(xiàn)教程,以下內(nèi)容將提供詳細(xì)的步驟和代碼示例。本教程將使用 Python 語言和 OpenCV 庫進(jìn)行實現(xiàn),需要的朋友可以參考下
    2023-05-05
  • python爬蟲之線程池和進(jìn)程池功能與用法詳解

    python爬蟲之線程池和進(jìn)程池功能與用法詳解

    這篇文章主要介紹了python爬蟲之線程池和進(jìn)程池功能與用法,結(jié)合實例形式分析了Python基于線程池與進(jìn)程池的爬蟲功能相關(guān)操作技巧與使用注意事項,需要的朋友可以參考下
    2018-08-08
  • selenium+python自動化測試之環(huán)境搭建

    selenium+python自動化測試之環(huán)境搭建

    這篇文章主要介紹了selenium+python自動化測試之環(huán)境搭建,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2019-01-01
  • Python區(qū)塊鏈創(chuàng)建Block Class教程

    Python區(qū)塊鏈創(chuàng)建Block Class教程

    這篇文章主要為大家介紹了Python區(qū)塊鏈創(chuàng)建Block Class教程詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-05-05
  • Python優(yōu)化列表接口進(jìn)行分頁示例實現(xiàn)

    Python優(yōu)化列表接口進(jìn)行分頁示例實現(xiàn)

    最近,在做測試開發(fā)平臺的時候,需要對測試用例的列表進(jìn)行后端分頁,在實際去寫代碼和測試的過程中,發(fā)現(xiàn)這里面還是有些細(xì)節(jié)的,故想復(fù)盤一下
    2021-09-09
  • Python接口自動化測試框架運行原理及流程

    Python接口自動化測試框架運行原理及流程

    這篇文章主要介紹了Python接口自動化測試框架運行原理及流程,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-11-11
  • pandas求平均數(shù)和中位數(shù)的方法實例

    pandas求平均數(shù)和中位數(shù)的方法實例

    pandas對象擁有一組常用的數(shù)學(xué)和統(tǒng)計方法,大部分都屬于約簡和匯總統(tǒng)計,這篇文章主要給大家介紹了關(guān)于pandas求平均數(shù)和中位數(shù)的相關(guān)資料,需要的朋友可以參考下
    2021-08-08
  • pandas中遍歷dataframe的每一個元素的實現(xiàn)

    pandas中遍歷dataframe的每一個元素的實現(xiàn)

    這篇文章主要介紹了pandas中遍歷dataframe的每一個元素的實現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-10-10

最新評論