Soft_Job 板


LINE

我觉得你对 C10K 可能有误解 以你文中的例子来说: "据上个月vpon座谈 如果我没记错 最复杂的子系统 qps约6000~7000左右吧?" 这并不代表他们的系统没有达到 C10K 标准 C10K 的背後意义是什麽 ? 我的理解是硬体跟架构要恰当, 在合理的硬体条件下, Concurrent 数量要合理 并且随着 clients 数量提升越来越高, 系统的资源花费不会离 Linear 差太远 这跟後端背後的应用相当有关系, 我认真觉得後端一定要学好 C / C++ 以及 Linux Kernel 背後一些重要参数的意义 後端要碰的坑可多了, 例如一个不太懂 Linux 的人, 即使写出可以跑的程式 他可能也会在 scale 越来越大的时候碰到 ulimit 内的限制问题而不自知 然後就出包了, 还是在半夜出包, 等着收一堆客户抱怨信 资深的因为踩过一堆坑, 就能在系统开发初期就预料到可能会碰上哪些问题 这些都是经验累积而来的, 後端要做到很好难度确实比前端高不少, 要踩的坑太多 还没踩到只是你还没碰到而已 (也很可能跟际遇有关, 没有合适的环境跟应用去踩坑) 就算想做前端, 最好也是要稍微摸一下後端, 不然後端对你来说只是黑盒子 身为一位 RD, 应该勇於解开所有黑盒子, 了解透彻, 减少自己未知的领域 ※ 引述《stillboy (joey)》之铭言: : 我自己full stack 对两端都有粗浅的了解 : 但 : 看到这麽多前端的hater就觉得无奈QQ : 你不懂前端 你要说啊! bro : 客观来说好了 台湾的後端?? : 除了几家走出国际的大数据公司 or 本来就是国际大公司 : 有多少公司的後端达到C10K的等级? (新手不知道的 请自行Google) : 据上个月vpon座谈 如果我没记错 最复杂的子系统 qps约6000~7000左右吧? : 如果连C10K都没有的话 这种规模和复杂度就不要拿出来嘴惹 : 如果是大陆的一二线软体公司的後端 C100K C1000K都有 : 这种後端 我举双脚和双手赞成 如果是台湾的 : 台湾 除了少数的公司 其他去了 就算年资10年 最後还是领低薪 : 解决问题的scale就在那里 ..你解决问题的等级多高 薪水就多高 : 领底薪也是合情合理 : 然後 : 顺便厘清一下 : 真正的前端 跟 美术 : 一 点 关 系 都 没 有 : 说有关系的 大概还停留在dreamweaver 和 fontpage的时代吧 : 或 所待个公司和产业 太过老旧. : 在现代 : 美术和体验的职位 叫做『UI/UX』 看公司大小 有些公司例如Google : 会再细分 叫做 UX researcher 这种相关职等的人 会跟工程的人有许多讨论。 : 前端在近10年来因为硬体日新月异 导致client端能做的事情变爆干多 : 原本的架构是後端处理所有的事情 client端收到资料 显示出来 : but 现在可能一个页面有几百个api的需求 加上行动装置的出现 : 导致原本back-end request数量变超级大 : 比较烂的解法当然就是直接买更多机器 但成本会变很高 : 所以 有人想 既然前端硬体效能变好 那为啥不好好利用前端? : 所以前後端分离出现了 也就是所谓的SPA 之後为了改善SEO and initial loading slow : 的问题 又走到了 进阶版的server-side rendering 但是 based on SPA. : 走到这个SPA level之後 前端有自己的server 後端也有自己的server : 因为这样的配置 导致後端的工作量大为减少 而把这些工作量丢给client端 : 从而後端可以handle更多的工作量 : 所以为啥会看到 有些前端职位的需求要会redis node.js nginx : but 这只适用於不需要太复杂的情况 复杂一点的情况的client server : 还是需要考群以及分散式的需求 这样的话 可能还是会由後端来处理。 : 而此时的前端基本上就变成应用程式软体一样 : 需要什麽资料跟後端要 要回来自己处理 : 同时也要效能 安全性 兼容性 design pattern 也是不容忽视的一环 : 所以说 为啥前端有些你看徵才文 薪水不比後端差 : 就是因为前端 早就不是以前的前端了 : 最後总结一下 : 走到极端的後端 VS 极端的前端 : 论复杂度 毫无疑问 後端屌打前端 : 但前提是 产品的scale要很大 (例如server的数量及至少至少要 > 50) : 且 有很多real-time和巨量的数据的issues需要处理 : 这种架构以上都是分散式或微服务 跨区以上的等级 : 需要处理很多race condition/一致性/...等 复杂的问题 : 而一堆公司的後端常常会包含DBA 那就更复杂 : 如何取舍该功能是使用sql or nosql 并且对sql or nodql底层原理有通盘的了解 : 但台湾走到这种scale的软体公司 屈指可数 : 所以如果要在台湾工作的话 选自己爽的比较重要 : 什麽叫做自己爽? 有些人天生喜欢面对client 喜欢面对画面 : 有些人喜欢always面对程式码 有些人喜欢自己写一些web or app应用来玩 : 只要你在任何一端强的话 薪水早就不会是什麽大问题了 : 当然普遍来说 後端天花板会比较高 : 最後 不建议新手 走什麽full-stack拉 : full-stack 要顾 前後端 devops 然後五年後 全部都半桶水(半桶水其实是很高估) : 很多事情欲速则不达 full-stack代表你要做的事情就是爆干多 : 根本没时间反刍 根本没时间好好理解原理 基础根基根本就不稳 : 比较好的path是你先走任何一端5~7年以上 再走任外一端5~7年以上 : 先把一端的基础好好打好 念熟 到讲一堆观念 就像吃饭喝水一样的解释给旁人听 : 当然一个最重要的前提是 你们公司做的产品是很有挑战性的 : 所谓有挑战性就是 後端至少朝C10K 甚至C100K走 : 前端 朝做tool走 而不是一直在那边单纯无脑刻画面 : 而不是 product的 level一直在 0~1 1~10打转 : 在这种有挑战的公司各呆至少五年 我想 应该可以自称 junior full-stack惹 : 看到一堆人 写没几年 react+node.js+mongoDB就自称full-stack : 问他为什麽是node.js 为什麽mongoDB 也说不出个所以然 : 也是没错 大概是产品scale < 100 简单应用的 full-stack . 也没啥问题! : 好拉 讲太多惹 大概是这样 --



