當前位置:首頁 » 編程語言 » python服務重啟

python服務重啟

發布時間: 2024-05-21 05:07:51

linux如何重啟python解釋器

TestCase 測試用例,就是功能里那樣一條條用例
TestSuite 多個測試用例集合在一起,就是TestSuite,就是一個功能模塊的所有用例放這里了
TestLoader是用來載入TestCase到TestSuite中的,這個方法很好玩,可以將一個目錄下的所有python文件里的測試用例摳出來
TestRunner是來執行測試用例的,測試的結果會保存到TestResult實例中,包括運行了多少測試用例,成功了多少,失敗了多少等信息

❷ 如何解決python socket server重啟後埠被佔用的問題

本文介紹下,在solaris 系統下,python socket server重啟後,提示埠被佔用,telnet埠失敗。這里給出一個解決方法,有需要的朋友參考下。

在solaris 系統下,socket server被重啟後,提示埠被佔用,telnet埠又是不成功的,說明服務已被關閉。
通過netstat可以看到埠還處於於fin_wait_2狀態,solaris要4分鍾才能關閉。
遇到這個問題時,可以採用如下的方法解決,以減少等待時間。
1,加上s.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)。
代碼:

復制代碼代碼示例:
self.host=socket.gethostbyname(socket.gethostname())
s = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
s.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
s.bind((self.host,self.port))
s.listen(5)
2,修改系統fin_wait,time_wait的時間設置。這個時間改短,也利於系統系能。
修改方法
查看或設置:
使用get命令來確定當前時間間隔,並使用set命令將時間間隔指定為30秒。
例如:

復制代碼代碼示例:
ndd -get /dev/tcp tcp_time_wait_interval
ndd -set /dev/tcp tcp_time_wait_interval 30000
預設值:對於 Solaris 操作系統,預設等待時間間隔為 240000 毫秒(即 4 分鍾)。
建議值:60000 毫秒。
Solaris TCP_FIN_WAIT_2_FLUSH_INTERVAL
描述:
指定禁止處於FIN_WAIT_2狀態的連接保持該狀態的計時器時間間隔。
當連接比率較高時,這將累積大量的TCP/IP連接,從而導致伺服器性能下降。在高峰時間段,伺服器會發 生延遲。
如果伺服器延遲,netstat命令顯示對HTTP Server打開的許多套接字處於CLOSE_WAIT或FIN_WAIT_2狀態。
明顯的延遲可能會長達4分鍾,其間伺服器無法發送任何響應,但是CPU利用率保持很高,所有活動都在系統進程中。
查看和設置:
使用get命令來確定當前時間間隔,並使用set命令將時間間隔指定為67.5秒。
例如:

復制代碼代碼示例:
ndd -get /dev/tcp tcp_fin_wait_2_flush_interval
ndd -set /dev/tcp tcp_fin_wait_2_flush_interval 67500
預設值:675000 毫秒
建議值:67500 毫秒
Solaris TCP_KEEPALIVE_INTERVAL
描述:
「保持活動」包確保連接保持活動和已建立狀態。
查看或設置:
使用ndd命令來確定當前值或設置該值。
例如:

復制代碼代碼示例:
ndd -set /dev/tcp tcp_keepalive_interval 300000
預設值:7200000 毫秒
建議值:15000 毫秒

❸ linux上像服務一樣啟動python程序,開機自動啟動,能夠start,stop,restart,status等

你的python腳本要做到可以被service來管理,無需將python腳本包到shell腳本里,實現以下六個步驟即可:
1、系統有相應的python解釋器,並在腳本頭部聲明,例如:#!/usr/bin/python
2、給予該腳本可執行許可權,如:chmod +x somescript.py
3、腳本接受第一個命令參數,需要能接受至少包含start的參數,至於stop、restart以及status等並不是必須的,你可以自己來擴展。如: ./somescript.py start 這種命令格式來啟動程序
4、將該腳本放到/etc/rc.d/init.d/路徑下
5、chkconfig --add somescript.py添加服務
6、chkconfig --level 35 somescript.py on 在init為3和5的級別上開機啟動該服務

