日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
Linux中的管道大小限制:pipesize (linux pipesize)

在Linux中,管道是不可或缺的一部分。管道可以被用來把多個(gè)命令連接起來,形成一個(gè)管道,可以在不同的命令之間傳遞數(shù)據(jù)。但是,管道的大小是有限制的,而這個(gè)限制對于一些特定的操作來說可能是不夠的。在Linux中,這個(gè)面積被稱為“pipesize”,它決定了管道的更大容量。本文將會(huì)探討Linux中的管道大小限制。

專注于為中小企業(yè)提供網(wǎng)站設(shè)計(jì)制作、網(wǎng)站設(shè)計(jì)服務(wù),電腦端+手機(jī)端+微信端的三站合一,更高效的管理,為中小企業(yè)新華免費(fèi)做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動(dòng)了千余家企業(yè)的穩(wěn)健成長,幫助中小企業(yè)通過網(wǎng)站建設(shè)實(shí)現(xiàn)規(guī)模擴(kuò)充和轉(zhuǎn)變。

管道是一種進(jìn)程間通信的方式,它通過將一個(gè)進(jìn)程的輸出傳遞給另一個(gè)進(jìn)程來實(shí)現(xiàn)通信。如果管道的大小限制太小,可以導(dǎo)致管道無法傳輸足夠大的數(shù)據(jù)塊。這個(gè)問題可能在一些特定的應(yīng)用場景中非常重要,比如接收大量的實(shí)時(shí)數(shù)據(jù)流。

Pipesize實(shí)際上指的是管道的緩沖區(qū)大小,也就是能夠存儲(chǔ)在管道中的數(shù)據(jù)量的大小。一般來說,這個(gè)緩沖區(qū)大小對于大多數(shù)用例來說是足夠的,但是在某些情況下需要對其進(jìn)行調(diào)整。

事實(shí)上,在Linux中,管道的大小受到系統(tǒng)內(nèi)存大小和進(jìn)程數(shù)量的限制。如果系統(tǒng)內(nèi)存較小,那么管道的大小限制就較小。另一方面,如果運(yùn)行的進(jìn)程數(shù)量過多,管道的大小限制也會(huì)相應(yīng)地下降。當(dāng)然,在多核CPU上運(yùn)行多個(gè)進(jìn)程時(shí),可以增加管道的大小限制,以提高管道的吞吐量。

那么,怎樣才能夠改變管道的大小限制呢?

在Linux中,可以使用“ulimit”命令來改變管道的大小限制。在終端中輸入“ulimit -p ”命令可以修改管道的大小限制。其中,“size”參數(shù)表示期望的緩沖區(qū)大小,單位為字節(jié)。需要注意到是,這個(gè)命令只對當(dāng)前終端會(huì)話生效。如果需要永久使用修改,需要對相關(guān)配置文件進(jìn)行修改。

相關(guān)問題拓展閱讀:

  • linux中的pipe和fifo的區(qū)別
  • 虛擬機(jī)部署exadata cell 節(jié)點(diǎn),啟動(dòng)cellsrv服務(wù)報(bào)錯(cuò)?

linux中的pipe和fifo的區(qū)別

/*實(shí)現(xiàn)子進(jìn)程向管道中寫入數(shù)據(jù),

父進(jìn)程

讀出數(shù)據(jù)*/

#include

#include

#include

#include

#include

int

main()

