请选择 进入手机版 | 继续访问电脑版

ITIL,DevOps,ITSS,ITSM,IT运维管理-ITIL先锋论坛

 找回密码
 立即注册

扫描二维码登录本站

QQ登录

只需一步,快速开始

查看: 342|回复: 0

如何搭建一个拖垮公司的技术架构?

[复制链接]
发表于 2021-5-14 12:26:50 | 显示全部楼层 |阅读模式
本帖最后由 蓉ZXM 于 2021-5-14 12:32 编辑 2 k% ^; _1 R9 v2 N: u4 h# H; J

; h2 Y  ?8 D7 x+ G! ~  f      架构师不仅拿钱多,还受到程序员的崇拜、妹子的仰慕。他们走路带风、出场自带BGM,吹啊吹,我的骄傲放纵。唯一的缺点,就是费头发。架构师虽好,却不是人人都能当的,除了聪明绝顶,还要有扎实的技术功底,经过多年的努力,我做到了一点,我已经绝顶了。一名架构师,必须身经百战,经历过无数重大宕机事故。因为神枪手都是子弹喂出来的,身上的每一块肥肉都是你亲口吃出来的,无他,唯手熟尔。我作为技术Leader中最懂架构的骑手,不仅送得一手好外卖,还搞宕过不少大型系统。下面结合自己的经历谈一谈:如何搭建一个拖垮公司的技术架构?
$ K" y) Q$ P; r0 ~9 i5 T& B& l