※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 1.160.93.30 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Soft_Job/M.1576552011.A.5AE.html
1F:推 v420746k: 推减少自己未知的领域 12/17 12:43
2F:→ stillboy: 我没说vpon没有具备C10K的架构规模吧. C10K对我而言 就 12/17 14:49
3F:→ stillboy: 像一个後端工程师的里程碑而已,至於坑 任何领域都有吧 12/17 14:49
4F:→ stillboy: 个人浅见 参考吧 12/17 14:50
通常前端的坑, 越补只是越被牵着鼻子走而已 因为太过於 high level, 反而容易变动 例如 IE / Edge / Android / iOS / react / .. 更新 你的某个 UI 元件就坏掉了, 然後你就势必要 hotfix hotfix 完了可能也一知半解 而後端的坑, 以 Linux 来说好了, 你碰到的坑会有大量的 source code 辅助 这些 source code 可以慢慢累积该有的经验, 这种经验不太容易因为时间变得没用 简而言之, 差异就在, 後端你可以越学越举一反三, 学到的不容易过时 前端的东西没几年你可能就过时了 (几年前哪来的 vue.js ?) 当你年纪越大, 越需要这种容易随着年纪也带着走的经验 ※ 编辑: kloer (1.160.93.30 台湾), 12/17/2019 16:24:27
5F:→ Hsins: 一知半解是开发者本身的问题吧?以前端这几年的发展来说, 12/17 17:16
6F:→ Hsins: 朝着工程化的方向前进,因为 UI 所以更重视函数式编程范式 12/17 17:17
7F:→ Hsins: ,这两个後面的概念并不太会随着时间过时,会过时的是那些 12/17 17:18
8F:→ Hsins: 纯粹调 API 使用的。 12/17 17:18
当然不会完全过时, 但是以会过时的比例来说, 前端是相当高的 10 年後谁敢保证 react / angular / vue 还占有一席之地 ? 但是 10 年後蛮可以保证 C / C++ / Linux 还占有一席之地 这两者的信心程度是不同的, 容易过时的程度差太多 ※ 编辑: kloer (1.160.93.30 台湾), 12/17/2019 17:33:14
9F:→ Hsins: 不是啊…你拿三个框架来跟程式语言和作业系统比欸… 12/17 17:40
因为我玩的後端已经太靠近系统了, 几乎不太需要而外引用绚丽的框架 所以我才会这样比 当然後端也有些如 redis / memcached 之类 10 年後可能也有新东西出现, 但是差别在於 就算有新东西出现, 你用旧的东西也比较不会有过时的感觉 这种感觉有点难解释, 除非架构与效能有极大差异 不然你都不会觉得这个老东西过时了, 还是用得很开心 反之前端可能就不同了 应该不少人还记得 Yahoo 以前风流一时的 YUI ? 现在拿来用也是可以用啦, 跑是能跑, 但是给外部的感觉就是另一回事了 ※ 编辑: kloer (1.160.93.30 台湾), 12/17/2019 17:50:18
10F:推 superpai: 标题是web前後端,你用C写web吗? 12/17 19:10
11F:推 gg90052: 要跟C比的话,20年前我学JS,现在要2020了我还是在用JS 12/17 22:59
12F:推 b85040312: 推楼上 12/18 08:27
13F:推 anandydy529: Java可以从Symbian写到Android 12/18 12:34
14F:推 chatnoir: 10年後JS还是会占有一席之地der 12/18 14:40
15F:推 as30385438: 20年前的JS跟今天的用法差太多了 能这样类比吗... 12/18 18:57
16F:→ gg90052: 所以20年前的C跟今天的C用法一样吗? 12/18 19:31
17F:→ x000032001: cpp表示 你们在吵甚麽 12/18 20:59
18F:推 b85040312: 组语表示: 12/18 21:57
19F:→ arthur104: 拿语言比框架是什麽鬼? 12/19 00:46
跟什麽比什麽无关 我上面说了, 是我个人的後端玩得比较接近系统 根本无需要套用框架, 我才这样比 或许你可以提出一下该什麽比什麽, 然後提个合理的理由为何要这样比 重点其实也不在於後端比前端好, 而是两者都应该碰 但是我会偏向推荐後端, 比重大概是 70% 後端 30% 前端 ※ 编辑: kloer (1.160.91.182 台湾), 12/19/2019 10:13:05
20F:→ Hsins: 不是啊,我提了啊,前端真的该理解的是为什麽函数式编程的 12/19 11:15
21F:→ Hsins: 编程范式会被各框架广泛的应用,而不该着重在 API 与框架使 12/19 11:15
22F:→ Hsins: 用上。 12/19 11:16
会提到框架原因是, 现代前端你不用流行的框架你就落伍了 偏偏这些流行的框架可能也不这麽持久 ※ 编辑: kloer (1.160.91.182 台湾), 12/19/2019 11:29:13
23F:→ Hsins: React 到现在也六年了。你怎麽不说 C++ 不用上 14 17 的特 12/19 11:33
24F:→ Hsins: 性落伍?还在用 Python 2.7 算是落伍,过几天就不再支援了 12/19 11:33
25F:→ Hsins: 你说的我都同意,就是比的点很奇怪... 12/19 11:43
比的点不是这麽好我同意 我的点在於前端比後端更容易变化 所以我一律推荐後端比重要高一些
26F:推 b85040312: 我也看过公司坚持不用框架 JQ 也不用 只用原生写网站 12/19 12:16
27F:→ b85040312: 抄屌XD 12/19 12:16
28F:→ b85040312: 说真的框架的效果只是有一个规范而已吧?如果理解底层 12/19 12:16
29F:→ b85040312: 用原生要写一样的效果也不难吧 12/19 12:17
※ 编辑: kloer (1.160.91.182 台湾), 12/19/2019 13:44:13
30F:→ Hsins: 当系统越趋复杂,会遇到硬体上资源的限制,有些状况并不是 12/20 01:19
31F:→ Hsins: 硬体设备不足够的问题,所以越复杂越大的架构要碰到系统端 12/20 01:20
32F:→ Hsins: 越需要计算机基础学科的支持,这也是後端越往深挖会遇到的 12/20 01:20
33F:→ Hsins: ,想当然而要处理这类问题时,语言也不会是太高阶的。这些 12/20 01:21
34F:→ Hsins: 都没毛病。至於说不用框架这件事,框架或者函数库的使用, 12/20 01:22
35F:→ Hsins: 就是工程化的体现啊…你有可以用的东西,还是那些在大公司 12/20 01:23
36F:→ Hsins: 或开源界大老弄出来的,你要自干还是跟着用? 12/20 01:23
框架当然必须要用就该用 我的重点一直都不是该不该用框架 而是前端比後端变化快, 所以造成这些东西不容易累积 ※ 编辑: kloer (1.160.91.182 台湾), 12/20/2019 10:12:04
37F:推 Hsins: 所以我在一开始的推文有说,该深钻的是 paradigm,为什麽会 12/20 12:22
38F:→ Hsins: 有这些框架出现。後面用不用框架那段是回 b85 啦 12/20 12:23
39F:→ johnny94: 前面说的挺好的,但是回应部分总觉得容不进其他想法 12/20 12:55
会有这种感觉是正常的, 不是容不进其他想法 而是网路上文字打打很难描述清楚真实的想法 描述不清的情况下就会有这种排斥性 A 觉得 B 说的错, B 也觉得 A 说的错 这是还好, 不要有太错误的东西都是可容忍的 ※ 编辑: kloer (1.160.91.182 台湾), 12/20/2019 13:45:06
40F:推 BignoZe: 前端目前趋向稳定期了 是个可以进场的好时机 12/22 12:36
41F:→ b85040312: 楼上怎麽说 12/22 13:04
42F:→ acgotaku: 感觉楼主也陷入软工的歧视链 01/07 18:58
43F:→ acgotaku: 低阶语言歧视高阶 後端歧视前端 非框架歧视框架 01/07 18:59
44F:→ acgotaku: 其实我跟我同学同事对开发都有一个共识 01/07 19:00
45F:→ acgotaku: 就是先开发出来能上线才是赢家 01/07 19:00
46F:→ acgotaku: 现在产品周期太快了 很多产品没考虑优化前 01/07 19:01
47F:→ acgotaku: 就已经走不下去了 01/07 19:02







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:Tech_Job站内搜寻

TOP