2023年2月

如何规划自己的人生
  

1、人的生涯规划是新时代的潮流,现代人的课题,生涯规划愈早做愈好,胜算也愈大,而且愈到
老愈受用,自己不但要早做生涯规划,让自己活出快乐人生,而且要做子女、学生、员工的生涯贵
人,为他们生涯点灯,协助指导他们适性发展。生涯即人生、生涯即竞争,生涯规划就是个人一生的
竞争策略规划。
  

2、生涯要规划,更要经营,起点是自己,终点也是自己,没有人能代劳。
  

3、生涯规划就是规划人生的远景,彩绘生命的蓝图,发挥自己的才能,写出人生的剧本。
  

4、生涯规划包括如何成长、学习、谋生及生活,是一连串思考、选择、计划、打拼、发展的终生
历程。
  

5、生涯规划的目的,在于掌握住现在。看得见未来;促进自我了解、自我定位、自我发展及自我
实现。
  

6、成功的人生,需要自己去经营,别再说了,莫再等了,现在就为自己的人生做好规划,为人生
点亮一盏明灯,赢在人生起跑点上。
  

7、人生是一趟旅行,只卖是单程票,不卖回程票。
  

8、时间就是生命,人生何其短暂,请珍惜有限岁月,活出自己,活出生命。
  

9、人生之路要自己走,要过怎样的人生,完全是自己的选择,只有自己才能赋予生命最佳的诠
释。
  

10、人生像演员,不同的场合,不同的阶段,扮演不同的角色,重要的是,无论演什么,就要像
什么。
  

11、人生的愿望,在于:成为自己的老板,掌握自己的命运,主宰自己的时间,创造自己的快
乐,追求自己的幸福。
  

12、人生的标的,在于:感觉被欣赏,人格被尊重,成就被肯定,生而能尽欢,死而能无憾。
  

13、生活的目的,在于:活得实在,活得自在,活出健康,活出品味,活出快乐,活出豪气,活
出尊严。

14、人生最重的事,不是您现在站在何处,而是您今后要朝那个方向,只要方向对,找到路,就
不怕路远。
  

15、成功的人生,胜于成功的事业,一味追求事业的赢家,最后可能变成人生的输家。
  

16、佛前的灯,不必刻意去点,最重要的是,点亮自己的心灯,知道自己的起跑点及目的地,想
出最适合自己的方式,按部就班跑向目的地。
  

17、人的一生,是一连串决定交织而成的过程,其精华在于自己如何选择。生命的最高境界,就
是选对舞台,尽情挥洒才华,走出自己的路。
  

18、人生成功的定义,要自己去找寻;人生快乐的感觉,要自己去诠释;千万不要迷失在别人的
看法中。
  

19、价值观,就是我们对事物好与坏、对与错的看法,我们觉得好的、对的、重要的、应该的,
都代表了我们的价值观,因人而异,系于一念之间。
  

20、在对人、对事方面,如果能尽量选择朝愉的方向去想,就会愈来愈感到愉快。
  

21、一个人只要想法愿意改变,事情就有转机,改变的意念会愈强,胜算就愈大,成功的机会,
远留给拥抱变化、渴望改变的人。
  

22、人生是计划的过程,计划的主人是自己,计划做得具体,执行做得确实,胜算必然属于自
己。
  

23、积极的人,充满乐观,展现活力,总是知道自己的方向,要的是什么?更清楚地知道,自己
该如何去做。
  

24、人在高潮时,千万不可得意忘形,否则骄兵必败;人处低潮时,千万不可灰心丧志,否则郁
卒自灭。
  

25、一个人如果心态开放,保持好奇,破除成见,不断进修,求新求变,将会使视野开阔,拥有
创意人生。
  

26、快不快乐在自己,快乐从心起,自己求,要学习。
  

27、当一个人感到很知足,心不烦,身不疲,无所求,心能安的时候,快乐就在其中。
  

28、当一个人感到吃得下,玩得动,睡得好,没牵挂,很满足的时候,幸福就在其中。
  

29、快乐的源泉在于:知足、无求。尽责、无怨、宽容、感恩、舍得、放下、忘记。
  

30、生涯规划的步骤是:先觉知、有意愿、量己力、衡外情、订目标、找策略、重实践、善反
省、再调整、重出发的循环历程。
  

31、生涯规划的前提在于:主角是自己,愿意改变自己,要量力适性,参考家人意见,有求好
心,有企图心,有行动决心。
  

32、一个人就算饱学之士,如果不能了解自己,掌握自己,就称不上是个有智慧的人。
  

33、知己是生涯规划的起点,唯有充分了解自己,生涯规划才能做到量力适性,人生才能过得如
自己所想。
  

