php进程间传递resource,PHP 中的几种进程间共享内存使用方式

1. 最常见的 APC 可以缓存 PHP 的 opcode 提高应用的性能 可以在同个 PHP-FPM 进程池的进程间共享数据 常用功能: apc_store apc_fetch apc_add apc_delete apc_inc apc_dec apc_cas apc_clear_cache apc_sma_info 2. Shmop Unix 系统共享内存使用接口 常用功

42d7cd1ba8e9df8abc11ca1bbe3225fd.gif

1. 最常见的 APC

可以缓存 PHP 的 opcode 提高应用的性能

可以在同个 PHP-FPM 进程池的进程间共享数据

常用功能:

apc_store apc_fetch

apc_add apc_delete

apc_inc apc_dec

apc_cas

apc_clear_cache

apc_sma_info

2. Shmop Unix 系统共享内存使用接口

常用功能:

shmop_open shmop_close

shmop_read shmop_write

shmop_delete

ipcs -m ?查看本机共享内存的状态和统计

ipcrm -m shmid 或 ipcrm -M shmkey 清除共享内存中的数据

3. SystemV Shm

常用功能:

ftok

shm_attach shm_detach

shm_put_var shm_get_var shm_remove_var

4. 使用共享内存需要考虑操作的原子性和锁、并行和互斥

sem 信号量相关函数:

sem_get sem_remove

sem_acquire sem_release (保证原子性)

其他常见锁机制:文件锁机制 flock

5. PHP 提供的 IPC 机制

–enable-shmop共享内存,只能按字节操作

–enable-sysvsem信号量

–enable-sysvshm共享内存,和 shmop 的差别是提供的操作函数不同,支持 key、value操作

–enable-sysvmsg消息队列

参考:

http://php.net/manual/zh/book.apc.php

http://docstore.mik.ua/orelly/webprog/pcook/ch05_07.htm

http://www.re-cycledair.com/php-dark-arts-shared-memory-segments-ipc

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值