目前是 php,thinkphp5.0
我的感觉是 php 又背锅,让我们看看 Java 书,3K 左右的日活就是这样,php 都没玩的怎么样,就要上 Java,之前还提过要换 nodeJS …
目前对公司程序的了解,问题是在数据库方面,无内部编码规范,数据库设计规范,导致数据库结构惨不忍睹,有很多在我去之前遗留的数据库设计问题,不同属性的数据存在同一个字段里…本人虽然技术一般,但对技术规范代码质量等还是有一些追求的
怎么变成吐槽了…干的就是没那么顺心
![]() | 1 toarya 2017-12-17 19:08:32 +08:00 微博不也是 PHP 么,和语言关系不大。 |
![]() | 2 loading 2017-12-17 19:09:19 +08:00 via Android php 哪个版本,7 不是很彪悍吗? |
3 firefox12 2017-12-17 19:14:22 +08:00 via iPhone 3k 日活是什么项目?能养活一个公司吗? |
![]() | 4 nosay 2017-12-17 19:14:48 +08:00 ![]() 脱离了当前开发人员的技能水平,然后讨论上哪个语言,有什么意义?现学现卖,真不把 java 当回事啊... |
![]() | 5 sagaxu 2017-12-17 19:15:35 +08:00 ![]() 我司 app 日活是你 1000 倍以上了,照样用 PHP 扛住了啊 |
6 zhx1991 2017-12-17 19:16:03 +08:00 ![]() 3k 和语言没啥关系 |
![]() | 7 wxsm 2017-12-17 19:18:47 +08:00 via iPhone ![]() 现学一个月 java,不知道能扛住 300 不 |
![]() | 8 zjsxwc 2017-12-17 19:20:13 +08:00 楼主自己都说了是数据库方面问题了(数据库设计以及 SQL 查询效率问题),那么楼主领导让他换 Java,就是外行指挥了,跳槽吧 |
![]() | 9 prolic 2017-12-17 19:20:55 +08:00 3k 日活都吃不下还是想想其他的问题吧,php 达到 300qps 还是毫无压力的 |
![]() | 10 alwayshere 2017-12-17 19:22:34 +08:00 这就好比一个日访问量 3k ip 的网站,用 php 行不行?别说 php,你用小霸王做服务器都行,这么小的访问量,php 不背这个锅 |
![]() | 11 alwayshere 2017-12-17 19:23:56 +08:00 忘了说了,我手上一个曾经 3k ip 的站,自己用 php 写的,平均在线 30 人,还不是一样跑的飞起 |
12 zj299792458 2017-12-17 19:26:41 +08:00 via iPhone 这么小,用 python 就够了 |
13 bramblex 2017-12-17 19:29:45 +08:00 ![]() 日活 3k ... 我们这些专业 php 黑都看不下去了... |
14 bramblex 2017-12-17 19:30:42 +08:00 |
![]() | 15 jtsai 2017-12-17 19:43:24 +08:00 via Android ![]() 你们有考虑换过一个运维人员吗? |
![]() | 16 dangge 2017-12-17 19:46:19 +08:00 ![]() 你们需要请一个 DBA 来咨询. |
17 laohubuchiyu 2017-12-17 19:55:17 +08:00 ![]() 哪个公司的瓶颈在语言啊 |
![]() | 18 tomczhen 2017-12-17 20:01:03 +08:00 ![]() 已经上线的项目,就算能解决初期造遗留的问题也需要很大的代价技术债务越晚偿还代价越高,根本不是多个岗位能简单解决的事。 要是真有专业点的运维或者 DBA 也根本不会出现现在的问题。 说白了就是“短期高估”期望一个运维 /DBA 能解决所有问题;“长期低估”运维 /DBA 又没多少工作量,专门请一个太浪费,让开发顺便干了就行。 |
![]() | 19 beginor 2017-12-17 20:08:15 +08:00 via Android ![]() 应该花心思重构数据库了吧 |
20 Lax 2017-12-17 20:10:25 +08:00 via iPad 做容量评估了吗,做高可用了吗,做备份(和恢复)方案了吗? 本人长期提供兼职运维咨询服务,欢迎联系。 |
21 eDeeraiD0thei6Oh 2017-12-17 20:11:38 +08:00 直接说什么 app 大家分析帮你 |
![]() | 22 chinvo 2017-12-17 21:13:23 +08:00 直接说什么 app 大家以后好躲着点 |
![]() | 23 lhx2008 2017-12-17 21:16:09 +08:00 php 3k 撑不住,java 3k 的时候肯定已经挂了 |
![]() | 24 pynix 2017-12-17 21:31:52 +08:00 不同属性的数据存在同一个字段里? json serializer |
![]() | 26 chinvo 2017-12-17 21:38:19 +08:00 优化数据库啊 之前重构一个系统,只重构了数据库和数据抽象层就得到大幅度性能提升 |
![]() | 27 winglight2016 2017-12-17 21:47:47 +08:00 这点用户量,整个系统推翻了重做代价比较小,不要想着重构了,这种活就是撵人走的 |
![]() | 28 Moker 2017-12-17 21:58:59 +08:00 肯定不是语言问题 |
![]() | 29 alcarl 2017-12-17 22:26:16 +08:00 via Android 就算数据库结构设计的再奇葩,只要适当加些合理的索引,然后堆硬件多核心 24 核心以上加大内存 64g 以上,扛 3000 个日活绝对毛毛雨。。。。。 |
![]() | 30 jiangzhuo 2017-12-17 22:27:05 +08:00 楼主是不是少打了一个 W 是 3kw 吧 |
![]() | 31 oswuhan 2017-12-17 22:49:41 +08:00 可以考虑下使用 BaaS 服务。国外的 firebase,国内的 leancloud、野狗、bmob,还有一个知晓云,不过该平台貌似专注微信小程序开发。 |
![]() | 32 HanSonJ 2017-12-18 00:32:37 +08:00 平时大家黑 PHP 我都是笑笑不说话。这次忍不了,强行甩锅的节奏,重构数据库吧 ![]() |
![]() | 33 realpg PRO LNMP 单古董物理服务器 日千万请求无压力…… |
![]() | 34 Kilerd 2017-12-18 00:50:49 +08:00 日活 3k,平均下来 撑死就 100QPS 吧。 这点请求 php 都搞不定,那就是你家程序员该背的锅了。 |
![]() | 35 Axurez 2017-12-18 06:48:56 +08:00 要不你试试 swoole ? |
![]() | 36 Axurez 2017-12-18 06:49:28 +08:00 也不用说「据我了解」,直接 profile 一下给他看呗 |
![]() | 38 t2doo 2017-12-18 08:27:32 +08:00 俺那小破公司,日活最多 10 吧,Java。。。我只想说,跟语言没关系哈 |
![]() | 39 ob 2017-12-18 08:31:21 +08:00 via Android 我觉得有机会多学一门语言应该是好事,哈哈 |
![]() | 40 opengps 2017-12-18 08:39:03 +08:00 合理的架构,后端用啥都行 |
![]() | 42 to2false 2017-12-18 08:48:55 +08:00 via iPhone 日活 3k,在用 java,要不要用 c++重构(狗头 |
![]() | 43 Takahashi 2017-12-18 08:59:18 +08:00 ![]() 日活 3K。。高级黑 |
44 SourceMan 2017-12-18 09:00:45 +08:00 via iPhone 你这个黑的很有水平 |
![]() | 45 anteros 2017-12-18 09:03:19 +08:00 用机器码 01 吧,不然还真扛不住呢。 |
![]() | 46 Norie 2017-12-18 09:09:29 +08:00 php 被黑得最惨的一次,黑得不知不觉 |
![]() | 47 afeicool 2017-12-18 09:10:01 +08:00 你们领导应该是行家,用 php 天天完事就可以走了,用 java 天天加班,这样看起来大家都更努力。 |
48 alber1986 2017-12-18 09:19:54 +08:00 php 码农路过,表示这个锅我们不背 |
![]() | 49 knva 2017-12-18 09:22:36 +08:00 PHP 3k 都撑不住,java 估计早挂了. |
![]() | 50 RorschachZZZ 2017-12-18 09:26:34 +08:00 楼主是故意来黑 php 的吗。。。 。 |
52 killerv 2017-12-18 09:34:58 +08:00 日活 3k 就把锅甩给语言…… |
![]() | 53 8355 2017-12-18 09:39:40 +08:00 3000 日活关键还是看并发多少. 如果只是少量并发常规访问的话 512 机器都扛得住. 你跟老板聊聊 给点时间重构一下上 php7.如果做的好年后涨点工资. |
![]() | 54 gamecreating 2017-12-18 09:40:30 +08:00 你让我们游戏服务器 同时在线 1 万人怎么想 .... 日活 3000 用 asp 都够了 |
![]() | 55 YMB 2017-12-18 09:42:47 +08:00 我能告诉你,阿里也用 PHP 吗。 纯属架构问题! |
![]() | 56 l9rw 2017-12-18 09:44:30 +08:00 这种量级瓶颈大多在数据库,这个锅 php 不背 |
![]() | 57 OMGZui 2017-12-18 09:45:00 +08:00 就目前来看,请去说服你的领导 |
![]() | 59 lianxiaoyi 2017-12-18 10:10:46 +08:00 这锅 php 不背,老衲单一个验证接口日活都在 800 多万以上,(4 台 2 核 4G 服务器,平均跑在 25%,遇到大户同时请求,就会有一台 CPU 到 80%,用的 DNS 负载均衡,国内带宽太 TM 贵了),日志服务器用的一台 1 核 1G 的服务器,这台服务器 php 层日请求超千万,python udp 层日请求量超 3000 万(流量太贵,所以用的 udp ),现 CPU 跑在 20%。。好好整理你们数据库才是关键。。。。 |
60 yujieyu7 2017-12-18 10:25:22 +08:00 这公司没前途,早点撤吧 |
![]() | 61 colinlet 2017-12-18 10:26:10 +08:00 我们项目日活百万,并发上千,php 也没有背锅啊,就是负载均衡+缓存+MySQL |
62 0ZXYDDu796nVCFxq 2017-12-18 10:27:19 +08:00 并发 3K 再来考虑语言问题 |
63 jjx 2017-12-18 10:33:27 +08:00 先说数据量 再说需求 比方说总是对百万以上的数据做汇总查询, 那怎么优化都快不了, 类似这样的需求都是以前做 c/s 企业软件的, 转到互联网带来的, 互联网应用对响应要求高, 老早的桌面内部应用对响应要求低, 在互联网化时需求需要响应调整 |
![]() | 64 zhengxiaowai 2017-12-18 10:40:14 +08:00 3K 日活???? Python 不用优化分分钟扛下来 |
![]() | 65 sagaxu 2017-12-18 10:44:58 +08:00 同事一说都是三五年以上的 phper ~~~~~~~~~~~~~~~~~~~~~~~~~ 是一个月的经验重复了三五年,还是成长了三五年? |
66 xuanyan 2017-12-18 10:58:23 +08:00 百万日活,php 都扛得住,跟语言关系不大 |
![]() | 67 skadi 2017-12-18 11:02:07 +08:00 先做一下 性能分析吧. 看看瓶颈在哪. |
![]() | 68 run2 2017-12-18 11:04:10 +08:00 应该是这个吧 https://www.jaadee.com/ 那么为啥后台最先选型时没有选已有的开源架构而是用 thinkphp 做了呢 ? |
![]() | 70 lwbjing 2017-12-18 11:11:55 +08:00 PHP 要是能说话,肯定要骂一句 mmp |
![]() | 71 vus520 2017-12-18 11:14:59 +08:00 每秒请求 3000 的业务照样 php |
72 gaoxu387 2017-12-18 11:36:11 +08:00 不如想想为什么会这样,解决问题才是最重要的,是数据库慢查询?是某些接口里有 curl 请求太慢?是连接了缓存服务器导致的? 看看数据库的慢日志、缓存的慢日志、php-fpm 的慢日志,结合 app 的日志、xdebug、strace、gdb 分析分析吧 |
74 satanandroid 2017-12-18 11:43:52 +08:00 后台同 thinkphp 日活 10W php 表示,这个锅我不背 |
![]() | 75 sutra 2017-12-18 11:45:15 +08:00 要想横向扩展,主要看架构,不是语言。 |
76 wekw 2017-12-18 11:56:56 +08:00 只可能是数据库问题 |
77 LukeChien 2017-12-18 12:02:43 +08:00 via Android 上 Java 也不行,得上 Oracle |
![]() | 78 vjnjc 2017-12-18 12:09:36 +08:00 话说改数据库字段的话要改查询代码的吧。。。 这种情况简单粗暴是不是只能开索引,堆硬件?也不能拆到多台数据库服务器吧? |
79 leibusi 2017-12-18 12:57:50 +08:00 via Android 又黑我大 PHP |
![]() | 80 likuku 2017-12-18 13:05:16 +08:00 工作资历长短,和能力并不能直接划等号,职场里这是常识了吧。 |
![]() | 82 cnbattle OP ![]() @vjnjc 已经到了加索引和缓存不能解决问题的地步了,服务器是分布式数据库集群,话说公司服务器是个大牛,给 freebsd 贡献代码的人,都是一开始数据库表设计不好,还有一个内部需要变更太频繁 |
83 mrzero 2017-12-18 13:16:46 +08:00 你得知道性能瓶颈在哪才能优化啊…… 3k 的日活,能有啥瓶颈 |
84 atcdef 2017-12-18 13:19:15 +08:00 这类型的后端,应该是以读为主吧,既然这样的话,如果性能瓶颈确实出在数据库上,直接上多个数据库副本,分摊一下查询请求,把眼下的问题先应付过去再说。然后再慢慢想办法重构也好,重做也罢,走人也行,看着办,哈哈 |
85 we3613040 2017-12-18 13:19:59 +08:00 垃圾啊,日活 3k,关语言什么关系,素质不行明显 |
86 mrzero 2017-12-18 13:21:19 +08:00 先把慢查询一个个找出来,改表结构、迁数据,加索引;再不行加 proxy 上 MySQL 集群;然后如果是读多,加一层 redis 缓存……但我感觉日活 3k …… emmmmm |
![]() | 87 woshipanghu 2017-12-18 13:34:35 +08:00 说分布式 集群 缓存的好笑不好笑 3k 日活 1 核 1g 的服务器都稳稳的处理了 还需要那么多花样? |
![]() | 88 Moker 2017-12-18 13:36:28 +08:00 谈谈数据量吧 加了索引和缓存都还不行? |
![]() | 89 cnbattle OP @woshipanghu 我说的只是 app 日活 pc 的也是在一起的,具体不详 |
![]() | 91 for8ever 2017-12-18 15:32:22 +08:00 用 Node.js 吧,自学 3 小时后就可以了,日活 300k 都没问题 |
![]() | 93 funcman 2017-12-18 18:09:33 +08:00 这个日活,随便写个 PHP 挂到应用云上不就行了。 |
![]() | 95 tomczhen 2017-12-18 19:08:09 +08:00 @slgz 技术债务总是要还的,只是什么时候还,由谁来还的问题。并不是说不欠债就是好的,有时也会为了一些妥协而主动选择债务。 再说了,项目没到还债的时候就死掉的也是很多的。不管是主动选择还是被动,债务只要可控就是可以接受的大不了离职嘛 \_(ツ)_/。 通常说的解决方案就是重构,不过出于自身利益风险考虑我觉得更多人都喜欢重写毕竟就算是一坨屎也是自己的香一些。 我只是一个负责背锅的运维,代码重构的经验还是让开发来传授吧,毕竟他们经验比较多 :doge: |
![]() | 96 tanszhe 2017-12-18 20:43:20 +08:00 是来搞笑的吧,3000 日活太小了 几乎就是九牛一毛 忽略不计 |
![]() | 97 alcarl 2017-12-18 21:57:36 +08:00 via Android @cnbattle 3000 日活的 app 还有缓存的分布式数据库集群。。。。。。。。你这三千人是每秒操作一百次以上录入 50 条以上数据的机器人吗?( ̄へ ̄) |
![]() | 98 Sapp 2017-12-18 23:42:47 +08:00 via iPhone go、ruby 五年经验的可以当十年用,php 五年的你就当两年用,这样就不会出问题了,真不是看不起这个语言,而是 php 用的公司太多了,大量的低端外包公司都用他,你根本不知道他是不是做了五年的建站。 |
99 LJ2010 2017-12-20 13:06:32 +08:00 和 php 有毛关系。。。90%都是代码问题,如果真是 php 有问题。。那么 baidu,facebook 什么的还用 php 干嘛? |