34、要了解自己,就要勤于自我生涯对话,认清我是谁?我是怎样的一个人?我有那些生涯资产
及战力?我要到那里去?我要如何达到目的? 

35、目标代表个人的愿景,是心中的罗盘,人生因有目标,才会执着去追求,才会有成功的希
望。
  

36、人生有梦,筑梦踏实,将自己的梦想,以阶段性的小目标,落实在具体的计划中,然后身体
力行,积极实践,就是生涯规划最具体的表现。
  

37、人生是连续的过程,珍视过程,就是钟爱自己;渴望、信心及行动是圆梦三部曲。
  

38、人生以40岁为分水岭,前20年,为人作嫁,工作以量为中心;后20年, 为己多活,工作要
以质为中心。
  

39、人生幸福三诀:一、不要拿自己的错误惩罚自己;二、不要拿自己的错误惩罚别人;三、不
要拿别人的错误惩罚自己。
  

40、人生虽有终点,生命却是无涯,生活可以随便,生命却要认真,怎样安排此生,是自己的责
任。
  

41、圆满人生的八大领域是:婚姻美满、家庭和乐、道德修养、终身学习、事业发展、身体健
康、理财得法、善缘广结。
  

42、全方位的生涯规划,至少包括四个领域:缤纷生活路、快乐工作路、丰富学习路、职涯成功
路。
  

43、缤纷生活路包括:美满婚姻、和乐家庭、健康生活、休闲生活、人际关系、时间管理、消费
理财等。
  

44、快乐工作路包括:善尽职责,纾解压力、精益求精、工作丰富、寻找乐趣、追求创新等。
  

45、丰富学习路包括:修身养性、自我进修、短期进修、在职进修、学艺专精、网络学习等。
  

46、职涯成功路包括:终身受雇、职位晋升、专长发展、绩效创高等。
  

47、人生的地图,画满了各式各样的关卡,每过一关都是成长,能够过关便是幸运,经历种种关
卡所累积的教训及经验,更是人生的智慧。
  

48、人生的关卡,成败在于自己,过关的是自己,卡住的也是自己,人生自古谁无关,只要过关
就是赢家。
  

49、生涯警讯要觉醒,生涯危机要诊断,生涯挫败要探因,逆转危机为转机,生涯革命要进行。
  

50、挫败是人生必修的学分,除了勇敢面对它、接受它、处理它,没有第二绦路。
  

51、中年,是一个充满压力、挑战及危机的时期,如何破茧而出,在困境中突破成长,是人生的
重要课题。
  

52、中年转折是一个危机与机会并存的时机,也是一个真真实实的转折点,只要勇敢面对,因应
有方,还是能够活得像一条龙。
  

53、破浪扬帆全靠信心、决心、毅力,福祸无门,无一事不可转圜,一切操之在己。
  

54、灰心丧志是失败之源;患得患失是痛苦之源;焦虑忧愁是疾病之源;知足、感恩、善解、包
容是快乐之源;健康、平安、心安是幸福之源。
  

55、舍得才能获得;放下才能去烦;忘记才能心宁;宽容才能得众;反求诸己,做到无念无私,
就是踏实自在。

56生涯路上满布陷阱,每个人要以如履薄冰的心情,踏实的跨出每一步,坚持向前,充满自信和
决心,只要行得正,走得稳,终会达成目标。
  

57、成功不自满,常怀企图心;改善是求进步的动力,自满是走下坡的起点;为了成功而停下脚
步的人,失败就在不远处等您。
  

58、真正的裒退,不在白发皱纹,而是停止了学习进取,因此,抱持希望,不断学习,落实行
动,是成功人生的保证。
  

59、现代人的工作守则:流汗不流血,卖力不卖命,做事不坐牢,争气不争功,凡事求合理,凡
事求心安,过程兼结果,时效即绩效。
  

60、一个人的品德操守最重要,也是唯一自保之道。表现好,别人不一定肯定;表现不好,别人
肯定不轻饶;那里差,别人就往那边挑;那里脏,别人就往那边扫;那里臭,别人就往那边清。
  

61、一个人如果忙得抽不出一点时间,常把忙碌一词成为口头禅,那就表示自己已被时间锁住,
成了时间的奴隶。
  

62、人生有输有赢,得势顺境时,千万不要得意忘形,放纵自己;失势逆境时,千万不可消极颓
唐,放弃自己;人生成功的定义,要自己去找,别迷失在别人的看法中。
  

63、人生如起伏波浪,唯有培养辨识障碍意识与能力,坚定面对挫折勇气与决心,设法及时反省
与补救,才是在茫茫人生大海中,安稳航行的不二法门。
  

64、聪明人看退休:不是人生的结束,而是另一阶段的开始;不是工作的退出,而是工作的再参
与;不是从此坐享清福,而是人生再定位;不是依靠别人,而是人生再出发;不足自然凋谢的过程,
而是有计划的.过程。
  