❹ linux下的python裡面如何用相關的網路模塊來重啟tp-link路由器

你說的總體是可行的,路由器都會提供一個web 的訪問控制界面,python urllib2 可以利用POST 的方式登錄,加一個header 就可以了,下面是登錄一個BBS 的代碼的header:

req=urllib.request.Request(url)
req.add_header('User-agent','Mozilla/5.0')
req.add_header('Content-Type','application/x-www-form-urlencoded')
params=urllib.parse.urlencode({'id':username,
'login.x':24,
'login.y':8,
'login':'登陸',
'pw':password,
'titletype':'forum'
})
params=params.encode('gb2312')
print('Sendrequest!waitingrespose.....')
res=urllib2.urlopen(req,params)

下面是我ppp登錄路由器的方式:

#!/usr/bin/python
#
#License:GNUGPLv2
#

#Scriptforcomtrendhg536+(firmwareA101-302JAZ-C03_R21.A2pB021g.d15h)
#..

importgetpass
importsys
importtelnetlib
importtime

HOST="192.168.1.1"
LOGIN="admin"
PASS="admin"
PROMPT="->"
WAITTIME=40#Numberofsecond
CONNECTIONNAME="0.8.352"#toseeyourconnections,manuallyconnecttorouter(telnet192.168.1.1)anse"wanshow".+ConId.Forexample""0.8.352""

tnt=telnetlib.Telnet(HOST)

tnt.read_until("Login:")
tnt.write(LOGIN+" ")

tnt.read_until("Password:")
tnt.write(PASS+" ")

tnt.read_until(PROMPT)
tnt.write("pppconfig"+CONNECTIONNAME+"down ")

time.sleep(3)
tnt.write(" ")
tnt.write("pppconfig"+CONNECTIONNAME+"up ")

time.sleep(WAITTIME)

tnt.read_until(PROMPT)
tnt.write("pppconfig"+CONNECTIONNAME+"up ")

tnt.write(" ")

tnt.read_until(PROMPT)
tnt.write("13 ")#pressoptiontoexit

tnt.close()


下面重啟路由器:

#!/usr/bin/envpython
#-*-coding:utf-8-*-

importsys
importtelnetlib
importre
importtime
importsys
importos

HOST="192.168.2.1"
password="password"

classbcolors:
HEADER='33[95m'
OKBLUE='33[94m'
OKGREEN='33[92m'
WARNING='33[93m'
FAIL='33[91m'
ENDC='33[0m'

defdisable(self):
self.HEADER=''
self.OKBLUE=''
self.OKGREEN=''
self.WARNING=''
self.FAIL=''
self.ENDC=''

defdrukuj(wiadomosc):
sys.stdout.write(" ")
sys.stdout.write("")
sys.stdout.flush()
sys.stdout.write(" ")
sys.stdout.write(wiadomosc)
sys.stdout.flush()
#sys.stdout.write(" ")


defstatus(komenda):
odb=""
try:
tn=telnetlib.Telnet(host=HOST,timeout=23)
exceptIOError:
print"Nienawiązanopołączenia:( "
else:
tn.read_until("Password:")
tn.write(password+" ")
ifkomenda=="wanadslreset ":
tn.write(komenda)
tn.write("exit ")
#print"Połączeniezostałozresetowane"
drukuj(bcolors.FAIL+"Połączeniezostałozresetowane"+bcolors.ENDC)
ifkomenda=="iproutestatus ":
tn.write(komenda)
tn.write("exit ")
odb=tn.read_all()
ifkomenda=="wanadslstatus ":
tn.write("wanadslstatus ")
tn.write("exit ")
odb=tn.read_all()
ifre.search('currentmodemstatus:down',odb):
#print"Status:down"
drukuj(bcolors.HEADER+"Status:down"+bcolors.ENDC)
ifre.search('currentmodemstatus:waitforinitialization',odb):
#print"Status:waitforinitialization"
drukuj(bcolors.WARNING+"Status:waitforinitialization"+bcolors.ENDC)
ifre.search('currentmodemstatus:initializing',odb):
#print"Status:initializing"
drukuj(bcolors.WARNING+"Status:initializing"+bcolors.ENDC)
ifre.search('currentmodemstatus:up',odb):
#print"Status:up"
drukuj(bcolors.OKBLUE+"Status:up"+bcolors.ENDC)
returnodb