( [" H4 ]5 q* Y2 ^. y1 z' O

: o" L2 k- y2 W# v# m, q# V6 b
   一、系统主链路尽可能单点

$ [- V# H5 Y9 S
# B$ i0 V7 u7 ^0 {% F
单点系统,就像苏伊士运河一样,一旦航道出故障,整个运输系统都瘫痪,非常酸爽。# z2 d, q+ q; T  ]* \7 J8 K7 u: f
单点就像单身,开始的时候滋味不好受,但是不用担心,因为后面你就习惯了。- k0 \3 Q- l+ f. S$ m6 C

5 ^6 A  E  W) U: J* j

9 v4 v% S/ a  F4 z3 s

" x( Q$ U5 q' r( F6 [

/ b0 I: ^+ @# ^2 v4 |4 K
二、程序中多用循环
" T' W" Q# R) o0 P2 U

0 Q* C: K: E% W' |  |
4 {. _8 u- Q8 ?  [5 R$ `9 o

, @. ]! I3 y! D. ~3 z  s& e
无限死循环,是老K最爱用的编程技巧之一,当你看到CPU利用率百分百的时候,你就知道应该甩锅给运维了。, C3 j& O. J- I7 V  ]
这年头,没点特长技能还真不行。比如我,玩得一手好乐器----退堂鼓,打得特好。2 Q% Q/ Q4 M' \: i9 w- I

6 t: C2 M8 X. u& Z: W- F. r+ y9 @% Z& ^/ _

& \0 o; u4 |3 Y4 }2 j7 X" j$ F
三、系统间增加依赖

; \- n: [: T* D' D+ l4 Y' f2 q0 ~" e( b
, ?' X2 P' H; U$ Z# ]4 w9 X2 T
在系统里增加内部依赖、外部依赖、第三方依赖。总之,能依赖的,不自己动手写。
1 p  l+ H" d( u% X! f) S/ H老K有今天的成就,主要是因为我的动手能力强,我这辈子只有两件事不会:这也不会,那也不会。3 B' b- f8 i. s* P$ v4 ?- y" F: O# ?
- G# N+ e' U7 Z- [5 _5 X% P
, R% T% T! E) e! j* {

$ i- H  r5 @* h+ C! ~# w

( y7 J6 [2 ~. ]. F. {+ F; Z3 r% j7 \$ e) y+ L- \. g$ H( h" P

8 P% s: A; h  ?1 ?0 @# q& u5 [9 `

# o6 @7 L3 g$ E7 J+ w- D1 G  q
四、不做服务补偿
$ R3 u3 T  z6 f: _" Q

, g3 D$ A; ]" g+ A) X: r; g3 p. R8 r

/ R* Y/ R: w: O  o4 D" d
很多东西,错过就是错过,没法补偿,这就是人生。2 g# E7 O' P7 h3 ~
作为架构师,要有哲学高度。所以说小伙子,你只看到了第二层,而你把我只想成了第一层,实际上我是第五层,你知道我讲的是什么意思吗?9 I* A' P5 ^4 u3 Z7 A
& ^  B: d6 x2 X: b" f) e0 T& I
: W5 I5 T/ {4 D7 h$ ^- C; O: N
9 }2 a# `- u" U# L5 m) F  [
五、不做幂等设计

5 G0 Z, {/ x# N5 n
2 h! }* l5 Y, [+ s8 p# w# N
7 i* J$ Q$ j9 i" D8 y# l

+ ~! q( O/ l- \9 H# ]+ x; X" G

2 D. z/ b6 r$ n0 y1 w
凭啥后端接口要做幂等性设计?前端提交的时候不做判断吗?全都丢给后端开发做?" k* P/ U3 T# q
大家都是打工人,人要脸,树要皮,电线杆子要水泥。
& u+ L9 s. T' H* D! y

, Z; F+ n. R; T6 p5 C
4 k# J' K# a' q
六、不设置超时

, p. U1 D: L1 i  ~7 A% ^
1 r! k7 y6 f: j5 n8 y

* ~  |( a9 |+ p- L9 B) p/ `6 {/ _2 c! K0 r( z
连接超时、读超时,有多大设置多大,不管内部调用还是外部调用,都设置成60分钟。
2 h) l0 B# v' Y. ]/ M0 s$ P只要努力搞,没有时间搞不砸的事情。做不成时间的朋友,就做时间的炮友。
" W0 a( ?# d3 q5 O4 y+ Y+ t

: r* L% Q; d) y. S+ h4 e1 m( E; C: {8 Z9 R4 F: C( B3 y& m

3 O4 O6 ~* @+ h) X& Q6 O& ?! x' T" |) B" K0 S: J3 G/ ?
  |/ l5 M4 J  Z9 i0 Y
七、不控制流量

0 g  `, E( f5 Y4 D, r3 s1 C4 w0 x4 [- b) E
+ V$ g1 O0 C; ~# q" M" L& ?1 y
让流量来得猛烈一些吧,千万别限流,什么漏桶算法、令牌桶算法,那都不如啤酒桶算法----喝完就睡,爱谁谁。
. ^8 }  ]$ d; }8 R" s9 o1 A) f还控制啥流量啊?你连体重都控制不了,趁早放弃吧。你看看八戒,走了十万八千里也没见瘦下来,而且,他还吃素。: u3 a% Q9 {7 g3 U
9 \5 k3 J& e# w

" v& J9 z  [* B$ F, h
, L9 [$ q1 K3 x" y6 N; m4 I/ T) T
- R. s' [, ~$ K+ V
八、不做监控预警
. Q& H" w0 z, W* m2 v
' J5 n3 k6 ^; k  K# M, Q

5 U  d# n8 v+ ^9 g6 |7 ?
大家都是职场成年人,做好分内事,别多管闲事。% H! D0 e# u! O1 I% [) H  V
工作几年以后,我明白一个道理:熟练的运用“关我屁事”和“关你屁事”,可以省下人生80%的时间。
# R. I8 k; L9 N1 y$ J% D6 S* W
1 |% d. G+ v! |" y1 v

7 d) L. s6 L3 L: H
2 @" w# d! b1 C6 ^/ L. H: I  \
' L: n6 p" v/ j% ^) \9 Z' J5 r! \
# j! d3 K+ M' E- Y1 F
九、没有重试策略

* O  C  l% s- P1 Y; ^; G

7 l: l# y' Y. F- l! |8 P. o; p: U2 ]$ Y' y+ g2 b4 G; e
9 V* M9 j4 s3 k; Y: g$ O- H6 t
服务调用失败,你还想重试?我可不是随便的口。7 z5 _4 c6 F) A9 ]( O; E0 L
人生不能重来,更不能乱来。不信?你让医生,给你开点后悔药,再来杯忘情水,医生立马送你去精神病院。7 J% n, F/ U. u! N$ Y( ?: s
# F+ R4 Y. b1 o) z" `; z& U. P% r- x

1 Z. P; u7 Y$ s/ l& K' _% }
十、不做系统隔离
0 F) s3 a2 ]1 ?5 u! p3 n3 a" s
3 L) Q4 S3 F( T, x

0 e2 c! T3 P6 j6 y2 _4 O
千万别做系统隔离,要挂一起挂。
5 F, k+ p& a, S/ S; Y2 l什么是真正的兄弟?就是当兄弟需要女人的时候,挺身而出做他的女人。面对困男,要排除万男,迎男而上。
% g/ D& V  a& V" H1 {3 H4 A3 ?. I* i3 S$ B1 Q/ [/ N
1 s5 ^6 |% D; A% p) e7 Y3 i
十一、代码同步调用
2 N( e2 w) T% b0 e8 l! y
7 k) A/ F' P) f# U: O" ~9 X) E% \
$ U8 P7 e2 b& i. S" ]4 }