65、退休是放松自己,让自己更有时间,去做一些年轻时想做,而没时间去做的事情,来满足自
我,活出精彩人生。 66、在年轻的时候,如果能尽早预筹生涯发展,先期进行生涯管理,生涯路上,必然走得实在,
活得快意。
  

67、早备六老,愈老愈受用:老健、老伴、老本、老友、老趣、老傻。
  

68、老身要健,勤于运动:活就要动,动则得救;力行生活规律,饮食适当,营养均衡,定期健
检;注重休闲,保持心情愉快,便是健康保证。
  

69、老伴要好,爱要及时:年轻的夫妻,要及早培养默契,好为老年的生活,累积相爱相守的本
钱;空巢中的老人,虽然抓不住孩子的翅膀,但别忘了劳苦功高的老伴,只要巢中有温情,永远不会
空。
  

70、老本要保,善于理财:年轻的时候,要量入为出,懂得理财,为后半生早作准备;(人生感
悟 )人老了,没钱万万不能,千万要守住老本,懂得活用,善待自己。
  

71、老友要交,广结善缘:老友愈陈愈香,年轻的朋友,要及早培养人脉,以便为老年的生活,
营造谈天说笑的空间;人愈老愈需要朋友,借着老友的互动联谊,可排遣寂寞,打发时间。
  

72、老趣要多,及时培养:一个人的兴趣愈多,朋友就愈多,生活就愈有情趣,生命也就更充
实,能为兴趣而活,是人生最大乐事。
  

73、老傻要装,涵养心性:人活得愈老,愈要装傻,与配偶、子女、媳妇、好友相处,少说两
句、少批毛病、少发脾气,多让一点、多想一二、多说好话,和和乐乐,皆大欢喜。

74、装傻的最高境界在于:拿得起、放得下、看得开、不动气、知足、感恩、善解、包容。
  

75、临老宣言:多运动保健康,心和谐增愉快,不要委屈自己,不要为难子女,没钱万万不能,
多陪伴老伴,活到老学到老,有余力多奉献,可以预立遗嘱,多做还愿还债,从容准备后事,恬然接
纳死亡。
  

76、临老警语:不做老病号,不做老番颠,不做孤独者,不做守财奴,不做落伍者,不做依赖
者,不做等死者。 

77、银发族的养生秘诀:知老、认老、抗老、忘老、返老、惜老。
  

78、老当知老,规律自找,青春永保;老当认老,不要过劳,剔去烦恼;老当抗老,养身有道,
永不嫌老;老当忘老,不停用脑,永不枯槁;抗当返老,心境要好,自乐陶陶;老当惜老,及时行
乐,潇洒逍遥。
  

79、潇洒人生六得:来得、做得、玩得、舍得、放得、走得。
  

80、活到老,学到老,动到老,玩到老,乐到老,永不老。
  

81、悲观者抱怨风向,乐观者期待转向,聪明者调整风帆。
  

82、对人生的种种,要抱持「看得见、想出来、知改变、能行动」的态度,才能对自己的人生有
所交待。
  

83、自我管理的警语:既尊己又尊人,站稳脚再冲刺,识时务知进退,存善心做好事,己不欲勿
施人,有余力多助人,重修行求心安,善尽责留怀思,再卖力有批评,疼自己做自己。
  

84、有效工作的警语:流汗不流血,卖力不卖命,做事不坐牢,争气不争功,有始也有终,过程
兼结果,时效即绩效。
  

85、人际关系的警语:时存五心(诚心、宽心、同理心、肋人心、感恩心);力行五好(心地
好、态度好、表情好、言语好、行为好)。
  

86、开心生活的警语:时时开放心胸,保持乐观心情,全力冲刺目标,运动休闲兼顾,营养力求
均衡,生活加点创意。
  

87、心灵保育的警语:常运动以健心,多静省以收心,戒酒色以清心,去物欲以养心,诵古训以
警心,悟至理以明心,厉行善以爱心。
  

88、在人生的奋斗过程中,就像一场场的球赛,有输有赢;人生之路崎岖难行,但凭毅力、决
心,勇往直前,才能战胜命运,成为生涯赢家。
  

89、所谓生涯赢家,就是对自己了解很清楚,知道自己想要什么,想做什么,想过怎样人生的
人。
  

90、生涯赢家的画像:快乐风光享余年:活动自如身体健,经济独立不靠人,亲情友情乐融融,
云淡风轻随己性,生活快乐不知老,退休计划做得巧,养老压力自然小。
  

91、赢家的相对就是输家,凡是对自己不了解,任由环境塑造,糊里胡涂生活的人,都算是人生
的输家。
  

