让你在组建企业级项目时手到擒来——浅谈各类常用工具和框架概述

本文涉及的产品
服务治理 MSE Sentinel/OpenSergo,Agent数量 不受限
简介: 让你在组建企业级项目时手到擒来——浅谈各类常用工具和框架概述



各位亲爱的同行们,你们好!我作为一位资深的代码农民工,今天有幸在此与大家分享一下公司里那些让我们在处理大项目时能够事半功倍的常用工具和框架。就像去菜市场买菜,你得选对要买的东西,才能做出美味佳肴。下面就让我带您看看这些“宝藏级别”的工具吧!

首先咱来看下CoreSpring。这可是我们业务开发中使用频率最高的一款框架。CoreSpring主要围绕着两个大招,一个是IoC(Inversion of Control),另一个就是AOP(Aspect-Oriented Programming)。他们俩工作起来就是这么专业,如此煞费苦心地调节那些讨厌鬼Java对象间复杂的纷繁联系,还能精细掌握程序的脉络走向。基于此,可以这么说,无论是梳理配置还是调控程序流,CoreSpring都可以轻松应对。通常来说,我们会用CoreSpring来玩儿点花样,比如搭建系统基础模块,实施控制反转和依赖注入,把整个系统的稳定性和可拓展性提升到新的高度。再比如,我们还可以将应用程序拆成模型、视图和控制器三个层次,然后各自通过依赖注入和控制反转,或是直接通过模板引擎渲染页面,又或者是去服务层那儿找点儿乐子。这个过程看上去可能稍微有些复杂,但是当你理解了之后,你会发现这其实相当简单明了。

接下来隆重介绍一下Spring Boot的独特之处。相比于CoreSpring,它更像是对前者的一次升华。目标明确说来就是给咱们开发和发布Spring框架应用程序省去了许多的繁文缛节。Spring Boot凭借自动配置和大佬定夺(不用过多的代码)两种方式,轻而易举地就能让咱们迅速架起Spring应用的IJJ之舞。实践中,我们可以借助Spring Boot建立快速的微服务体系。说白了就是能让我们快速构建出可以单独牵出来溜达的微服务,且能用Spring Cloud的注册大厅把各个微服务捏合在一起,最后再请“容器大妈”帮忙,把它们安放到Kubernetes的家里。整个过程就是这么愉悦,就是这么流畅。

另外还有Spring MVC的出场时间。这也是Spring框架家族中的一员,主要是为创建Web应用提供大显身手的舞台。如果你想建设一个牛掰的Web应用,那Spring MVC绝对是你的首选利器。具体来说,我们可以利用它搭建Web应用。就比如我们可以根据Spring MVC的结构构建一个电商网站,用户先从网上找到相关商品的信息,然后由控制器推送至服务层,商品的详细信息便会被传递到模板中,最后通过视图展现在用户眼前。整个过程看起来仿佛就像是在完成艺术品制作般精雕细琢。

别忘了我们还有一个叫Spring Cloud的擅长微粒度应用开发的朋友。上面说了,它能帮助我们建造微服务架构,比如我们可以用Spring Cloud建构一个在线游戏。又或者是我们可以用SpringCloud建造一个开放式社交网络,这样用户就能在上面交友、聊天,共享音乐、视频等资源。您可能会问,怎么搞呢? 答案很简单,只需要按照规定把游戏逻辑切割成若干个微服务,利用服务发现和负载均衡来保证各个微服务间的交流畅通无阻,战斗成果斐然。

提到数据库操作,我们不得不提的就是Mybatis。他是个擅长持久化的小伙子,通过XML或注释配置方式,能够将Java对象完美地映射到关系型数据库之中。想象一下,当你手握Mybatis的时候,您可以把关系型数据库玩弄于股掌之间,一切从前端发起的商品信息查询、增加、改进乃至删除诸如此类即便是乾坤移位,也不会有所动摇,真的是感觉棒极了。

再来了解一下阿里巴巴推出的RPC框架Dubbo。Dubbo被公认为是一把极具潜力的神兵利器,主要负责建造分布式应用。它具备超强的远程呼叫协议和服务注册中心,保障了微服务之间有机且顺畅的沟通交流。再者,对于大型物流系统而言,利用Dubbo将订单服务与物流服务分解为两个微服务,分别部署到不同机器之上,通过Dubbo实现两者之间的契约互动,协作效果堪比天人合一。这项技能只能用“技惊四座”四个字来形容。