7 `. l2 X( g% _- _( d4 G
$ C/ x9 Z3 [# f% n7 i, j5 p* Z
做系统就要步调一致、讲究和谐,尽量同步调用,多写bug。, y9 V2 I; s2 i  ^% A3 i
通常我写bug的时候,喜欢中午写,知道为什么吗?因为早晚会有报应。& ]" W$ n2 M7 m* _6 T  Q7 E
" D: U% O) b! d2 c
, i/ l5 t) o; z0 N2 f
十二、不做热数据缓存

3 ]) G2 H% g: @2 Z  
! C8 T9 }% q6 {3 x
RPC的意义是什么?就是被调用啊。疯狂地调用,是对一个服务最起码的尊重。
3 o( J) C! l% J3 b9 W4 O" |4 N  m你知道为什么大项目上线都要选个好日子吗?这么说吧,你认为上线以后还会有好日子吗?6 b: H8 o/ |1 a6 J
# H, x8 c& `( l2 ?2 G% q+ L
- ^# X  i3 G4 J8 X0 `6 t
十三、不做系统分级
' e2 M- n: ~3 L; V3 }8 _+ }

' ~% @- i3 e* _; P# d: o0 g

! Z6 z" K. L5 V
对系统要一视同仁,不要区分核心系统、非核心系统,你有考虑过系统的感受吗?6 H' K5 u; r, I. t
如果你被分门别类,你会开心吗?回想起来,小时候我们都很快乐,就是因为那个时候的我们,丑和穷得都还不是那么明显。" P" ~) x' a3 D$ P7 _
+ m' ?7 L6 ^$ W# T8 J. d! [. M/ S