92、生涯输家的画像:病弱孤独度残生:插管躺卧在病榻,如影随形文明病,亲情友情渐疏离,
精神空虚难自处,早未准备悔已迟,退休计划做得差,养老压力自然大。

93、人生使命宣言:家庭第一,健康至上;劲在工作,知足感恩;乐善好施, 广结善缘;信然重
诺,心安理得;终身学习 回馈社会。
  

94、不怕计划失败,只怕不去计划,嬴家的头衔,是苦干得来,汗水换来的。
  

95、生涯是连续的,终生的,与成功有约,有梦的人终会摘星。
  

96、主角是自己,只有自己才能决定成败,掌握命运,突破困境,使美梦成真,没有人可以代
劳。
  

97、新好父母或老师,要为孩子或学生生涯点灯:点燃心灯、智慧之灯、希望之灯。
  

98、新好父母或老师,要做子女或学生的生涯贵人:要做心理学家、顾问、拉拉队长、向导。
  

99、让孩子或学生,找到自己,掌握自己,肯定自己,走出自己的路,比什么重要。
  

100、快乐人生的根源,在于用心经营家庭;事业成功的人,也是家中的模范生,筑一个自己喜
欢的巢,爱情及亲情就在家里。

Spring Cloud Gateway是Spring官方基于Spring5.0、SpringBoot2.0、Netty和Project Reactor等技术开发的网关,旨在为微服务框架提供一种简单而有效的统一的API路由管理方式,统一访问接口。

Spring Cloud Gateway作为Spring Cloud生态体系中的网关,目标是替代Netflix的Zuul,其不仅提供统一的路由方式,并且基于Filter链的方式提供了网关基本的功能,例如:安全、监控/埋点和限流等等。

01 SpringCloud Gateway 特点

SpringCloud Gateway是一款业务友好型的网关,适应于业务网关场景,具有以下特点:

  • 非阻塞IO采用非阻塞 IO 网络框架支撑,reactor 模式,采用更少的资源完成请求

  • SC组件无缝集成与 Spring Cloud生态组件无缝集成,符合大部分业务系统的集成需求,集成成本低

  • Reactive编程基于WebFlux响应式Web模型,事件驱动与非阻塞 IO 结合,满血使用 CPU 性能,性能吞吐量更优秀

  • 简单易开发只需掌握Route原理,会编写Filter即可上手网关开发

  • 开箱即用监控机制基于SpringBoot Actuator提供完整开箱即用的生产级监控

02 SpringCloud Gateway 构成

SpringCloud Gateway由三部分组成:Route、Predicate、Filter。

  • 路由Route:即一套路由规则,是集URI、predicate、filter等属性的一个元数据类。

  • 断言Predicate:Java8函数断言,这里可以看做是满足什么条件的时候,route规则进行生效。允许开发者去定义匹配来自于Http Request中的任何信息,如请求头和参数。

  • 过滤器Filter:filter针对请求和响应进行增强、修改处理。filter可以认为是Spring Cloud Gateway最核心的模块,熔断、安全、逻辑执行、网络调用都是filter来完成的,其中又细分为gateway filter和global filter,区别在于是具体一个route规则生效还是所有route规则都生效。

03 SpringCloud Gateway 整体架构


宏观层面

SpringCloud Gateway是一款非常好的衔接器。首先是衔接内部网络与外部应用,让所有访问内部网络的流量需经过网关的访问控制,统一提供给外部应用,避免不受控的非法访问,增强系统安全性。作为实现内外部的衔接的组件,网关首先建立内部微服务纳管的协议,无论协议是否相同,技术栈是否匹配,都可以通过技术手段纳管到网关中。

其次网关与外部微服务也建立起统一的访问协议,来对外提供访问。

在整个访问的过程中,网关核心在于将请求流量由上游发起经过网关到下游的微服务,在流量出入的过程中,网关在路由策略,协议转换、过滤、API组合等方面构建网关的核心能力。

微观层面

SpringCloud内部有Route,同样也是一个非常紧密的左手拉右手的效果,一方面Route通过Predicate来匹配来自外部应用的访问流量,另一方面通过Route来找到目标微服务。

从宏观到微观,网关起到了将外部应用的访问,按照一定的访问策略,访问目标微服务的中间件的作用。

以一次请求看SpringCloud Gateway的调用流程:

  • RoutePredicateHandlerMapping:通过lookupRoute方法,遍历所有路由列表,一个路由一个路由的正则匹配,指导找到第一个可以匹配的Route路由。

  • FilteringWebHandler:创建过滤器链,按顺序调用Filter,filter又分为PreFilter前置过滤器和PostFilter后置过滤器。

  • 整个请求过ServerWebExchange作为上下文贯穿启动,对于一次请求的信息从ServerWebExchange获取,修改则保存在ServerWebExchange中,注意基于Reactive特性,ServerWebExchange是只读的,修改Exchange需重新builder