{

pid_t

childpid;

int

fd,nbytes;

char

string=”data

from

child

process\n”;

char

buf;

在linux進(jìn)程間通信(IPC)可以通過信號量、文件系統(tǒng)、消息隊(duì)列、共享內(nèi)存還有管道來實(shí)現(xiàn)的。其中消息隊(duì)列、內(nèi)存管理是在SystemV中提出的。進(jìn)程通信間涉及到了管道,而且管道在shell命令中也大有用處。

那就簡要說說管道:管道顧名思義,你可以將其理解為日常生活中的管子,一邊流入,一邊流出。它可以有半雙工和全雙工。半雙工就是只能一邊流入,另一邊流出;全雙工則是一邊可以流入,也可以流出。

1、pipe就是一種半雙工的管道。其中,fd用來向管道中寫入數(shù)據(jù),而fd在另一端用來讀出數(shù)據(jù)。如果現(xiàn)有兩個(gè)進(jìn)程要利用pipe進(jìn)行通信。此時(shí),就要保證只能有一個(gè)寫入端和一個(gè)讀出端,即:fd和fd只能有一個(gè)。

2、fifo是一種全雙工,即:它的一端既可以進(jìn)行讀取fd,也可以進(jìn)行寫入fd。正因?yàn)樗倪@種通信方式,使其可以用來涉及基于C/S模式的網(wǎng)絡(luò)通信。

虛擬機(jī)部署exadata cell 節(jié)點(diǎn),啟動(dòng)cellsrv服務(wù)報(bào)錯(cuò)?

根據(jù)報(bào)錯(cuò)路徑查看trc文件里面的內(nèi)容才能夠判斷

首先需要在虛擬機(jī)中安裝Oracle Linux 5.7, (Red Hat Enterprise Linux理論也可以,但我沒有測試過),內(nèi)存分配1GB通常就足夠了。安裝過程很簡單,需要注意的是需要選上軟件開發(fā)包,例如gcc/aio之類的,圖形界面(GUI)可不裝。

注意: 安裝完成以后Oracle Linux默認(rèn)使用UEK,如果這里使用UEK, 則在后面的步驟中無法正常啟動(dòng)cellsrv服務(wù)??梢孕薷膅rub的配置將其默認(rèn)啟動(dòng)內(nèi)核修改為redhat兼容內(nèi)核:

將default=0修改為default=1 ,然后型茄重啟。

因?yàn)槟J(rèn)Oracle Linux啟動(dòng)了很多我們不需要的服務(wù),為了節(jié)省資源:建議將以下服務(wù)停止并且禁用。

當(dāng)頌盯然上述服務(wù)的禁用也可以通過 ntsysv –level 2345在圖形界面進(jìn)行選擇,取消掉不需要的服務(wù),然后重啟。

然后我們將Exadata Cell Image V.zip上傳到虛擬機(jī)內(nèi),然后解壓,得到cellImageMaker_11.2.3.2.0_LINUX.X64_.x86_64.tar,繼續(xù)解壓得到dl180文件夾。

在dl180/boot/cellbits下找到cell.bin文件。這個(gè)bin文件實(shí)際上是一個(gè)zip壓縮包我們使用unzip來對它進(jìn)行解壓:

解壓后得到cell-11.2.3.2.1_LINUX.X64_.x86_64.rpm和jdk-1_5_0_15-linux-amd64.rpm

我們先來安裝jdk:

# rpm -ivh jdk-1_5_0_15-linux-amd64.rpm

然后再安裝cell:

# rpm -ivh cell-11.2.3.2.1_LINUX.X64_.x86_64.rpm

安裝的時(shí)候報(bào)錯(cuò),提示有LWP包依賴:

配置好yum源直接使用yum安裝LWP:

# yum install perl-libwww-perl

再次安裝cell,又一次提示錯(cuò)誤,前提條件不滿足,到底是什么前提條件不滿足沒有提示,只能通過以下方式生成具體的檢查條件的腳本然后再看是什么條件不滿足:

# rpm –scripts -qp cell-11.2.3.2.1_LINUX.X64_.x86_64.rpm >>diag.log

打開diag.log,很快看到應(yīng)該是/var/log/oracle目錄不存在導(dǎo)致的,于是手工建立這個(gè)目錄并修改權(quán)限為775。

# mkdir -p /var/log/oracle

# chmod -R 775 /var/log/oracle

再次安裝cell這次沒有報(bào)錯(cuò)。