defclear():
ifos.name=="posix":
#Unix/Linux/MacOS/BSD/etc
os.system('clear')
elifos.namein("nt","dos","ce"):
#DOS/Windows
os.system('CLS')

if__name__=="__main__":
clear()
status("wanadslreset ")
time.sleep(5)
a=True
whilea:
odb=status("iproutestatus ")
ifre.search('d*poe0*d',odb):
#print"Modemdziała"
drukuj(bcolors.OKGREEN+"-={{Modemdziała}}=- "+bcolors.ENDC)
time.sleep(2)
#clear()
a=False
else:
time.sleep(3)
status("wanadslstatus ")
time.sleep(3)

下面通過telnet 來重啟路由器

#!/usr/bin/envpython
#-*-coding:utf-8-*-

importtelnetlib

HOST="192.168.1.1"
USER="root"
PASS="admin"

router=telnetlib.Telnet(HOST)

router.read_until(":",2)#waitfortimeoutor"BusyBoxonlocalhostlogin:"
router.write(USER+" ")
router.read_until(":",2)#waitfortimeoutor"Password:"
router.write(PASS+" ")
router.read_until("#",2)#waitfortimeoutor"#"
router.write("reboot ")

router.close()

print"Done!"

這是四段獨立的代碼!

❺ 怎麼重啟python

在Windows環境下啟動互動式解釋器

Windows啟動Python互動式解釋器有兩種方式。第一種方式是進入Pyhton的安裝目錄,直接運行python.exe程序;第二種方式是進入Windows命令行窗口,在命令行窗口啟動python.exe。

在Windows命令行窗口啟動Python互動式解釋器,首先需要將Python安裝目錄的路徑,添加到Path系統環境變數。否則,只能進入Python安裝目錄啟動互動式解釋器。在安裝Python3.7時,如果勾選了【Add Python3.7 to PATH】選項,安裝程序會自動把Python安裝目錄添加到Path系統環境變數。

推薦學習《python教程》
進入Windows命令行窗口,輸入python命令啟動互動式解釋器,輸入python語句並執行,如下圖所示。

使用Python自身提供的IDLE集成開發環境
Pyhton自身提供了一個簡潔的集成開發環境,具備基本的IDE功能。利用IDLE可以較為方便地創建、運行、測試和調試Python程序。
Windows和Mac OS啟動IDLE
Winodws環境下啟動IDLE有多種方式,可以通過快捷菜單、桌面圖標、進入Python安裝目錄直接運行IDLE等方式啟動IDLE。
Mac OS啟動IDLE的方式同啟動交互解釋器相同,可以在Python的安裝目錄直接啟動,也可以在終端窗口輸入open /usr/bin/idle命令啟動。
IDLE的簡單使用
IDLE本身就是一個Python shell,可以在IDLE窗口直接輸入和執行Python語句,IDLE自動對輸入的語句進行排版和關鍵詞高亮顯示。如下圖所示。
IDLE還可以保存、打開並執行代碼文件。

熱點內容
2016郵件伺服器搭建 發布:2024-11-27 12:45:15 瀏覽:927
pythonstrptime 發布:2024-11-27 12:34:50 瀏覽:954
怎麼判斷組裝電腦配置真假 發布:2024-11-27 12:30:18 瀏覽:379
周鴻禕編程 發布:2024-11-27 12:30:12 瀏覽:615
索賠的腳本 發布:2024-11-27 12:30:09 瀏覽:547
什麼是淘寶資料庫 發布:2024-11-27 12:30:08 瀏覽:373
聯系輔導員重設密碼需要什麼 發布:2024-11-27 12:19:16 瀏覽:510
android刷系統 發布:2024-11-27 12:18:40 瀏覽:915
安卓什麼是id密碼 發布:2024-11-27 11:52:39 瀏覽:446
zjs解壓 發布:2024-11-27 11:33:10 瀏覽:159