04 SpringCloud Gateway 路由条件匹配器

SpringCloud Gateway路由条件匹配器是一个断言,根据Http Request中的请求报文来进行匹配,当满足条件则路由生效。

  • After:匹配在指定日期时间之后发生的请求。

  • Before:匹配在指定日期之前发生的请求。

  • Between:需要指定两个日期参数,设定一个时间区间,匹配此时间区间内的请求。

  • Cookie:需要指定两个参数,分别为name和regexp(正则表达式),也可以理解Key和Value,匹配具有给定名称且其值与正则表达式匹配的Cookie。

  • Header:需要两个参数header和regexp(正则表达式),也可以理解为Key和Value,匹配请求携带信息。

  • Host:匹配当前请求是否来自于设置的主机。

  • Method:可以设置一个或多个参数,匹配HTTP请求,比如GET、POST

  • Path:匹配指定路径下的请求,可以是多个用逗号分隔

  • Query:需要指定一个或者多个参数,一个必须参数和一个可选的正则表达式,匹配请求中是否包含第一个参数,如果有两个参数,则匹配请求中第一个参数的值是否符合正则表达式。

  • RemoteAddr:匹配指定IP或IP段,符合条件转发。

  • Weight:需要两个参数group和weight(int),实现了路由权重功能,按照路由权重选择同一个分组中的路由

05 SpringCloud Gateway路由过滤器

SpringCloud Gateway过滤器针对HTTP请求报文中的Header、Body、Param等元素进行操作。最新的SpringCloud Gateway版本内置了32种Filter拓展。

过滤器的应用:

  • 对于请求报文(header、path、param、body)进行设值、添加、修改、删除、缓存等操作,根据修改的环节又分为请求与响应

  • 对网关流量计数,实现熔断限流功能

  • 设置请求重定向地址

  • 设置请求状态

  • 保存Session

  • 请求重试

  • 设置请求大小

  • Token传递

SpringCloud Gateway过滤器是最常用的开发方式,支持两种自定义Filter模式:GlobalFilter、GatewayFilter,GlobalFilter是全局过滤器,面向全局生效,GatewayFilter是局部过滤器对于特定的Route生效。

06 SpringCloud Gateway 优化实践

基于SpringCloud Gateway我们有深入的使用,为了让它能够更好地适应企业级的业务场景需求,我们对它的性能和功能上做了很多优化。

路由匹配性能优化


SpringCloud Gateway默认使用逐个路由匹配的方式进行路由的查找,对于每一次请求都会逐个匹配路由的断言规则,直到匹配到第一个路由找到调用的目标服务。所以对于在路由非常多的场景,路由的断言匹配严重影响来访问效率。

针对路由断言匹配我们进行来性能优化,首先通过增加BusyRouteList,采用MRU的算法来维护一个最近常用的繁忙队列,将最常用的路由可以快速匹配出来;其次对于路由列表我们增加来按照路由路径进行分组,往往不同路径代表着不同的微服务,路由是路由中最具有区分力的元素,通过按路径分组,可以进一步大大提升查询路由的效率。

动态路由


动态路由作为网关控制分离的重要实现方式,支持集中管理路由规则,弹性扩展实例。我们将网关拆分为console的控制面,负责维护管理下发控制策略,broker数据面负责作为网关接入业务服务执行路由规则。动态路由通过拓展RouteLocator组件实现CachingRouteLocator,允许每个网关实例到“配置中间件”获取路由定义信息,配置中间件可以是Nacos、Redis、Zookeeper等。

弹性架构



弹性架构:针对网关broker数据面进行组织分化形成共享微服务网关、专有微服务网关、特性微服务网关,实现企业级业务系统的网关集中化管理,实现网关分布式化,避免单点故障,又满足不同业务系统不同路由策略、协议、业务流量情况的需求,同时以特性微服务网关来提供对nginx、kong、envoy的适配。

服务发现

服务发现:服务发现模块拓展SpringCloud Gateway现有的LoadBalancerClientFilter实现,通过便携轻量级的NacosClient、EurekaClient、K8sClient、OpenshiftClient统一多种注册中心的服务发现模式,并支持灵活配置,通过GatewayDiscoveryClient抽象统一返回ServiceList。



多协议转换

多协议转换:协议转换需要将Gateway进入的Http协议进行转换,适配支持dubbo、webservice、grpc协议,将协议转换拆分为三个组件来实现,如对于dubbo协议由Http2Dubbo转换器,DubboInvoker调用器,DubboWriteResponse响应适配器组成。



网关鉴权