執(zhí)行dd.sh創(chuàng)建對應(yīng)的磁盤和閃盤:其中磁盤12塊,每塊大小為1GB,閃盤4塊,沒塊大小也是1GB。

然后刪除dd腳本,切換到celladmin用戶,重新啟動(dòng)celld服務(wù)。

# su – celladmin

$ cellcli -e alter cell restart services all

發(fā)現(xiàn)cellsrv服務(wù)無法啟動(dòng),查看/opt/oracle/cell11.2.3.2.1_LINUX.X64_130109/log/diag/a/cell/cell/trace/alert.log發(fā)現(xiàn)有類似如下的報(bào)錯(cuò)信息:

CELLSRV version=11.2.3.2.1,label=OSS_11.2.3.2.1_LINUX.X64_130109,Wed_Jan__9_06:09:48_PST_2023

Non critical error DIAcaught while writing to trace file “/opt/oracle/cell11.2.3.2.1_LINUX.X64_130109/log/diag/a/cell/cell/trace/svtrc_2244_0.trc”

Error message: DIA-48913: Writing into trace file failed, file size limit reached

從錯(cuò)野租和誤號就可以判斷應(yīng)該是更大文件數(shù)不足, 于是需要再修改操作系統(tǒng)的更大文件數(shù)限制:

在/etc/sysctl.ctl最后添加一行: fs.file-max = 65536,然后刷新生效:

在/etc/security/limit.conf文件最后添加兩行:

* soft nofile 65536

* hard nofile 65536

然后退出重新登錄, 切換到 celladmin,使用ulimit -a進(jìn)行查看是否生效:

# ulimit -a

core file size (blocks, -c) 0

data seg size (kbytes, -d) unlimited

scheng priority (-e) 0

file size (blocks, -f) unlimited

pending signals (-i) 11999

max locked memory (kbytes, -l) 32

max memory size (kbytes, -m) unlimited

open files (-n) 65536

pipe size (512 bytes, -p) 8

POSIX message queues (bytes, -q)

real-time priority (-r) 0

stack size (kbytes, -s) 10240

cpu time (seconds, -t) unlimited

max user processes (-u) 11999

virtual memory (kbytes, -v) unlimited

file locks (-x) unlimited

再次啟動(dòng)cell所有的服務(wù):

$ cellcli -e alter cell restart services all

這次發(fā)現(xiàn)cell下的cellsrv, ms, rs服務(wù)都可以正常啟動(dòng)了。

接下來需要在cellinit.ora中添加網(wǎng)卡的信息:

$ cellcli -e create cell cell1 interconnect1=eth0

執(zhí)行成功以后,可以看到cellinit.ora文件中添加了一行ipaddress1=192.168.56.101/24類似的信息。

# cat /opt/oracle/cell/cellsrv/deploy/config/cellinit.ora

#CELL Initialization Parameters

version=0.0

DEPLOYED=TRUE

HTTP_PORT=8888

RMI_PORT=23791

SSL_PORT=23943

JMS_PORT=9127

BMC_SNMP_PORT=162

ipaddress1=192.168.56.101/24

接下來創(chuàng)建celldisk, griddisk, flashcache, flashlog:

關(guān)于linux pipesize的介紹到此就結(jié)束了,不知道你從中找到你需要的信息了嗎 ?如果你還想了解更多這方面的信息,記得收藏關(guān)注本站。

成都服務(wù)器租用選創(chuàng)新互聯(lián),先試用再開通。
創(chuàng)新互聯(lián)(www.cdcxhl.com)提供簡單好用,價(jià)格厚道的香港/美國云服務(wù)器和獨(dú)立服務(wù)器。物理服務(wù)器托管租用:四川成都、綿陽、重慶、貴陽機(jī)房服務(wù)器托管租用。


網(wǎng)站題目:Linux中的管道大小限制:pipesize (linux pipesize)
網(wǎng)頁網(wǎng)址:http://m.5511xx.com/article/dhjhgec.html