问题描述
到底是机遇还是糟遇?我的叔叔是一位架构师非常有远见,我从他那里取了些经,与各位分享!他说从整体上来看未来开发者将是对社会更具贡献的人,但与时代脱节也必将被时代淘汰!建议就是有自己擅长的语言,并且能够长久的锻炼自己写代码的精炼程度。那如何跟的上时代呢?叔叔说,按国外的经验来看,确实将来coding哥会因为云平台发展而遭遇就业危机。目前国内云发展主要方向是容器技术与微架构!那怎样加强coding哥竞争力呢?由于容器技术是可以将环境和应用进行打包,可重复、跨平台使用,就主要了解一下微服务吧!说起微服务,需要先说分布式(也是开发者最感兴趣的技术之一),分布式最大的特性就是网络是不可靠的,当其中一组服务挂掉,系统整体不会被影响,代码放在微架构下也更加的可控。2016年,将会有更多的企业将目光聚焦在如何实践并有效将落地微服务的问题上,近期就建议你的那位开发者朋友,在新产品老产品微服务化代码构建上,多下点功夫吧!话题有奖截止日期:6月5日交流话题:1,您是开发者吗?您认为微服务的兴起,对开发者而言是机遇OR糟遇?2,其实热门技术,不只微服务,还有容器、DevOps、分布式、大数据、软件治理、SOA等如果以上新技术中,只能选其一为之努力并付出时间学习,您的选择是什么?为什么?3,谈谈您对微服务的看法与了解4,为了提高个人核心竞争力,或是改变未来的能力,你最想参与何种形式的充电!(如朋友圈轻松式,论坛式,博客式,线下交流,微房间等等)奖项设置:参与奖:26c币积极参与奖20名:特百惠夏日水杯(积极参与所有话题)微服务精华观点奖10名:午睡神器
解决方案
本帖最后由 qiudeluo77 于 2016-05-05 11:28:29 编辑
解决方案二:
马上就工作5年了,一直从事java相关的企业应用开发。最近公司要求上微服务架构,于是去研究了一番。下面说说我对微服务的理解吧。微服务是一种将应用分解成小的自治服务的软件架构。服务通常仅关注某个特定的目标并保证服务之间的自治。每个服务被独立的开发、测试和部署,每个服务往往使用约定的API并通过网络进行通信,虽然在某些情况下网络可能是本地的。微服务从SOA发展而来,SOA在本世纪初曾获得广泛的认可和流行,SOA是一种反对大型的整体化架构应用的方式。SOA和微服务的主要区别有:SOA是有状态的,而微服务是无状态的SOA倾向于使用企业级的服务总线进行通信,而微服务则使用更简单的通信系统SOA或许会有上百万行代码,而微服务往往仅有少于100行代码SOA强调重用(例如运行时代码、数据库等),而微服务则关注在尽量解耦SOA里的一个系统性变化需要修改软件的整体结构,而在微服务中的一个系统性变化将产生一个新的服务SOA更经常使用传统的关系型数据库,而微服务则更倾向于现代的、非关系型数据库。下面几节将介绍在微服务架构中使用非关系型数据库的好处。许多架构师发现SOA存在通信协议的问题和缺乏有效的如何分割服务的指导,这些问题构成了微服务的基础,使得微服务成为了实现一个真正的SOA的最佳实践方法。再推荐一个阿里的微服务框架dubbo,项目地址: