V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
pantingwen
4.46D
V2EX  ›  PHP

没有基于高并发大流量的 PHP 开发经验有啥好办法提高经验?

  •  
  •   pantingwen · Jun 17, 2017 · 5532 views
    This topic created in 3246 days ago, the information mentioned may be changed or developed.

    个人正式从事软件开发 4 年,之前一年多主要是搞 oracle 数据开发,叫 pl/sql 的开发,很少人听过吧,后来在一家小公司呆过半年,主要是 php 开发,开发了一个红酒商城系统,上线之后也没多大的流量,离职后进入现在的厂,主要是用 php 从事公司内部的一些项目的开发,平时也比较喜欢学习技术,php 相关的(各种框架,sysfony,laravel,phalcon,yaf,php 扩展开发都学习过),其他 nodejs,nginx 扩展开发,react native 都会学习一下,但是感觉没有大流量的开发经验,竞争力不足。 大家有啥建议呢?

    27 replies    2017-06-29 14:13:11 +08:00
    misaka19000
        1
    misaka19000  
       Jun 17, 2017 via Android
    去能接触到这些东西的公司
    vus520
        2
    vus520  
       Jun 17, 2017
    业务(需求) + 规模(挑战) 同时具备的平台,能让你很快成长。

    很多业务一个人一台机器一个版本一直跑,没有用户没有流量没有规则没有重构。

    上规模的中型应用,如每天亿级请求,其实拆分出来,一个人两三台机器也能抗下来,但对架构,运维,缓存,队列,异步,储存,备份,都会带来指数级的技术挑战,很快就可以让你跳出纯编程的瓶颈。

    我建议你可以看一些架构、运维、高并发场景的书、博客,提前学习,思考,等到业务场景需求上来的时候,则能提前做好规划。
    killerv
        3
    killerv  
       Jun 17, 2017
    小公司根本接触不到,去个稍微大点的公司。光靠理论是不行的。
    wdlth
        4
    wdlth  
       Jun 17, 2017
    大并发并不是什么语言就能解决的,要从整个架构去思考,一个点一个点的去优化。
    比如从缓存入手就有 OPCODE 缓存、程序中的缓存、数据库缓存等。
    030
        5
    030  
       Jun 17, 2017 via Android
    买一本 21 分钟精通 java(逃
    pantingwen
        6
    pantingwen  
    OP
       Jun 17, 2017
    @vus520 谢谢,自己平时也是比较关注这一块,也看了一些别人分享的实例 ,对高并发也有一定理解,没有实战,继续学习
    pantingwen
        7
    pantingwen  
    OP
       Jun 17, 2017
    @killerv 这个倒是真的,但是也要机会
    pantingwen
        8
    pantingwen  
    OP
       Jun 17, 2017
    @030 哈哈 咱们 php 也能应付得来高并发的吧 主要是架构问题,分流,缓存,业务逻辑细分等
    billlee
        9
    billlee  
       Jun 17, 2017
    你不是会 node.js 吗?(逃
    phpdever
        10
    phpdever  
       Jun 17, 2017 via iPhone
    借楼问一下,关于这方面的书籍或者资料,有 v 友推荐一下吗?
    aksoft
        11
    aksoft  
       Jun 17, 2017
    有句话叫实践出真知。经验只能在应用中摸索,实际架构区别很大
    sagaxu
        12
    sagaxu  
       Jun 17, 2017 via Android
    php 不适合做这个
    lyhiving
        13
    lyhiving  
       Jun 17, 2017 via iPhone
    要不自己做站做大,要不直接进大公司。技术活不能靠理论
    wu1990
        14
    wu1990  
       Jun 17, 2017
    zanphp.io swoole 等可以稍微了解下~
    wizardforcel
        15
    wizardforcel  
       Jun 17, 2017
    @sagaxu 业务层用啥语言都无所谓。
    sagaxu
        16
    sagaxu  
       Jun 17, 2017
    @wizardforcel 流量小的时候无所谓,我那个小项目,换成 PHP 需要把服务器从 3 台增加到 20 台
    pantingwen
        17
    pantingwen  
    OP
       Jun 18, 2017
    @sagaxu 从什么语言换到 php 需要增加这么多服务器,太恐怖了吧
    pantingwen
        18
    pantingwen  
    OP
       Jun 18, 2017
    @wu1990 swoole 大体学习过 workerman 看过一下源码,zanphp.io 还没试过
    sagaxu
        19
    sagaxu  
       Jun 18, 2017 via Android
    @pantingwen Java, php 7 还是太慢
    pantingwen
        20
    pantingwen  
    OP
       Jun 18, 2017
    @sagaxu 你业务主要是用来干嘛的 主要是计算用的吗 差异这么大
    sagaxu
        21
    sagaxu  
       Jun 18, 2017 via Android
    @pantingwen 流量比较大,用 JAVA 单机日 pv 过亿了,每个请求都是动态结果,不可缓存
    aru
        22
    aru  
       Jun 18, 2017 via iPhone
    @sagaxu 考虑下优化。一般不可能有这么大的差距。opcache 开了没?
    wizardforcel
        23
    wizardforcel  
       Jun 21, 2017
    @sagaxu

    我说的是,由于服务层那些组件都是拿 C/C++ 写的, 业务层用 PHP 也无所谓。

    你要是特别依赖业务层,我也没办法。
    haierspi
        24
    haierspi  
       Jun 28, 2017
    @sagaxu 竟扯蛋.. 高并发大访问量如果一台服务器.. 用什么语言都一样挂...
    这个问题压根和语言没鸟关系.... 看你的服务器集群架构是否合理了
    sagaxu
        25
    sagaxu  
       Jun 28, 2017
    @haierspi 架构合理,就能无视不同语言的性能差距了?你这也太唯心主义了
    haierspi
        26
    haierspi  
       Jun 29, 2017
    @sagaxu 那点性能提升 其实可以忽略了.. 毕竟硬件 IO 的性能就放在那... 还有成本这两个字是 很多因素的合称..
    大家都知道 C 的性能高.. 为啥大家都不用 C 去开发.. 因为人员 以及部署 维护成本太高... 道理就是这样...
    sagaxu
        27
    sagaxu  
       Jun 29, 2017
    @haierspi 事实就是,互联网公司用 Java 和 C++的可不少,那点儿性能提升,对流量大的公司非重重要。否则也不会有人花力气做 HHVM 和 PHP7 了。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   3304 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 64ms · UTC 13:44 · PVG 21:44 · LAX 06:44 · JFK 09:44
    ♥ Do have faith in what you're doing.