网关鉴权:网关在微服务架构中是鉴权的最佳实现方式,具有非侵入易维护的特点。将鉴权可分为Token校验、权限验证、数据权限验证、操作记录几步骤,轻松实现业务系统的安全增强。


标准接口定义

  • 接口调试:网关数据面Broker代理内部微服务,承接来自外部流量的请求;对于接口调试场景,Console服务将用户请求翻译成标准Http格式协议,Broker实时感知请求并调试目标服务,返回调试结果。

  • 流量录制:对于网关经过的请求,在网关通过请求转换接口定义来获得接口定义录制下来,随后可以随时发起流量回放,用来排查问题,或者自动化测试。

  • 流量复制:对于网关经过的请求,在网关如果开启流量复制策略,则首先将流量转换为接口定义,在下发转发到对应的微服务。



07 谐云HC-Gateway API网关

谐云HC-Gateway是基于Java开发的API网关平台,提供高性能、高可用、易扩展的统一API网关解决方案。具有以下特点:

  • API网关全生命周期管理
    支持对接口生命周期过程中的开发、调试、发布、授权、接口文档、日志分析、下线的管理,保证各个阶段的稳定进行。

  • 易扩展性
    提供了丰富的系统组件完成鉴权、限流、监控等能力,能够满足大部分的业务需求;支持自定义插件满足个性化需求、便于调整或替换已有集成功能,不必频繁对网关层代码进行改动,确保网关层的稳定性。

  • 高可管理性
    匹配企业的各种管理特性,包括多租户、多权限、多环境的管理。

  • 丰富的可观测性
    提供网关、应用、路由、服务级别的监控能力,支持链路追踪,将监控数据输出到控制台,提供图像化的展示,帮助用户监控与定位问题。

  • 全面的安全防护
    提供API认证、访问控制、流量控制、IP黑白名单等多种安全机制,避免潜在的安全风险。

  • API门户 支持将接口上架到API门户,提供给第三方开发者采购与使用。

谐云HC-Gateway整体架构图

在控制面,HC-Gateway可提供完善的网关管控,完成服务、接口、应用的相关管理以及配置下发工作;在数据面,可多实例扩展,支持多种类型的微服务接入,包括Nacos、Eureka、Kubernetes微服务、自定义服务;负责网关具体策略的执行,如路由策略、灰度策略、流控策略、安全策略等。

发布于 2022-08-19 16:54


本次由微博研发中心技术经理及高级技术专家陈飞分享了微博利用阿里云实现分钟级服务器规模成倍扩容的技术体系,包括 Docker 与虚机结合的使用经验、网络架构以及负载均衡、缓存架构的跨 IDC 服务部署的一些经验。本次视频直播的整理文章、视频、幻灯片整理完毕,如下内容。

直播视频:http://click.aliyun.com/m/6360/

幻灯片下载地址: http://click.aliyun.com/m/6360/

DCP 设计 “初心”

图一 DCP 设计初心

 

DCP 是微博容器化的混合云弹性调度运维平台,其诞生初衷是以最低成本实现弹性能力。DCP 系统对外提供的功能包括集群管理、服务池之间的调度。目前使用 DCP 系统的业务方涵盖微博的核心业务,主要包括微博平台、红包飞、手机微博等。

DCP 最初的设计目标主要有三点:

  1. 要具有弹性能力,当时预估在春晚峰值时,需要 10 分钟 16000 核,25600GB 的计算资源弹性能力;

  2. 能够节约成本,设计之时希望 2016 年春晚的总体成本不超过 2015 年,且通过阿里云等公有云按需付费模式,未来可大幅降低单位成本;

  3. 能提供一个标准的技术平台,拉通不同语言、运行环境差异,向微博各个业务系统提供标准的弹性能力。

DCP 混合云架构设计

图二 DCP 混合云架构设计原则

 

当具体去设计这样一个系统架构时,由于涉及到不同的业务方、不同的部门,各个环节协调还是比较复杂的。因此在架构设计时必须遵循几个具体的原则。

  1. 在使用公有云时,不仅要单单使用公有云,要将公有云和专有云结合使用,最大程度利用公有云按需付费的特点,降低单位成本,例如在 2016 年春晚,微博与阿里云合作,在流量峰值到来的前几个小时才部署了相应的公有云资源。同时业务需要在公有云与专有云之间无差异化部署;

  2. 服务化,系统各组件之间通过 Restful API 而不是原来的运维干预方式进行通信。这里要求各组件应具有良好的扩展性,实现机制可插拔;

  3. 可伸缩,各系统组件可以根据管理集群的规模,实现自身的自动伸缩。各组件应无状态、无单点。运维操作自动化。

图三 DCP 架构分层

 

