推荐学习书目
› Learn Python the Hard Way
Python Sites
› PyPI - Python Package Index
› http://diveintopython.org/toc/index.html
› Pocoo
值得关注的项目
› PyPy
› Celery
› Jinja2
› Read the Docs
› gevent
› pyenv
› virtualenv
› Stackless Python
› Beautiful Soup
› 结巴中文分词
› Green Unicorn
› Sentry
› Shovel
› Pyflakes
› pytest
Python 编程
› pep8 Checker
Styles
› PEP 8
› Google Python Style Guide
› Code Style from The Hitchhiker's Guide
thechosenone
V2EX  ›  Python

朋友面试遇到的一个题,自己也没好的解决方法

  •  
  •   thechosenone · Feb 20, 2019 · 6165 views
    This topic created in 2815 days ago, the information mentioned may be changed or developed.

    多进程加线程时进程间通信最好的设计是怎样

    23 replies  •  2019-02-23 16:53:19 +08:00
    dychenyi
    dychenyi
    Feb 20, 2019
    1
    貌似可以看下 Chrome 多进程架构
    xxxy
    xxxy
    Feb 20, 2019❤️1
    2
    我可以背出来:信号、管道、消息队列、共享内存
    thechosenone
    thechosenone
    OP
    Feb 20, 2019
    3
    @xxxy 大哥,这是网易面试的问题,你这只说了方式,谁都能背书啊
    thechosenone
    thechosenone
    OP
    Feb 20, 2019
    4
    @dychenyi 这个也太复杂了。。
    lurenw
    lurenw
    Feb 20, 2019
    5
    看通讯涉及到的数据,如果是简单的命令,可以采用信号,消息队列这种。如果有需要操作大量数据的,可以考虑共享内存。如果是在单机上,甚至可以采用文件映射的方式。

    仅供参考
    thechosenone
    thechosenone
    OP
    Feb 20, 2019
    6
    @lurenw 我也觉得问题太笼统了,肯定没有完美的模型来处理广泛的问题,谢谢你的答复
    aijam
    aijam
    Feb 20, 2019
    7
    可以反问面试官,全中国最好的 IT 公司是哪家。
    liuxu
    liuxu
    Feb 20, 2019
    8
    进程信号注册,pcntl_signal 相关
    yidinghe
    yidinghe
    PRO
    Feb 20, 2019 via Android
    9
    难道不是 socket 吗?
    rayingecho
    rayingecho
    Feb 20, 2019
    10
    "最好"这个词说不定是在给你下套, 面试官应该不至于连"没有银弹"都不知道
    benson458
    benson458
    Feb 20, 2019
    11
    套接字
    cxl008
    cxl008
    Feb 20, 2019
    12
    难道不是 socket 吗?
    GooooooniX
    GooooooniX
    Feb 20, 2019
    13
    看场景吧....Chrome 这种用的是管道, 牺牲内存换速度.....
    ymj123
    ymj123
    Feb 20, 2019 via Android❤️1
    14
    是想让你把各种方式列举出来分析优劣吗?
    jiangnanyanyu
    jiangnanyanyu
    Feb 20, 2019 via Android
    15
    你问他最好具体是指哪方面呢?有没有一个衡量的标准呢,如果没有,那么怎么得出来的最好呢?
    911speedstar
    911speedstar
    Feb 20, 2019
    16
    问的是进程间通信,socket。。。没有别的了
    luozic
    luozic
    Feb 20, 2019 via iPhone
    17
    最好的设计? 已有技术实现里面?多进程之间 要么内存换性能先复制再修改,要么直接上数据库的事务同步方式。其他的有多少用的?
    tempdban
    tempdban
    Feb 21, 2019 via Android
    18
    放在共享内存中的无锁队列
    4KMOMhIkocgLELMt
    4KMOMhIkocgLELMt
    Feb 21, 2019 via iPhone
    19
    进程通信不用强调线程吧?
    socketpair or Local socket ?
    openbinder ?
    hp66722667
    hp66722667
    Feb 21, 2019
    20
    感觉面试官随便找了一个不可能回答出完美答案的问题,随便意思意思,估计他自己都不知道
    BubbleNoodle
    BubbleNoodle
    Feb 21, 2019❤️1
    21
    最好的设计是 tm 的不断迭代出来的
    old18
    old18
    Feb 21, 2019
    22
    脱离了业务场景问最好的的设计都是耍流氓.
    shange123
    shange123
    Feb 23, 2019
    23
    没有最好的设计,只有最适合的场景
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1385 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 169ms · UTC 22:39 · PVG 06:39 · LAX 14:39 · JFK 17:39
    ♥ Do have faith in what you're doing.