最后,介绍下那个善于统筹规划的大名鼎鼎的ZooKeeper。来自开元之初的Zookeeper可谓是一位集众多才华于一身的人才明星。尤其在处理分布式应用的配置信息、状态更新和服务发现等方面堪称一绝。这种高效的协调机制,再配以实时的灾备和冗余机制,确保了整个系统立于不败之地。对着那些分布式出身的线上游戏和其他分布式应用来说,Zookeeper无疑是他们最佳伴侣。他们完全可以利用Zookeeper作为注册中心,从而应付各种突如其来的压力。当用户需求旺盛时,有效提升娱乐体验,降低延迟;针对网络繁忙的时期时,又能迅速缩小规模,避免资源浪费,平衡整个生态链。总的来说,引入Zookeeper带来的效益绝对是功在千秋,利在万代的壮举。

以上就是我在工作中所用到的部分常见工具及框架,希望能给各位同行带来一些启示和帮助。当然,这只是冰山一角,更多的神奇工具等待我们去探索与发掘。行进的道路虽然曲折,但总会有阳光洒满前方。愿每个人都能像那些熠熠生辉的工具一样,在平凡中照


相关实践学习
基于MSE实现微服务的全链路灰度
通过本场景的实验操作,您将了解并实现在线业务的微服务全链路灰度能力。
相关文章
|
8月前
|
存储 缓存 Java
HarmonyOS学习路之开发篇—数据管理(分布式文件服务)
分布式文件服务能够为用户设备中的应用程序提供多设备之间的文件共享能力,支持相同帐号下同一应用文件的跨设备访问,应用程序可以不感知文件所在的存储设备,能够在多个设备之间无缝获取文件。
|
8月前
|
监控 安全 前端开发
低代码PaaS平台源码:采用对象式和勾选式实现企业应用程序开发,内置10大功能引擎
管理后台低代码PaaS平台是一款基于 Salesforce Platform 的开源替代方案,旨在为企业提供高效、灵活、易于使用的低代码开发平台。低代码PaaS平台的10大核心引擎功能:1.建模引擎 2.移动引擎 3.流程引擎 4.页面引擎 5.报表引擎 6.安全引擎 7.API引擎 8.应用集成引擎 9.代码引擎 10.公式引擎。 采用与直接模块拖拽编程不一致的是,低代码PAAS采用的对象方式实现字段、API的字段类型,引入RPA实现表自动化建模;再使用选择方式对地段功能进行选择定义甚至可以插入代码进行自定义。采用前后端同一技术,可实现功能应用边使用边修改的功能。
低代码PaaS平台源码:采用对象式和勾选式实现企业应用程序开发,内置10大功能引擎
|
持续交付 UED
《小团队web技术搭建》(三)环境和工具的准备-第三部分
《小团队web技术搭建》(三)环境和工具的准备-第三部分
106 0
|
Java 应用服务中间件 持续交付
《小团队web技术搭建》(二)环境和工具的准备-第二部分
《小团队web技术搭建》(二)环境和工具的准备-第二部分
96 0
|
存储 域名解析 测试技术
《小团队web技术搭建》(一)环境和工具的准备-第一部分
《小团队web技术搭建》(一)环境和工具的准备-第一部分
119 0
|
前端开发 应用服务中间件 Linux
《小团队web技术搭建》(五)项目的简单部署方式
《小团队web技术搭建》(五)项目的简单部署方式
208 0
|
JSON 资源调度 前端开发
从0到1教你搭建前端团队的组件系统(高级进阶必备)
随着vue/react这类以数据驱动为主的web框架的不断完善和壮大,越来越多的前端团队开始着手搭建内部的组件库。虽然目前市面上已经有很多功能强大且完善的组件库供我们使用,比如基于react的开源组件库ant-design,material,又比如基于vue的开源组件库elementUI,iView等。
729 0
|
运维 Kubernetes 数据可视化
社区首款 OAM 可视化平台发布!关注点分离、用户友好、上手难度低
什么是 OAM?2019 年 10 月 17 日,阿里巴巴合伙人、阿里云智能基础产品事业部总经理蒋江伟(花名:小邪)在 QCon 上海 2019 重磅宣布,阿里云与微软联合推出开放应用模型 Open Application Model (OAM)开源项目。
社区首款 OAM 可视化平台发布!关注点分离、用户友好、上手难度低
|
Web App开发 安全 Java
Web自动化测试平台设计与落地-概览
引言 自动化金字塔-灵魂手绘版 关于Web自动化测试,投入产出比是一个绕不开的话题,对于走到2017年的测试人,这时候可能已经有很多人会想到著名的自动化测试金字塔。它形象地展示了Mike Cohn对自动化分层中各层所应该投入比重的看法,可以作为我们Web自动化实施策略的重要参考。
3573 0
|
Web App开发
【教程】ThingJS 3D开发快速入门 第一讲 开发概述·优势·项目流程
【教程】ThingJS 3D开发快速入门 第一讲 开发概述·优势·项目流程  优酷:http://v.youku.com/v_show/id_XMzkwOTQ1MDYwMA==.html 腾讯视频:https://v.
1641 0