DCP 架构具体分为四层。第一层是不可变基础设施,Docker 的出现很大程度上改变了原有的运维方式,下文将具体介绍在容器化、系统初始化、镜像分发、带宽监控方面的实践经验。第二层主要完成弹性调度,包括业务跨云调度、调度机制的建立、容量评估。在已有基础设施资源前提下,动态合理的分配给各个业务节点。第三层主要完成服务发现,在业务弹性部署后,调用方需要快速发现服务集群分布的节点,通过配置中心、负载均衡、RPC 协同快速实现发现机制。第四层主要完成容器编排,包括自动扩容和监控报警。

图四 DCP 整体架构

 

上面这张图是 DCP 整体架构。架构的最下层是私有云和阿里云的计算资源。各个系统之间通过 API 相互通信,利用阿里云的 Open API 动态创建所需的计算节点。再上一层是基础设施管理系统,负责虚机的创建、镜像的分发等服务抽象和实现,对外提供和专有云相同的计算环境。再上一层通过 Swarm、Mesos 实现了业务容器动态调度框架。最上面一层是业务系统。最左边是一套服务发现框架,该框架是基于 Consul 集群建立配置中心,实现服务发现机制。

接下来,对各个层的实现进行详细剖析。

 

不可变基础设施

 

微博在 15 年春晚就开始尝试 Docker 技术,当时目的是让业务与宿主机的运行环境解耦。Docker 解决了业务对运行软件的版本、组件需求,将这些依赖关系封装到 Docker Image 中,统一了私有云、公有云之间及不同业务线之间的交互标准。

图五 容器化

DCP 对业务层提供了十分标准的基础运行环境。底层选用 ECS 的 CentOS7.1.1503 的镜像,在此之上是 Docker 的 Devicemapper-direct-lvm 文件承接系统,版本选择是 Docker 1.6.2 版本。中间层是调度框架的实现,使用的是 Mesos 0.25 和 Swarm 1.0.0 版本,以及一些容器级别的监控,如贡献给开源社区的 cAdvisor 0.7.1.fix。PHP 和 Java 对应不同的后端应用,微博的核心 Feed、用户关系等基础服务都是用 Java 实现,偏业务性的系统是用 PHP 来实现。对应于 Java 和 PHP 的 Docker 体系是一致的,只是其中使用的版本不同,在 Docker 1.3.2 版本中需要兼容一些离线计算平台。目前 Java 和 PHP 底层运行环境已经实现归一化。

图六 初始化

 

有了容器化的无差异运行环境之后,在阿里云上分钟级完成上千个计算节点的弹性扩容还需要进行性能优化。首先各 Stage 尽可能并行化,目前可实现 4 分钟内初始化上百台能力。同时通过 Ansible 的 Callback 机制,把耗时操作异步化。此外,使用 Ansible 自动伸缩功能,根据初始化需求规模自动伸缩,可支持分钟内千万级别初始化能力。


图七 镜像分发

 

在 Docker 环境和 ECS 计算资源准备充分之后,之后的工作就是将业务镜像进行快速部署。由于单个镜像的大小在 GB 级别,如果采用动态拉取的方式,需要几百台 ECS 专门做这个任务,大大增加了扩容成本。

微博将整个镜像进行分层,不变基础镜像放到云服务镜像环境里面,通过本地 Load 方式实现镜像的加载,大大减少了镜像分发的带宽需求,同时速度也有一定的提升;另外的一种操作就是反向缓存,突然之间在公有云上大规模弹性扩容时会面临冷启动的问题,即公有云上不存在相应的业务镜像,拉去业务变更的镜像会占用大量专线带宽。为了应对这种情况,在公有云上常态化部署对专有云 Registry 反向缓存,对专有云 Registry 内部变更和推送、配置都会同步到公有云的反向缓存节点上。此外也实现分发网络可自动伸缩。未来应对超过千万级别规模,微博正在尝试采用 P2P 进行分发。

 


图八 混合云网络架构

 

在混合云中,最核心的就是整个网络架构。打通公有云和私有云时,网络环境、IP 规划等问题都应该慎重考虑。目前微博采用阿里云的 VPC 服务,构建公有云与专有云一致的网络环境。另外,采用多专线确保网络高可用。路由方面,通过在核心交换上配置路由转发规则,采用就近原则,最大程度减少路由跳数,保证网络低延迟,当网络故障时,自动启动备份路由。

同时基于原有的带宽监控,实现跨云专线监控,细化到 IP 级别,根据每台 ECS 的 IP 自动汇聚到对应的产品线,监控其整体带宽消耗情况,确保各个业务产品线实际单宽占用不会影响。

更多内容及 QA 环节,请前往 >> http://click.aliyun.com/m/6360/

 

关于分享者

 

陈飞,微博研发中心技术经理及高级技术专家。目前在微博负责 Feed 用户关系和容器化相关工作,致力于 Docker 技术在生产环境中的规模化应用。

 