" o8 z0 p, h( [$ s: A8 [
$ H2 d4 o1 |( c- r
6 _. w1 E1 ?$ q. J% @
% s" J9 x5 B$ s- D! }7 a1 T& _
十四、没有服务降级
, E* x. I/ G5 a# [9 `/ w- F  ^3 H

/ V* p0 v4 g5 I3 Y

0 x& ^! `! W6 s. e
服务降级就low了,就算宕机也要一起扛。
) |! O2 U! v& Q& n人生没有白走的路,如果有,那就是微信运动出bug了。" p9 [3 {  n. S% G2 R$ \" M) b" _  B

8 K2 e# u* l! H# O" d" H  n* C
" y9 F" ]7 a- g+ Q0 u6 b' _
, h8 J5 C4 i! q  I! D& Z
7 i; ?2 X4 W& i
; |! z1 j2 @$ U2 u
五、无灰度和回滚方案
0 x: A! v" J+ X: R

' \" t4 q( ~, B: y( G* D9 N! @- M
2 C1 Z0 j' ^$ V- h
4 ]( I$ P1 \2 G/ w& k) p- W
- k( V* p. O- P, Q
上线全凭运气,没有回滚方案!就是那么自信。+ P  W; ~1 C; v: h
我这个人,长这么大没学到别的本事,就掌握了一项特殊技能,白天不用安眠药也能安眠,晚上不用兴奋剂也能兴奋。论熬夜发布,我从来没服过谁。9 W0 r/ r; `: C. |. q. m. V0 Q
8 S- t& O+ [) {4 D

* W( W. f" c& q/ P. B2 m1 @; E' X8 H6 J! r" j0 e

5 `! b( E1 u- U( p2 s5 h2 i" D# n* u
. f8 h6 B& @" C( ~

) u& M; `! n2 q8 X" I, P5 p7 U
  十六、程序多做远程调用
7 d# F( Z4 n6 Z" r3 ]. z
  ! V+ F: h& ?7 b2 K4 y% t: ]
% [3 g6 G5 i4 s1 w  ]

, p# m& X2 `/ u0 r6 o& W: T$ b3 d. e" x9 f7 }3 W

9 m, f' J$ C% N) [$ F% f  \0 ?能远程调用的,绝不本地调用,都5G时代了,网络延迟那点事不算什么。  h* B2 }5 s- e# ^3 l0 c/ y# G
再说了,做人要有点耐心,女朋友约会迟到一小时,你敢发火吗?不敢就对了,千万别惹女人,她们是流血一周都不会死的动物。8 _5 @% D% ?$ O0 P
) n: i( B, a3 p2 Q
; t7 I5 k5 o" `
2 U" Q1 T0 L; L* v. V
4 U. W2 n  p; U( i5 k2 i5 a
十七、不做熔断机制
% j$ ~4 Y+ {0 p1 K2 d
- q8 ^  _$ o5 z; ^5 @: @
4 Y  V8 I8 Q( ~- [

& D; |1 z0 p6 e% l: M
+ l. e1 r& m2 A- ^9 o

- j) Q' h( @! }0 T: O3 n+ F! @炒股炒昏头了吧,做啥熔断机制?
3 O9 K) }" K7 l9 i  f; L% A你问过韭零后吗?基金都绿成啥样了,他喊熔断了吗?作为韭菜,学费还是要交的,趁年轻的时候多交点,这样到老了再交你就习惯了。
( |2 e* s  ~2 I  T. j5 o  g* }7 O
  V. \, T* j: R4 a- l9 X: W& i

8 t, f5 G+ x) S, M  Y/ U, z4 e2 I8 K& M6 ~1 a. `' n6 K
" ^# i3 G; j! Q
十八、不做代码扫描

1 T) G- A  M' q4 s* [+ z
5 I7 O0 }7 G, M' ?

$ K* N! I/ g: V+ K9 P. C
要有工匠精神,自己代码自己review,机器哪里懂得欣赏你的代码艺术?& A( B6 V# v8 A- [
我那骚气的注释、奇妙的函数、神乎其技的Copy/Paste。每次看代码,都被自己的才华吓到。
, F2 k8 z9 U# _+ N: A0 B
7 ~$ n$ D& l. ?) B

! n- M3 D7 s% _0 H0 ]( E) ~9 s* S; x4 H- T) r9 Z

0 q* ~$ C8 N, ]# Z7 u# M4 g1 ]
% P4 W) b. j5 Z8 {
十九、不做线上压测

4 v  r; D2 x7 ]% X! K7 \6 t- w( g+ N* b& p" }' q
( \2 q/ @. Q) V
上线就完事了,后面的事情交给菩萨吧。
, [+ R* q6 |' n一分耕耘,一分收获。天下没有免费的午餐,所以我一般都睡到下午才起床。
; v: W: E7 z1 e' N2 Y9 y
9 z# o, E4 z4 l5 I, m& T

5 \5 u' b+ K( T/ W0 |) ]8 K2 a* f

! I0 f# g7 A: s0 t3 u8 }& m. m: w
+ r' }+ S: E+ y) `
结 语

' @% o1 o) I, d6 o9 f! g" _

( H: S( _, J( ^# O6 N" E$ p+ Y% q
5 F: x! F7 v" k
/ ]/ _  K7 y8 R0 M+ Y3 l. n/ {. Y. D
架构设计的骚操作还有很多,以上任意一项玩到极致,都足以把公司搞垮。
; j9 a  f( V: p% M架构师是最接近圣人的职业,优秀的架构师每天都三省吾身:早饭吃什么,午饭吃什么,晚饭吃什么。最后,愿上帝保佑每一位吃饱饭的架构师。(IDCF)
1 l# Z% ?% `$ T4 _1 t9 [7 N  R2 T8 M




上一篇:DataOps、MLOps 和 AIOps,你要的是哪个Ops?
下一篇:高效接口测试的策略、原则、结构与实践技巧
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

参加 ITIL 4 基础和中级专家认证、v3专家升级、DevOps专家认证、ITSS服务经理认证报名
本站关键字: ITIL| ITSM| ISO20000| ITIL培训| ITIL认证| ITIL考试| ITSS| ITSS培训| ITSS认证| IT运维管理| DevOps| DevOps培训| DevOps认证| itop| itil4| sre| 开源ITSM软件

QQ|ITIL先锋论坛 ( 粤ICP备11099876号 )|appname

Baidu

GMT+8, 2021-12-3 00:05 , Processed in 0.132883 second(s), 28 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表