微博在 2016 年的春晚动态创建了 1000 多个 ECS 实例,分流了微博 60% 核心流量,整体平均一次扩容的时间小于 10 分钟,以超过 1 亿 / 天的数量新增。


家境不好的孩子不要去学这五个专业,



第一个就是临床医学类专业,医学专业虽然越老越值钱,但是你耗不起这类专业,学业周期非常长,想进三甲医院至少研究生学历,一般情况孩子在30岁以前几乎是挣不到大钱的,家境不好的孩子不建议学。



第二个电子竞技专业,很多男孩子游戏玩的很好,大学也有开设这种电子竞技专业的,但是这个专业都是有钱人玩,咱们普通家庭的家境不好的,电脑设备配置这一块是一笔很大的一笔投入,普通家庭很难承受。



第三个心理学,很多女孩子喜欢学,就业确实很难,需要生活阅历,对口就业率在所有的专业里面排名倒数第一,非常难就业。



第四市场营销专业。一个本科研究生毕业的学生,销售不一定能超过一个小学毕业的。



第五个艺术类专业,这也是一个非常烧钱的专业,学费贵,书本贵,家境不好的根本学不起。而且即使你考上大学。这类专业攀比现象比其他专业要严重得多,很容易让普通家庭的孩子产生极大的心理落差,从而做出一些错误的选择。



你认为还有哪些专业不适合普通家庭的孩子学,可以在评论区分享给大家!


远程桌面多用户同时连接

有时,我们可能需要多个用户同时远程一台电脑,但不同的Windows操作系统,其远程会话的限制有所不同。例如,Windows 8.1仅允许一个并发远程桌面连接、Windows Server系统默认允许每个用户有2个远程桌面会话。那么对于Windows系统,如何实现远程桌面多用户同时连接呢?

如何实现多个用户同时远程一台电脑?

接下来,我们将介绍如何实现Windows 10多用户同时远程桌面。要实现多个用户同时远程一台电脑,只需将“将远程桌面服务用户限制到单独的远程桌面服务会话”禁用即可。

步骤1. 先使用远程桌面控制电脑,然后按“Win + R”打开运行框,输入“gpedit.msc”并单击“确定”

步骤2. 转到:计算机配置 > 管理模板 > Windows 组件 > 远程桌面服务 > 远程桌面会话主机 > 连接,并双击打开“将远程桌面服务用户限制到单独的远程桌面服务会话”

组策略

步骤3. 将其设置为“已禁用”

禁用

步骤4. 再打开“限制连接的数量”并设置为“已启用”,您可以随意的设置连接的数量,但不能超过“999999”

限制数量

快速实现多用户同时连接

除了上面这种方式之外,您还可以使用第三方远程桌面工具AnyViewer,它能更容易的实现多个用户同时远程一台电脑,而且您还可以使用它同时远程控制多台电脑。AnyViewer远程桌面软件还有许多优点,例如:

兼容性强:远程桌面可以支持远程连接到更高的Windows 版本(专业版和企业版),但有些版本却不支持,像Win10家庭版是不支持远程桌面的,但AnyViewer支持多个Windows 系统,包括Windows家庭版。

不限制网络:使用远程桌面时,两台设备在不同的网络是不能使用的,除非您设置了端口转发,而AnyViewer可以直接使用,不受网络限制。

多个会话:AnyViewer支持同时进行两个会话,您可以升级账号到专业版或企业版,可同时进行更多的远程会话。

内置聊天:远程桌面不支持文本聊天,而AnyViewer提供了一个实时聊天窗口。

免费下载Win 11/10/8.1

安全下载

步骤1. 在两台计算机上下载、安装和启动AnyViewer,在电脑上转到“登录”,然后单击“注册”。(如果您已经官网注册了,您可以直接登录。)

注册

步骤2. 填写注册信息并登录。

填写注册信息

步骤3. 然后您可以看到您成功登录到AnyViewer,并且您的设备自动分配给您登录的帐号。

登录

步骤4. 在多台设备上登录同一个AnyViewer号,然后,在“设备”中您可以看到所有已登录到同一个账号的所有设备的列表,选择同一个电脑名称,再点击“远程控制”即可实现多个用户同时远程一台电脑。

远程控制

远程控制成功后,在AnyViewer远程桌面窗口的上方,还提供了许多快捷操作。例如:更改远程桌面画质、远程传输文件、远程关闭电脑等。

操作

总结

远程桌面如何实现多个用户同时远程一台电脑?您可以在本地组策略编辑器中禁用“将远程桌面服务用户限制到单独的远程桌面服务会话”再设置会话数量即可。如果您感兴趣的话,还可以使用AnyViewer远程桌面实现多个用户同时远程一台电脑。